FireDragon

pipeline status Latest Release

Welcome to the FireDragon documentation / landing page! 🐉 In here, we collect common information about the browser, as well as known workarounds and troubleshooting stepos.

What is this?

FireDragon is a browser based on the excellent Floorp browser (also called the Vivaldi of Firefox's). It was customized to have dr460nized-fitting aestetics as well as many opiniated settings by default. As this browser was originally a Librewolf fork, we are trying to integrate its best patches and tweaks in the new base. The most important features in addition of Floorps own ones can be found below.

  • Searx & Whoogle search engines added, with the possibility to run locally if fitting deps are installed
  • The default search engine is Garuda's SearxNG instance
  • Dark Reader
  • Sweet theme added
  • Custom, dr460nized branding 🐉
  • Keeps privacy-enhancing settings in sync with Librewolfs changes
  • Firefox accounts are enabled and profile data is synced to a custom self-hosted sync server (ffsync.garudalinux.org)
  • Presets for both profile-sync-daemon (which Garuda Linux ships by default) & Firejail are available
  • Faster webpages loading from:
  • Hidden Navigation buttons instead of being greyed out when they are inactive
  • PBMode Security
  • Latest Fingerprinting as an option in firedragon.cfg (you can copy to your own firedragon.overrides.cfg and enable there)
FireDragon Screenshot

Where to get it?

There are multiple ways to obtain FireDragon on Linux. Windows builds are not being provided, however.

  • Archlinux builds can be obtained in a few ways:
    • Install it via the firedragon AUR package
    • Install it via the firedragon-bin AUR package if you do not wish to compile the package yourself
    • Or use the Chaotic-AUR repository to install and update it with Pacman (maintained by the FireDragon maintainer dr460nf1r3)
  • NixOS builds available at Chaotic-Nyx
    • Either install the flake and put firedragon as any other Nixpkgs package
    • Or run it directly via nix run github:chaotic-cx/nyx/nyxpkgs-unstable#firedragon
  • Flatpak builds can be fetched from FlatHub
  • AppImage builds are available via our GitLab releases
  • Binary tarballs can also be obtained via GitLab releases

How to understand and use Firedragon Settings

Firedragon is, apart from a few exceptions, a huge set of Firefox config keys.

All configurations that set Firedragon apart from Floorp are found in one file: /usr/lib/firedragon/firedragon.cfg.

The file is seperated in Categories and Sections, in which settings are classified. This is not a perfect 1-1 match but most of the time it makes sense to identify.

To understand what each setting means, you have to copy the setting key and search for it in a Search Engine. This sometimes leads to instant description, sometimes it's much harder, especially when it's a setting Mozilla did not document.

When you want to change those settings, or add new ones, the best way to do so, at a USER (not root/system!) level, is to use the file firedragon.overrides.cfg. You can create that file in your user's PROFILE of Firedragon, located in ~/.config/firedragon/. And then you follow the same way of setting keys as in firedragon.cfg. The overrides file will override only those you specificy in it, it will NOT replace the entire firedragon.cfg.

Garuda encourages users to play with those settings, so everyone can customize Firedragon to their liking. If Firefox allows something to be customized, Firedragon should as well.

Have fun!

Troubleshooting steps

If you have some issues with Firedragon, follow these steps, remember each result and if the problem persists please post all your results along with the issue.

  • Close the browser before trying anything else
  • Create a new profile by opening the terminal and typing
firedragon -P
  • Proceed by creating the new profile and launching from it to test your issue
  • If the issue persists, rename /usr/lib/firedragon/firedragon.cfg and ~/.firedragon/[YOUR_PROFILE]/firedragon.overrides.cfg to something else and relaunch Firedragon (Note: You obviously have to replace "[YOUR_PROFILE]" by the exact name of your profile in the above command)
    • The UI will look quite different (if not, you got a profile corruption) then test your issue
    • If the issue is gone, here are some tips on how to find the setting in firedragon.cfg that causes it:
      • Instead of changing every setting one by one, delete an entire category or section. Then relaunch. If nothing changes, bring back the settings and perform the same action on the next category/section. Once it does change something, then you know for sure it’s one or multiple settings part of that Category/Settings. This method will save you huge amount of time.
  • Change your User Agent to something different (go in Section USER AGENT from firedragon.cfg) and validate it did change going on whatismybrowser.com before you test your issue

If after all these steps you still get the same issue, then it is very most likely not Firedragon related and you should open a help Request on the Garuda Forum or the Floorp github.

If you stop getting the issue at one of those steps, please provide details on the Garuda Forum, so we might be able to fix for everyone.

Firedragon is in essence “not a browser”. In reality, it is a few patches to the source code combined with some config files (the most important being /usr/lib/firedragon/firedragon.cfg). The very most of what makes Firedragon "Firedragon" is found in this file. This is why testing without the file at all is a good indication of next steps.

Workarounds and Known Issues

Issues on twitch.tv

See this issue for reference: click me

Add-ons and Settings menus broken

See https://forum.garudalinux.org/t/firedragon-broken-after-117-update/38762 Possible fix is to set to false the config widget.wayland.fractional-scale.enabled in about:config

Firefox Translate feature not working

Firefox offers a Translate page feature that by default does not work with Firedragon.

This situation was brought up by this post on the Garuda Forum.

It is due to the following setting in /usr/lib/firedragon/firedragon.cfg: defaultPref("services.settings.server", "https://%.invalid")

After revision, according to this it seems to be the server where data is transmitted to Mozilla, not only for the Translate feature. Since Firedragon aims at privacy, we disabled it.

You can enable it by setting a proper server (up to you to find one) and adding the config in your user firedragon.overrides.cfg.

TABs loaded in Background

This is not an issue, but by design. By default Firedragon loads tabs in the background. Some people may not like this, therefore you can change the setting browser.tabs.loadDivertedInBackground to FALSE.

Changelogs

Overview

Starting with version 11.17.4, when something is worth mentioning, Changelogs will be found here.

11.17.4 (August 20, 2024)

  • Major upgrade to Firefox ESR 128 as a base, through Floorp 11.17.
  • Some settings in firedragon.cfg where polished out to ensure better browsing compatibility without sacrifying security/privacy too much. These changes also include old deprecated settings and potentially a few new ones.
  • New Tab button is now emulating a Tab, through the config userChrome.tab.newtab_button_like_tab.
  • Firedragon specific configs are now identified in firedragon.cfg. When scrolling through the settings, those applied by the Firedragon team are identified with --> FIREDRAGON CONFIG in its line. This is a work in progress so it is not extensive and probably will never identify 100% of them, but from v11.17.4 they will be.
  • Added the extension Flagfox. This is currently the only Active privacy feature Firedragon has, meaning the user can see and act according to a situation Firedragon (Flagfox) is presenting. Flagfox allows to display a flag in the URLBAR when you hover the mouse in the bar, letting the user know where the website's server is geolocated. Based on that value, the user can decide whether or not to continue browsing on that website. Flagfox offers more features in its Settings.
  • Following the deprecation of Floorp's User Agent Settings section, a new User Agent is provided in Firedragon, spoofing Chrome 129 on Windows 10. This should allow excellent website compatibility.

11.17.6 (August 22, 2024)

  • In 11.17.4 we changed the User Agent for one Floorp was using. At the same time they deprecated their section where you could select which browser/OS you want to spoof. Turns out using one of those was causing various compatiblity issues for many people. It seems more and more websites try to identify what your browser really is and if you spoof something different than Firefox (in Firedragon's case), some may find this suspicious and block various features of their website. In 11.17.4 we were spoofing Chrome. We now changed this back to Firefox 126.

Reference

Building FireDragon

Building FireDragon yourself for already known targets is quite easy using our build system.

Obtaining it

First, clone the repository:

git clone https://gitlab.com/garuda-linux/firedragon/builder.git
cd builder

Then, proceed by running one of the following commands. You will need a few commands available for this to succeed, such as:

  • curl
  • git
  • make
  • rsync
  • tar
  • zstd

Currently implemented targets

Source archive

make source

This downloads the Floorp source (if required), applies all patches, copies additional source files and installs FireDragon settings. Output source archive: build/firedragon-vX.X.X-X.source.tar.zst.

Linux x86_64 archive

make linux-x86_64

This creates the source files for FireDragon (if required) and builds it for linux x86_64 architecture. Output linux x86_64 archive: build/firedragon-vX.X.X-X.linux-x86_64.tar.bz2.

AppImage x86_64

make appimage-x86_64

This uses the Linux x86_64 archive (building it if required) to create the FireDragon AppImage for x86_64 architecture. Output AppImage x86_64: build/firedragon-vX.X.X-X.appimage-x86_64.AppImage.

Further targets

If you wish to make FireDragon available for another distribution or target, absolutely feel free to. We are happy for every help 😄

Team

Who are we?

This is the team of awesome people who are creating FireDragon for you:

How to contact us?

If you want to contact us due to any reason, be it suggestions or bug reports, please the issues section of the settings repository on GitLab.

You may also create a thread in the Garuda forum, we have a dedicated section for FireDragon issues. Team members are present here as well.

Credits

Creating this browser woudln't have been possible without those people and projects:

  • Mozilla (creators of the original Firefox browser)
  • Arch Linux (spent a lot of time creating PKGBUILDs this browser came from early on)
  • The Floorp project, used as base for this browser
  • The Librewolf project, where a lot of the privacy enhancing tweaks originate from
  • torvic9 & his retired Plasmafox, has also been an inspiration early on
  • vnepogodin, who helped debugging issues and provided a lot of useful information
  • ptr1337, who also contributed a lot of helpful fixes and information and now works on Cachy Browser with vnepogodin
  • SGS & zoeronen, who both contributed beautiful artwork to FireDragon