Firefox WebExtension that lets you share the current tab to frontpage.fyi with minimal effort.

Fix Github Action

+15 -2
+13 -1
.github/workflows/package-extension.yml
··· 56 56 echo "AMO credentials not provided. Skipping signing step." 57 57 exit 0 58 58 fi 59 + set +e 59 60 web-ext sign \ 60 61 --channel=unlisted \ 61 62 --source-dir ./extension \ 62 - --artifacts-dir ./web-ext-artifacts 63 + --artifacts-dir ./web-ext-artifacts 2>&1 | tee ./sign.log 64 + rc=${PIPESTATUS[0]} 65 + set -e 66 + if [ $rc -ne 0 ]; then 67 + if grep -q "Version ${VERSION} already exists" ./sign.log; then 68 + echo "AMO already has version ${VERSION}; skipping signing." 69 + exit 0 70 + fi 71 + echo "Signing failed:" 72 + cat ./sign.log 73 + exit $rc 74 + fi 63 75 64 76 - name: Rename signed archive (optional) 65 77 if: ${{ hashFiles('web-ext-artifacts/*.xpi') != '' }}
+2 -1
README.md
··· 88 88 89 89 1. Configure `AMO_JWT_ISSUER` and `AMO_JWT_SECRET` repository secrets with your AMO API credentials if you want automatic signing. 90 90 Without the secrets, the workflow still produces an unsigned ZIP you can download. 91 - 2. Trigger the workflow manually (`Actions` → **package-extension** → **Run workflow**) or push changes to `main`. 91 + 2. Trigger the workflow manually (`Actions` → **package-extension** → **Run workflow**). 92 92 3. Download the artifacts: 93 93 - `frontpage-extension-unsigned` contains the ZIP that `web-ext build` generates. 94 94 - `frontpage-extension-signed` (only when secrets are present) contains the signed `.xpi` from AMO for self-hosting. 95 95 4. Each run also publishes a GitHub Release (tagged `v<version>-<run-id>`) that ships the same ZIP/XPI assets, so you can share a permanent download link. 96 + - Mozilla requires every signed upload to have a unique version number. Bump `version` in `extension/manifest.json` before rerunning the workflow if you need a new signed package. 96 97 97 98 These artifacts can be hosted directly for self-distribution as described in the [Mozilla documentation](https://extensionworkshop.com/documentation/publish/self-distribution/). 98 99