DIYgod / DIYgod/RSSHub-Radar

Consider self-distributing the Firefox add-on

Open
#691 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
7.3k
Forks
418
Avg merge
4d 13h
Merged PRs (30d)
1

Description

Context: https://github.com/DIYgod/RSSHub-Radar/pull/635#issuecomment-1100721069

#### TL;DR
> You really should read the context.

Add-ons distributed on AMO (https://addons.mozilla.org) are unable to use `eval()`, making remote rules updating and local rules modifications impossible. However, a self-distributed add-on faces much looser reviews so that's possible to enable both features. Here is a [toturial](https://extensionworkshop.com/documentation/publish/self-distribution/) on how to self-distributing Firefox add-ons.

You really should not read this

In fact, no reviews, but automatic checks and approval.

![](https://user-images.githubusercontent.com/15956627/163693953-3b38710f-1aab-49e3-ae03-29c1e9853a15.png)

Shhh...

#### An effective example
[rsshub_radar-1.7.1-fx.zip](https://github.com/DIYgod/RSSHub-Radar/files/8500722/rsshub_radar-1.7.1-fx.zip) (already signed by AMO so it can be installed easily, change the ext name to `xpi` if needed)
Modifications on local rules are no longer ignored, making it possible to update rules by yourself, or debug your own rules before summiting a new RSSHub route, cheers!
As for remote rules, it is still disabled. But you must be a **magical** girl who loved a [**cyber chef**](https://gchq.github.io/CyberChef/), right?
```
P4xF1rYWBS+cSclbXFWDY4+ady5FUSK8PuHFYOM=bv7+p8J1poRKB9vcpW+cUWK1PzwySFwadNSlUx+1PugmpzPKavL+s+KAPr+mxrSJ5o5eovMApSPKYOvcB+n7XyxW
```

##### Disclaimer
- My self-distributed add-on comes with absolutely no warranty.
- So do remote rules. Technically speaking, enabling remote rules is allowing remote code execution (RCE), so **you are the only one responsible for your action**.
- The add-on contains some code from a drafting PR. I was just too lazy to remove it.
- The add-on contains some useless changes. I was just too lazy to remove them.
- You can audit the source code yourself: https://github.com/Rongronggg9/RSSHub-Radar/tree/ff

#### Related issues / PRs
Shouldn't #667 be enough? Probably not. Radar rules are now required for any new RSSHub routes. No reason to force a Firefox user to install Chromium or modify the code of RSSHub-Radar (then build and install on Firefox) before they can debug their radar rules, isn't it? What's more, a sideloaded add-on will be uninstalled automatically at quit (only Nightly, Beta, or ESR may escape if configured - but only [<20%](https://en.wikipedia.org/wiki/Firefox_version_history) Firefox users use these three channels), so that's also an unacceptable solution for ordinary Firefox users.

Here's a contributor who had to waste a lot of time before realizing RSSHub-Radar is almost completely broken on Firefox (https://github.com/DIYgod/RSSHub/pull/9537).

Other related issues: #687 #660 #408 #460 #675

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading the context in PR #635 and the related issues #667, #687, #660, #408, #460, and #675. Compare the linked signed add-on archive with the source on the `ff` branch, then determine the Firefox self-distribution and update requirements; done should include an agreed distribution approach and validation for local and remote rules.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.