Introducing Mozilla’s Firefox Nightly .deb Package for Debian-based Linux Distributions

Great news for people using Firefox Nightly on Debian-based Linux distributions (such as Debian, Ubuntu, Linux Mint, and others): installing, updating, and testing the latest Firefox Nightly builds just got a lot easier. We’ve set up a new APT repository for you to install Firefox Nightly as a .deb package. These packages are compatible with the same Debian and Ubuntu versions as our traditional binaries. If you’ve previously used our traditional binaries (distributed as .tar.bz2 archives), switching to Mozilla’s APT repository allows Firefox to be installed and updated like any other application. Your feedback is invaluable to us, so don’t hesitate to report any issues you encounter to help us improve the overall experience.

Adopting Mozilla’s Firefox Nightly .deb package offers multiple benefits:

  • you will get better performance thanks to our advanced compiler-based optimizations,
  • you will receive the latest updates as fast as possible because the .deb is integrated into Firefox’s release process,
  • you will get hardened binaries with all security flags enabled during compilation,
  • you will not have to create your own .desktop file,
  • you will be able to continue browsing after upgrading the package.

To set up the APT repository and install the Firefox Nightly .deb package, simply follow these steps:

# Create a directory to store APT repository keys if it doesn't exist:
sudo install -d -m 0755 /etc/apt/keyrings

# Import the Mozilla APT repository signing key:
wget -q -O- | sudo tee /etc/apt/keyrings/ > /dev/null

# The fingerprint should be 35BAA0B33E9EB396F59CA838C0BA5CE6DC6315A3
gpg -n -q --import --import-options import-show /etc/apt/keyrings/ | awk '/pub/{getline; gsub(/^ +| +$/,""); print "\n"$0"\n"}'

# Next, add the Mozilla APT repository to your sources list:
echo "deb [signed-by=/etc/apt/keyrings/] mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null

# Update your package list and install the Firefox Nightly .deb package:
sudo apt-get update && sudo apt-get install firefox-nightly

And that’s it! You have now installed the latest Firefox Nightly build .deb package on your Debian-based Linux distribution.

For those of you who would like to use Firefox Nightly in a different language than American English, we have also created .deb packages containing the Firefox language packs. To install a specific language pack, replace fr in the example below with the desired language code:

sudo apt-get install firefox-nightly-l10n-fr

To list all the available language packs, you can use this command after adding the Mozilla APT repository and running sudo apt-get update:

apt-cache search firefox-nightly-l10n

We hope this new installation method makes it easier for people on Debian-based Linux distributions to test and provide feedback on the latest Firefox developments. Your participation in the Nightly community plays a critical role in helping us deliver the best possible browser experience.

Following a period of testing, these packages will become available on the beta, esr, and release branches of Firefox.

Thank you for your support, and we look forward to hearing your feedback.

Edit (November 8, 2023): Following community discussions, we have updated the post to highlight that Firefox can continue browsing after an APT upgrade, allowing people to restart at their convenience.

Edit (October 31, 2023): Based on feedback from our readers, we’ve updated the installation steps to align with the latest best practices. Instead of storing the de-armored key in /etc/apt/trusted.gpg.d, the steps now keep the armored signing key in the /etc/apt/keyrings directory.

37 comments on “Introducing Mozilla’s Firefox Nightly .deb Package for Debian-based Linux Distributions”

