Quick reference: what usually fixes the mismatch
If a Flatpak app on Ubuntu 24.04 opens with Adwaita or a light interface while the desktop is set to dark, first check whether the app uses GTK 3 or GTK 4/libadwaita. Then update Flatpak, make the matching GTK 3 theme extension available, and confirm the desktop portal is installed. Flatpak apps run in a sandbox, so they do not automatically read every theme file installed on the Ubuntu host.
| What you see | Likely cause | First action |
| GTK 3 app uses Adwaita instead of Yaru | The active theme extension is missing or not visible to the app runtime | Update Flatpak and install the matching theme extension |
| Flatpak ignores Ubuntu's dark style | Portal, color-scheme setting, or app support issue | Check Appearance, portal packages, and relaunch the app |
| Only one app looks different | The app may use GTK 4/libadwaita, Qt, Electron, or custom styling | Identify the toolkit before changing system settings |
These steps apply to Flatpak applications on Ubuntu 24.04, especially those installed from Flathub. They do not force every application to use Ubuntu's complete desktop styling. GTK 3 theme extensions, light/dark preference, icons, and app-specific styles are separate pieces.
How Flatpak theme matching works
A Flatpak application uses its own runtime rather than the host's system libraries and theme directories. Flatpak cannot simply expose Ubuntu's /usr/share/themes as the application's theme source: the sandbox has its own runtime filesystem, and themes can depend on a particular GTK version. Flatpak therefore distributes supported GTK 3 themes as runtime extensions.
Flatpak can read the host's active GTK theme name and install a matching extension when one is available in the app's remote. The theme still has to be exposed to the app. On X11, GTK 3 can receive the selected theme through XSettings. On Wayland, GTK reads relevant appearance settings through a desktop Settings portal. If the theme extension or a suitable integration path is missing, an app can fall back to Adwaita.
Ubuntu 24.04's Settings panel offers light and dark desktop styles. That preference is not the same thing as making every application use the Yaru GTK 3 theme. GTK 4 applications built with libadwaita generally follow supported system appearance preferences, but they do not necessarily accept arbitrary legacy GTK theme overrides. A flatpak theme extension named for GTK 3 will not restyle every GTK 4 or libadwaita app.
For the technical overview, see Flatpak's desktop integration and theming documentation and its GTK portal support documentation.
1. Confirm the desktop style and theme name
Open Settings > Appearance and select the intended Light or Dark style. The choice applies immediately to the desktop. If you use GNOME Tweaks or another tool to select a custom GTK theme, note its exact theme name; package names and theme names can differ in capitalization or suffixes.
You can read the active GTK theme name and color-scheme preference in Terminal:
gsettings get org.gnome.desktop.interface gtk-theme
gsettings get org.gnome.desktop.interface color-scheme
The first command reports the theme name stored in GNOME settings; the second reports the preferred light/dark scheme when supported. These commands only inspect values. Avoid setting a theme name copied from a tutorial unless that theme is installed and you intend to use it. Restart the affected app after changing appearance settings, since many programs read their theme at launch.
2. Update Flatpak and install the matching theme extension
Refresh installed applications and runtimes first. Flatpak's documented theme integration can automatically install a matching extension during an install or update when the theme is available from the configured remote.
flatpak update
If the app still uses the fallback theme, list the GTK theme extensions exposed by Flathub:
flatpak remote-ls --columns=application flathub | grep '^org.gtk.Gtk3theme'
Choose an extension whose name matches the GTK 3 theme you selected. Flathub currently lists Yaru theme variants, including org.gtk.Gtk3theme.Yaru-light. For example, install that variant only when it matches the theme you want:
flatpak install flathub org.gtk.Gtk3theme.Yaru-light
Flathub's Yaru-light theme listing identifies it as a GTK theme package. The matching theme name depends on the host setting and on what the remote currently publishes. If you use a different Yaru variant or a third-party theme, use flatpak search or the remote listing to find its exact extension ID; do not assume the package suffix from its visual name.
If the theme is installed but the app was already running, close all of its windows and reopen it. For a stubborn case, update once more after confirming the extension and application are from the same Flatpak installation:
flatpak list --app
flatpak list --runtime | grep -i theme
flatpak update
Flatpak distinguishes per-user and system installations. If you installed the app with --user but installed the extension system-wide, or vice versa, the app may not see the extension where expected. Keep the app and extension in the same installation scope where possible. You can inspect a specific app's installation with flatpak info APP_ID.
3. Check the desktop portal on Ubuntu 24.04
GTK's Flatpak portal documentation states that xdg-desktop-portal-gtk is required for GTK themes and fonts. Ubuntu publishes this backend for the Noble (24.04 LTS) release. If the package is absent, install it from Ubuntu's repositories:
sudo apt update
sudo apt install xdg-desktop-portal-gtk
Ubuntu GNOME also uses the GNOME portal backend for desktop-specific portal features. Installing the GTK backend does not mean you should remove or replace the GNOME backend. Keep the portal packages provided for your desktop environment. After installation, sign out and back in, or restart the user portal service and then relaunch the affected app:
systemctl --user restart xdg-desktop-portal.service
If systemd reports that the unit is unavailable, sign out and back in instead. Portal activation details can vary with the session and package state. Ubuntu's package listing confirms that xdg-desktop-portal-gtk is available for Ubuntu 24.04.
4. Decide whether the app can use the theme
Test more than one GTK 3 Flatpak if you can. If several GTK 3 apps now follow the theme but one app does not, the remaining issue may be specific to that app or its runtime. If GTK 3 apps work but a modern GNOME app still has a different accent color or widget appearance, that can be expected: GTK 3 theme extensions do not apply to GTK 4/libadwaita in the same way.
Some apps use Qt, Electron, or their own interface toolkit even when they look similar to GNOME applications. In that case, a GTK theme extension may have no effect. Check the app's official documentation for supported appearance options before changing Flatpak permissions. For a Flatpak installed from Flathub, inspect its app ID and runtime with:
flatpak info APP_ID
Replace APP_ID with the application ID shown by flatpak list --app. The output helps identify its runtime and installation scope; it does not always tell you the toolkit, so confirm the toolkit from the app's own documentation or project page when needed.
Common fixes to avoid
- Do not grant broad host filesystem access just to copy the look. Flatpak documents theme extensions and portal/XSettings integration as the normal approaches. Broad access weakens sandbox isolation and can still fail when host and runtime GTK versions differ.
- Do not use a GTK 3 theme extension as a universal dark-mode switch. It contains theme files for compatible GTK 3 apps; system color-scheme support is a separate setting that the app and portal must understand.
- Do not reinstall the application before checking its extension and runtime. Reinstallation may fetch the same runtime without changing the missing theme or portal condition.
- Do not change global portal configuration as a first step. Ubuntu GNOME's backend selection is session-specific. Replacing portal preferences can affect file pickers and other desktop integration beyond theming.
Verification checklist
- Ubuntu Settings shows the intended Light or Dark style.
- The host GTK theme name is known, and a matching GTK 3 extension is available to Flatpak.
flatpak update completed, and the app and theme extension are in a compatible installation scope.
- The
xdg-desktop-portal-gtk package is installed; after changes, the user session or portal has been restarted.
- The affected application was fully closed and reopened.
- You compared apps by toolkit: GTK 3, GTK 4/libadwaita, Qt, or Electron can respond differently.
If the checklist passes and one app remains unchanged, the most useful next step is to consult that application's issue tracker or documentation with its Flatpak ID, runtime, Ubuntu session type (Wayland or X11), and the output of the two read-only gsettings commands. This helps distinguish an app-specific styling choice from a missing desktop integration component without weakening the sandbox.
Ubuntu's current user guide describes the light/dark controls in Settings > Appearance. Flatpak's behavior can vary with its version, app runtime, portal backend, toolkit, and remote metadata; if the active theme is not packaged for the runtime, the app may continue to use its own default appearance.