A SWEET theme for Firefox. (Also compatible with FireDragon)
This theme follows lastest SWEET Adwaita style.
This is a bunch of CSS code to make Firefox look closer to GNOME's native apps.
The master
branch of this repo supports the current Firefox stable release 100
.
Theme versions complatible with older Firefox releases are preserved as git tags. Use the v78.1
tag for Firefox 78 ESR support.
We also have the beta
branch for fixes only aplicable to the current Firefox beta version.
Check out the firedragon
branch of this repo for installing the theme for FireDragon. For FireFox, continue reading this README
.
-
Clone this repo and enter folder:
git clone https://github.com/KevinNadar/sweet-firefox-theme && cd sweet-firefox-theme
-
Checkout a git branch or tag if needed, otherwise use
master
and ignore this step.git checkout beta # Set beta branch git checkout v78.1 # Set v78.1 tag
-
Run installation script
This script will lookup Firefox profiles location and enable a theme variant for your GTK theme if it exists.
./scripts/auto-install.sh
./scripts/install.sh # Standard ./scripts/install.sh -f ~/.var/app/org.mozilla.firefox/.mozilla/firefox # Flatpak
-
-f <firefox_folder_path>
optional- Set custom Firefox folder path, for example
~/.mozilla/icecat/
. - Default:
~/.mozilla/firefox/
- Set custom Firefox folder path, for example
-
-p <profile_name>
optional- Set custom profile name, for example
e0j6yb0p.default-nightly
. - Default: All the profiles found in the firefox folder
- Set custom profile name, for example
-
You can also install this theme with one command:
curl -s -o- https://raw.githubusercontent.com/KevinNadar/sweet-firefox-theme/master/scripts/install-by-curl.sh | bash
It will download the latest version of the theme and run the auto installation script for you.
-
Go to
about:support
in Firefox. -
Application Basics > Profile Directory > Open Directory.
-
Open directory in a terminal.
-
Create a
chrome
directory if it doesn't exist:mkdir -p chrome cd chrome
-
Clone this repo to a subdirectory:
git clone https://github.com/KevinNadar/sweet-firefox-theme.git
-
Create single-line user CSS files if non-existent or empty (at least one line is needed for
sed
):[[ -s userChrome.css ]] || echo >> userChrome.css
-
Import this theme at the beginning of the CSS files (all
@import
s must come before any existing@namespace
declarations):sed -i '1s/^/@import "sweet-firefox-theme\/userChrome.css";\n/' userChrome.css
-
Symlink preferences file:
cd .. # Go back to the profile directory ln -fs chrome/sweet-firefox-theme/configuration/user.js user.js
-
Restart Firefox.
-
Open Firefox customization panel and move the new tab button to headerbar.
-
Be happy with your new gnomish Firefox.
We provide a user.js configuration file in configuration/user.js
that enable some preferences required by this theme to work.
You should already have this file installed if you followed one of the installation methods, but in any case be sure this preferences are enabled under about:config
:
-
toolkit.legacyUserProfileCustomizations.stylesheets
This preference is required to load the custom CSS in Firefox, otherwise the theme wouldn't work.
-
svg.context-properties.content.enabled
This preference is required to recolor the icons, otherwise you will get black icons everywhere.
For other non essential preferences checkout
configuration/user.js
.
Also though is not obligatory, some weird issues might happen if you don't use the Firefox's default/system theme because the theme is never tested against the Firefox's light or dark theme.
You can follow the installation script steps again to update the theme.
- Go to your profile folder. (Go to
about:support
in Firefox > Application Basics > Profile Directory > Open Directory) - Remove
chrome
folder.
See upstream bug.
- Go to the
about:config
page - Search for the
layers.acceleration.force-enabled
preference and set it to true. - Now restart Firefox, and it should look good!
- Go to the
about:config
page - Type
mozilla.widget.use-argb-visuals
- Set it as a
boolean
and click on the add button - Now restart Firefox, and it should look good!
Icons might appear black where they should be white on some systems. I have no idea why, but you can adjust them directly in the system-icons.css
file, look for --gnome-icons-hack-filter
& --gnome-window-icons-hack-filter
vars and play with css filters.
If you wanna mess around the styles and change something, you might find these things useful.
To use the Inspector to debug the UI, open the developer tools (F12) on any page, go to options, check both of those:
- Enable browser chrome and add-on debugging toolboxes
- Enable remote debugging
Now you can close those tools and press Ctrl+Alt+Shift+I to Inspect the browser UI.
Also you can inspect any GTK3 application, for example type this into a terminal and it will run Epiphany with the GTK Inspector, so you can check the CSS styles of its elements too.
GTK_DEBUG=interactive epiphany
Feel free to use any parts of my code to develop your own themes, I don't force any specific license on your code.
This project is a fork of firefox-gnome-theme by Rafael Mardojai CM. Based on Luna Kurame's original work. This project contains the sweet /theme
directory from this repo.