Post a comment

  1. Anonymous wrote on

    It’s better to use Flatpak!


    1. Roman Padilla wrote on



  2. ItsJustPatric wrote on

    It would be nice if we had also flatpak package on flathub


  3. Robert Dinge wrote on

    Take down the repository instructions ASAP, they are actively harmful to people’s computers.

    The correct way to do it is to use /etc/apt/keyrings/ and not /etc/apt/trusted.gpg.d/

    Also gpg keys are not supposed to be dearmored anymore. Place a regular armored key (with file extension like .key or .asc but not .gpg) into /etc/apt/keyrings/


    1. Dimitry Andric wrote on

      Indeed, is also *not* a binary gpg keyring, but an armored variant. It should really have the extension .asc.

      In any case, downloading this file, renaming it to /etc/apt/keyrings/, and changing the command line to:

      echo “deb [signed-by=/etc/apt/keyrings/] mozilla main” | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null

      works fine.


    2. Gabriel Bustamante wrote on

      Thank you, we’ve updated the post.


    3. Simon de Cyrène wrote on

      The Debian wiki recommends storing dearmored keys in /usr/share/keyrings/. What do you think about?


  4. bones_was_here wrote on

    Wow, APT repo instructions that _don’t_ involve `curl | sudo bash`! nice!
    It’s a pain to pick through the overcomplicated scripts that are so common these days just to find the URLs.

    It would be great if there was a repo like this for the stable release builds, any plans?


    1. Gabriel Bustamante wrote on

      It’s in the works! We’d like to hear back from the Nightly community first. If no major issues are found after a period of testing on Nightly and Beta, packages will become available for release builds.


  5. Wellington Torrejais da Silva wrote on

    Nice! I’ve tested, working fine. Thanks!


  6. Andreas Schamanek wrote on

    This is much appreciated! I am looking forward to the ESR packages!


  7. HellvolutioN wrote on

    apt-get/apt error: cannot resolve ‘’


    1. Johan Lorenzo wrote on

      Thanks for the report! I don’t manage to reproduce the issue locally. Does it still happen on your side?


    2. HellvolutioN wrote on

      Solved; mozilla’s repository doesnt accept forced IPv6 on the apt/apt-get configuration file…


  8. corradoventu wrote on

    I have firefox-nightly installed from PPA. what’s the difference? Thanks


    1. Johan Lorenzo wrote on

      I know there are several PPAs out there. Which one do you use?


  9. Hamza Francis wrote on

    Firstly, thank you very much for the initiative, I just installed Ubuntu and had to use a PPA to access Mozilla FF in .deb format. I’m happy to know that the team will make them available directly, however, I have a question, perhaps even a curiosity: why not co-maintain these packages with the debian team directly in debian? There are software developers who maintain their own packages in the Debian repositories.
    Thank you for your attention.


    1. Sylvestre wrote on

      The Debian maintainer is a Mozilla employee too and has been consulted many times on this project 😉
      Debian has constraints (example: portability, some modifications, building with PGO/LTO), that Mozilla don’t have. Also, we think that this change will be for a different population of users.
      Example, Debian stable ships with Firefox ESR. Some users will be able to use with Mozilla’s packages.


  10. JP wrote on

    Why not make deb packages available for the normal stable version, especially for Ubuntu? Why hide all this instead of showing those options on the download page?
    It is really really annoying to be limited to snap packages on Ubuntu by default, as snap is still extremely limited and fiddly on non-standard configurations (e.g. home directory linked or in a non-standard place).


    1. Johan Lorenzo wrote on

      I’m glad you called this out, JP! We plan to eventually ship the stable version. We will go gradually with Nightly first, then Beta + Developer Edition, then Stable (where instructions will be published to the regular download page). At each step, we would like to hear back from users to hear what they think of the package. Once we’re confident with the quality of the package, then we will move on to the next step.


  11. benou wrote on

    Very cool, I’m using it right now on Sid. One thing I noted is that it does not appear to update alternatives for x-www-browser, I had to manually do
    sudo update-alternatives –install /usr/bin/x-www-browser x-www-browser /usr/bin/firefox-nightly 100
    to have it used by default.


    1. Gabriel Bustamante wrote on

      Thanks for the feedback! I opened a bug report.


  12. Michel Decima wrote on

    Currently `firefox-nightly` binary packages are referenced in `binary-amd64/Packages` index ( and `firefox-nightly-l10n-*` localization packages are referenced in `binary-all/Packages` index (

    It’s ok to install both categories of packages with APT on a system, but it doesn’t allow you to mirror entirely the repository with the standard reprepro tool, because the localization packages cannot be accessed.

    To enable mirroring by reprepro, these localization packages (Architecture: all) must also be referenced in `binary-amd64/Packages`.


  13. chan00 wrote on

    I guess Firefox developer or beta will not get this? would be quicker than doing a tarball on my setups. Flatpak and snaps are not something i like to use also snapstore just got malware again and the fact the package size is crazy high and slower launch speed. We see this every time on other stores malware all over.


    1. Gabriel Bustamante wrote on

      Beta and Developer Edition are coming soon 🙂


  14. zorzi wrote on

    Great news. Thanks.


  15. Scott Beamer wrote on

    You should have done a flatpak version instead. You already have one for the stable version.

    But since you’ve got DEBs now, any plans for RPMs?

    Inquiring Fedora users want to know.


  16. hendu wrote on

    Thanks for the apt repository! I’m looking forward to firefox stable being included.

    Any chance of adding arm64 builds?


  17. treequin wrote on

    Does anybody know how to actually use the language packs? I tried installing the spanish packs with no success (maybe they’re somehow in conflict with my flatpak version of stable Firefox), but the french pack from the example at least shows up in about:addons, I just have no idea where to go from here. If anybody has managed to change Nightly’s language let me know how you did it.


  18. Bill McGonigle wrote on

    This is great – thanks!
    Here’s a puppet definition for folks deploying this way:

    apt::source { ‘firefox-nightly’ :
    location => ‘’,
    release => ‘mozilla’,
    repos => ‘main’,
    architecture => ‘amd64′,
    key => {
    id => ’35BAA0B33E9EB396F59CA838C0BA5CE6DC6315A3’,
    server => ‘’,
    include => {
    ‘src’ => false,
    ‘deb’ => true,
    notify => Class[‘apt::update’],
    package { ‘firefox-nightly’ :
    ensure => installed,
    require => [ Apt::Source[‘firefox-nightly’], Class[‘apt::update’], ],


  19. Samuel wrote on

    Is there a time schedule when esr and release branches of Firefox available?


  20. Ubuntu user wrote on

    Today firefox 122 was released as a stable version. Is the stable version now also listed in the apt repository or only on the ftp server?


  21. Ubuntu user wrote on

    According to the Mozilla Knowledge Base there is a now an apt repostitory.


  22. Steve wrote on

    Nice, but what about us arm64 users? Is there a Firefox .deb for us?


  23. ZeroDay wrote on

    requesting for the same on Arch Linux and FreeBSD based OS pls?


  24. Allan Wind wrote on

    Please populate the (apt) changelog, for example, with the “about | What’s new”. This allows users to gauge how urgent the upgrade is prior to installing it. Here is the current “mozilla main” changelog which is unhelpful:

    $ apt-get changelog firefox
    firefox (124.0.1~build1) UNRELEASED; urgency=medium

    * N/A

    — Mozilla Releng Thu, 21 Mar 2024 23:02:21 -0000


  25. Steve B. wrote on

    I use Alma, Rocky and RHEL at work and home. An RPM option would be nice.


Leave a Reply

Your email address will not be published. Required fields are marked *