Switch Full Light/Dark Themes (include System Menus) in Fedora 36/37 & Manjaro

GNOME desktop introduced light and dark appearance switching since v40. However, it only applies the color for all the app windows, leaving system menu, notifications, etc, always dark!

Ubuntu 22.04 or Ubuntu 22.10 customize the settings to make switching between light and dark works in everywhere for the desktop. But, Fedora, Arch, and Manjaro Linux with GNOME do NOT!

If you want to set different color scheme (typically light, or maybe called white) for system menus, notifications, as well as top panel and bottom bar, then here is the step by step how to tips for you!

Step 1: Add ability to change Shell Themes

Desktop panels and system menu are handled by GNOME Shell theme, which however not configurable out-of-the-box. By installing “User Themes” extension will allow to apply different themes to these core GNOME components.

First, click the button below to go to the extension page, install browser extension if prompted via the link in that page, finally use ON/OFF switch to install ‘User Themes’ extension.

Manjaro seems to have the extension installed out-of-the-box, so just skip this step.

Step 2: Switch Light/Dark shell theme

For the app window color scheme, just use the Appearance settings option in Gnome Control Center. Or, use the new top-right corner “quick settings” menu in GNOME 43.

For Gnome shell theme, do:

  • Search for and install “Gnome Extensions” app from Gnome Software (or pamac depends on your OS).
  • Next, click on the top-left ‘Activities’ to open overview screen. Search for and launch the Gnome Extensions app.
  • Finally, click on “Settings” for User Themes extension, and choose between:
    • Default – for default dark shell theme.
    • Gnome Classic – for light panel, menu, notifications.

In addition for legacy GTK3 applications that do not follow your system color scheme, here’s another extension to do the job.

That’s all. Enjoy!

Merilyn Ne
Hi, I'm Merilyn Ne, a computer geek working on Ubuntu Linux for many years and would like to write useful tips for beginners. Forgive me for language mistakes. I'm not a native speaker of English.