I know how to set and display most themes, however I can find anything about how to turn the Global Dark Theme on and off through Terminal, I can only find the option in the gnome-tweak-tool. So is there not a way to turn it on and off through Terminal? I am running Ubuntu GNOME 15.10 with GNOME 3.18.
2 Answers
To set the global dark theme from the command line, first navigate to a Terminal of your choice and then from within the shell emulator ...
Navigate to your home directory:
cd ~
Create a new file called settings.ini inside of the GTK 4 directory:
nano ~/.config/gtk-4.0/settings.ini
Enter the following fields into the configuration file:
[Settings]
gtk-application-prefer-dark-theme=1
Write the changes to disk by pressing control + x, then press y, then enter.
-
1
-
2Confirmed that even on Ubuntu 18.04,
~/.config/gtk-3.0/settings.inihas no effect on "dark mode" (rebooted after change as well to restart display manager).– tresfJun 3, 2019 at 16:40 -
2@tresf's comments are useful to others (hi!) since they at least mention an alternative solution to get a dark theme on Ubuntu. In contrast, this answer isn't useful to anybody anymore, assuming nobody runs the deprecated Ubuntu 15. Please update your answer to mention that this doesn't work for Ubuntu 16.04 and above (it's a conditional subjective) Apr 30, 2020 at 9:57
-
1@RobinMétral in case the GTK version was the source of confusion, it is now changed.– oemb1905Apr 30, 2020 at 20:59
-
1it works, kind of. There is "more" dark now. But I still have the very outer frame in white.– The FoolMar 28 at 6:30
For modern Gnome desktops:
Default dark mode:
gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark'
# Fedora 36 and above, and Ubuntu 23.04
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
Default light mode:
gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita'
# Fedora 36 and above, and Ubuntu 23.04
gsettings set org.gnome.desktop.interface color-scheme 'default'
Getting a list of available base theme names:
ls -d /usr/share/themes/* |xargs -L 1 basename
Caveats:
Some existing limitations to changing the theme: https://bugzilla.gnome.org/show_bug.cgi?id=783666 (bug conversation mentions them)
It appears that there's some variance in how this is adopted with
Adwaitabeing the currently accepted default, but the tweak tool will also attempt to write to thesettings.inifiles.Furthemore, applications provided as snaps may ship with their own
settings.inifiles making a command line solution much more difficult than a one-liner.
Ideally, a technique to invoke gnome-tweak-tool through CLI would cover most scenarios holistically. Gnome-tweak-tool is written in python3, so this should be theoretically possible to someone familiar with Python.
Fedora 36 introduced a new preference, color-scheme that is required to change theme for some apps (files, settings, software, …) and gtk-theme doesn’t work anymore for these apps.
To test at Ubuntu 23.04, launch gnome-tweaks -v (-v=Print the names of settings modified), the Style setting is not at gnome-tweaks is at Settings application, switch there and gnome-tweaks will intercept and print about org.gnome.desktop.interface color-scheme.
-
1This worked GREAT with Firefox. I used
/usr/bin/gsettings set org.gnome.desktop.interface gtk-theme 'Adwaita-dark'to automatically set dark mode near sunset. askubuntu.com/questions/742870/…– Ray FossAug 7, 2021 at 19:07 -
1This doesn't seem to work for me using i3. I can change the theme using gsettings, but it doesn't take effect unless I restart the application in question. Any idea what I can do to fix this? Any dark/light mode managers I'm running don't work/are pointless because of this, for me.– VictorMar 8, 2022 at 15:49
-
1@Victor perhaps this? reddit.com/r/i3wm/comments/kiy0v0/comment/gngcb5r/…. Just a guess though. I would strongly recommend you start a new question so that users running i3 can work together to find out a solution.– tresfMar 9, 2022 at 2:42
-
1Follow up: I noticed this message went away when I switched from flatpak to package version of
dconf-editor, even though the flatpak had access to all system libraries andgsettings-desktop-schemasis installed. But anyway, package version seems to "like" 'prefer-dark' just fine, flatpak might be working despite error message but not sure (nothing changed other than changing out flatpak for package). May 24, 2022 at 7:19 -
1
