-
Install flatpak (>=0.11.1), xdg-desktop-portal and its backends. Latest versions are preferred.
-
Add the Flathub repository if absent
-
Install this package
flatpak install [--user] https://gitlab.com/projects261/firefox-nightly-flatpak/-/raw/main/firefox-nightly.flatpakref
This sets up a new flatpak remote called firefoxnightly-origin
.
Updates will be fetched if available
flatpak update
flatpak remove [--delete-data] org.mozilla.FirefoxNightly
# Clear dependencies
flatpak uninstall --unused
To enable:
- Go to
about:config
and create the prefbrowser.gnome-search-provider.enabled
as boolean. Set the value totrue
- Go to GNOME Control Center > Search and drag Firefox Nightly to the top of the list
- Restart Firefox and try searching in the shell overview
Check if it is already a known issue first https://bugzilla.mozilla.org/show_bug.cgi?id=flatpak
Check if it is reproducible in the official tarball (preferably in a new profile or safe mode). If it is, open a bug with Mozilla, optionally use mozregression to bisect it.
Common troubleshooting help https://fedoraproject.org/wiki/How_to_debug_Firefox_problems
Otherwise feel free to open an issue here.
Mozilla for mainlining the stable flatpak recipes.
Original Nightly flatpak project https://gitlab.com/proletarius101/firefox-nightly-flatpak and CI templates https://gitlab.com/accessable-net/gitlab-ci-templates
-
Fork https://gitlab.com/projects261/firefox-nightly-flatpak and https://gitlab.com/projects261/gitlab-ci-templates
-
Clone the repostories and update the URLs in
.gitlab-ci.yml
to point to the forks. Update other files if needed. -
Create a new GPG key locally, to sign the repository.
-
Go to https://gitlab.com/-/profile/personal_access_tokens and create a token for
$CI_GIT_TOKEN
. -
Go to
https://gitlab.com/<user>/<project>/-/settings/ci_cd
, expandGeneral
and disable public pipeline. Hit save. Expand variables. Add the following variables necessary for the pipeline to run:Type Key Value Protected Masked Variable GPG_KEY_GREP Keygrip of GPG key Yes Optional Variable GPG_KEY_ID Keyid of GPG key Yes Optional File GPG_PASSPHRASE Passphrase of GPG Key Yes Optional File GPG_PRIVATE_KEY ASCII armoured private key Yes Optional Variable CI_GIT_TOKEN Token Yes Optional -
Make a push or trigger the pipeline. If successful, a page will be deployed at
https://name.gitlab.io/firefox-nightly-flatpak
-
Edit the flatpakref file:
Url
should be URL of the above Gitlab page andGPGKey
is base64 encoded version of the gpg key:
gpg --export <keyid> > example.gpg
base64 example.gpg | tr -d '\n'
-
Set up a schedule
-
Install the flatpakref file as in step #4. Done!
Gitlab.com free tier gives 400 minutes per month of pipeline quota for entire the user/project namespace. A single build usually takes about ~15 minutes to complete and deploy and there is one nightly build published each day. If updates are not available for a while then usually it means the pipeline quota expired for the month and it'll reset in the next month.
Please set up your own repository if possible, following the instructions or build and install the flatpak locally following the instructions.
This package tries to stay close to Mozilla's official packaging and no modifications/preferences are applied beyond what is necessary for having a working flatpak.
The profile location is ~/.var/app/org.mozilla.FirefoxNightly/.mozilla/firefox
The flatpak is built from the official Nightly tarball published by Mozilla. The search provider, desktop file, run script, manifest, preferences, polices and appstream metadata are taken from Mozilla.
There are no plans for aarch64 builds. Mozilla does not publish tarballs for aarch64 and building from source is not possible.
My fork uses a script updater.sh
to update the Firefox versions and checksums and my CI template pushes the changes directly to the main
branch to save on CI minutes and as the variables above are exposed to the main
branch only.
You can also use flatpak-external-data-checker
like upstream. For that uncomment these lines and use the CI templates from upstream.
The langpacks are updated manually due to frequent checksum mismatches in the Gitlab shared runners, possibly due to a CDN or a cache issue. To automate them uncomment this.
- Clone this repository
git clone https://gitlab.com/projects261/firefox-nightly-flatpak.git
cd firefox-nightly-flatpak
-
Install flatpak, flatpak-builder and set up the Flathub repository
-
Install the dependencies
flatpak install flathub org.freedesktop.Sdk//23.08
flatpak install flathub org.freedesktop.Platform//23.08
flatpak install flathub org.mozilla.firefox.BaseApp//23.08
- Run this command to build
flatpak-builder build --force-clean org.mozilla.FirefoxNightly.yaml
- To install
flatpak-builder build --force-clean --user --install org.mozilla.FirefoxNightly.yaml
-
To update, change this URL to point to the latest release and update the sha256 below. Then redo step #3 and #4
-
(Optional) To build a bundle follow https://docs.flatpak.org/en/latest/single-file-bundles.html
GPG key fingerprint used to sign repo: D53F C6E7 5E0A 45F5 386A 6588 F8A5 F798 CA25 7770