docs: add self-hosted Firefox install route (about:config) while AMO is under maintenance
build-extension / build (push) Failing after 16s

This commit is contained in:
2026-08-19 03:04:34 +08:00
parent 40fa9cc9b5
commit c1567aca00
+37
View File
@@ -54,6 +54,43 @@ One codebase builds for **both browsers** (see [Build](#build)).
> For a persistent install, package and publish via Firefox AMO / Chrome Web Store
> with the same built zips.
## Distribute to real users
### Firefox (self-hosted, temporary)
> **Note:** Firefox blocks unsigned extensions for normal installs. The proper
> fix is to sign the add-on via **addons.mozilla.org (AMO)** and publish it there
> (or self-host a signed `.xpi`). AMO is currently **under maintenance**, so until
> it returns, the only way to install the unsigned build is to lower Firefox's
> signing check on each user's machine. This is a per-user browser setting and is
> **not** suitable for a broad audience — use it for personal / small-group use.
1. Build the Firefox variant (or download `ismis-helper-firefox.zip` from a release):
```bash
node scripts/build.js firefox
```
2. In Firefox, open `about:config` and accept the warning.
3. Search for `xpinstall.signatures.required` and set it to **`false`**.
4. **Restart Firefox** for the change to take effect.
5. Install the add-on from the release zip: drag `ismis-helper-firefox.zip` into
Firefox (or File → Open File… and select it).
> When AMO is back online, prefer the signed route: publish the same zip to AMO
> (or sign it with `web-ext sign`) so users install it normally without touching
> `about:config`.
### Chrome (self-hosted)
Chrome does **not** require signing for normal installs. Users can install the
built `ismis-helper-chrome.zip` directly:
1. Download `ismis-helper-chrome.zip` from a release and unzip it.
2. Open `chrome://extensions`, enable **Developer mode**, and click **Load unpacked**.
3. Select the unzipped folder.
> For a store experience, publish the same zip to the Chrome Web Store (one-time
> $5 developer registration).
## Build
Requires **Node.js** (the `build.js` script itself is dependency-free; `npm install`