Los het probleem op dat Flatpak-apps GTK-thema's niet respecteren in Ubuntu 24.04.

Als een Flatpak-app opent met Adwaita terwijl de rest van Ubuntu 24.04 Yaru gebruikt, is het mogelijk dat de themabestanden op je bureaublad in orde zijn. Flatpak voert apps uit in een sandbox, waardoor een programma niet automatisch elk themabestand van de host leest. De oplossing is meestal om ervoor te zorgen dat het geselecteerde thema beschikbaar is voor de Flatpak-runtime en dat de bureaubladinstellingenservice de actieve keuze kan doorgeven.

Deze handleiding begint met eenvoudige controles en gaat vervolgens over op gerichte probleemoplossing. De handleiding is voornamelijk van toepassing op GTK 3-applicaties. GTK 4- en libadwaita-applicaties kunnen andere stijlregels volgen, dus een thema dat werkt in Bestanden of een andere GTK 3-applicatie werkt mogelijk niet in elk Flatpak-venster.

Wat je eerst moet weten

Een GTK-thema bepaalt het uiterlijk van interface-elementen zoals knoppen en menu's in apps die GTK gebruiken, een toolkit voor het bouwen van grafische interfaces. Een Flatpak-runtime biedt gedeelde bibliotheken die worden gebruikt door een app in een sandbox. De sandbox houdt het bestandssysteem van de app gescheiden van het hostsysteem. Hierdoor worden themabestanden van de host, bijvoorbeeld op locaties zoals , /usr/share/themesniet zomaar naar elke Flatpak gekopieerd.

De door Flatpak ondersteunde aanpak voor GTK 3-thema's is een extensie met de naam van het thema, meestal na org.gtk.Gtk3theme.ThemeName. Als die extensie aanwezig is in de geconfigureerde remote voor de runtime van de app, kan Flatpak deze samen met de app of tijdens een update installeren. Het bureaublad moet ook de actieve instelling beschikbaar stellen: XSettings wordt gebruikt op X11, terwijl de instellingenportal deze levert op Wayland. Een portal is een desktopservice die apps in een sandbox gecontroleerde toegang geeft tot geselecteerde bureaubladfuncties en -voorkeuren.

Het standaard Yaru-thema van Ubuntu is op de host geïnstalleerd, maar dat bewijst op zich niet dat er voor elke app en runtime een bijbehorende Flatpak-thema-extensie beschikbaar is. De beschikbaarheid kan afhangen van de themanaam, de geconfigureerde Flatpak-remote, de runtime-branch en de toolkit. Flatpak beschrijft Adwaita als de fallback wanneer een thema of instellingeninterface niet beschikbaar is.

Stap 1: Bevestig het thema en de sessie van de host.

Controleer eerst of het thema ook wordt toegepast op gewone desktop-apps. Open Instellingen → Uiterlijk , noteer de geselecteerde stijl en open een vooraf geïnstalleerde GTK-app. Als de host-apps er ook verkeerd uitzien, corrigeer dan eerst het uiterlijk van het bureaublad voordat je de Flatpak-instellingen wijzigt.

Je kunt de GTK-themanaam in de terminal controleren met:

gsettings get org.gnome.desktop.interface gtk-theme

Het resultaat is een naam tussen aanhalingstekens, bijvoorbeeld 'Yaru'. Noteer de spelling en het hoofdlettergebruik. Flatpak koppelt de door de host geselecteerde GTK-themanaam aan een extensie; zoeken naar een vergelijkbaar maar anders benoemd thema lost de mismatch mogelijk niet op. Het Yaru-project van Ubuntu documenteert Yaru als de standaard GTK-themasuite van Ubuntu.

Bepaal ook of je sessie Wayland of X11 is. Selecteer op het inlogscherm je gebruiker en gebruik het tandwielmenu (indien beschikbaar); de sessienaam wordt daar meestal weergegeven. Dit is belangrijk omdat het instellingenpad verschilt: Wayland gebruikt een portaal, terwijl X11 XSettings gebruikt. De standaard GNOME-sessie van Ubuntu 24.04 gebruikt doorgaans Wayland, maar gebruikers kunnen een andere sessie kiezen.

Stap 2: Update Flatpak en controleer de beschikbaarheid van thema-extensies.

Voer een algemene Flatpak-update uit om de geïnstalleerde apps, runtimes en beschikbare extensies te vernieuwen:

flatpak update

Bekijk de voorgestelde wijzigingen voordat u ze bevestigt. Zoek vervolgens in de geconfigureerde afstandsbedieningen naar extensies die overeenkomen met de themanaam die u hebt genoteerd. Voor een Yaru-selectie kunt u het volgende proberen:

flatpak search org.gtk.Gtk3theme.Yaru

Als de zoekopdracht een overeenkomende extensie oplevert, noteer dan de exacte applicatie-ID en remote die worden weergegeven. Installeer deze alleen als Flatpak deze nog niet heeft geïnstalleerd. Gebruik de ID en remote exact zoals weergegeven:

flatpak install REMOTE EXTENSION_ID

Vervang beide placeholders met hoofdletters door de werkelijke waarden. Kopieer geen geschatte extensie-ID van een niet-gerelateerd thema of runtime-branch. Sommige extensiebuilds zijn mogelijk niet beschikbaar voor een bepaalde runtime; in dat geval kan de app Adwaita blijven gebruiken, zelfs als de host Yaru gebruikt.

Volgens de eigen documentatie van Flatpak over desktopintegratie worden overeenkomende GTK-thema-extensies automatisch geïnstalleerd tijdens de installatie of update van een app, mits ze aanwezig zijn in de remote repository. Als de extensie dus wel beschikbaar is, maar niet aanwezig, kan het bijwerken van de app voldoende zijn. Zoekresultaten kunnen variëren naarmate remote repositories en pakketten veranderen, dus beschouw de lokale Flatpak-output als de actuele controle in plaats van een pakketnaam te veronderstellen.

Stap 3: Start de app opnieuw en vernieuw de desktopinstellingenservice.

Sluit de betreffende app volledig af, inclusief eventuele processen die op de achtergrond draaien, en open deze vervolgens opnieuw. Een actief proces kan de weergave-instellingen behouden die het bij het opstarten heeft gelezen.

Als je Wayland gebruikt en meerdere GTK Flatpaks de geselecteerde stijl nog steeds negeren, controleer dan of de GTK-portalbackend is geïnstalleerd:

dpkg -l xdg-desktop-portal xdg-desktop-portal-gtk

Controleer de installatiestatus in de pakketlijst. De Flatpak-documentatie geeft specifiek aan xdg-desktop-portal-gtkdat dit vereist is voor GTK-thema's en -lettertypen. Als het ontbreekt, installeer dan het Ubuntu-pakket vanuit het officiële archief:

sudo apt update
sudo apt install xdg-desktop-portal-gtk

Sla eerst je werk op in geopende applicaties. Meld je vervolgens af en weer aan. Dit zorgt voor een schone herstart van de gebruikerssessie en de bijbehorende portalservices. Dit is meestal de duidelijkste optie voor een beginner. Gevorderde gebruikers kunnen hun gebruikersservices vanuit de Terminal herstarten met het commando `sudo apt restart` systemctl --user restart xdg-desktop-portal.service xdg-desktop-portal-gtk.service, maar de namen van de services en het activeringsgedrag kunnen per installatie verschillen. Als dit commando aangeeft dat een unit niet geladen is, meld je dan af in plaats van de services herhaaldelijk te herstarten.

Stap 4: Controleer of de applicatie het thema ondersteunt.

Heropen dezelfde Flatpak en vergelijk de knoppen, menu's en vensterinhoud met een GTK-app die is geïnstalleerd via de Ubuntu-pakketten. Als slechts één Flatpak verschilt, ligt het probleem mogelijk aan de toolkit, runtime of implementatie van die app. Sommige GTK 4-apps gebruiken bijvoorbeeld libadwaita, dat bewust de ontwerpconventies van GNOME volgt en geen willekeurige GTK-thema's ondersteunt zoals oudere GTK 3-apps dat wel doen. Flatpak-extensies voor GTK 3 zullen een Qt-app ook niet van een andere stijl voorzien.

Als een app een recente runtime gebruikt en er een GTK 3-thema-extensie aanwezig is, zou de bureaubladinstelling normaal gesproken automatisch moeten worden toegepast. Als dit niet het geval is, controleer dan de runtime van de app met:

flatpak info APP_ID

Vervang dit APP_IDdoor de daadwerkelijke ID van de app. De uitvoer helpt u bij het identificeren van de runtime en de branch die u moet rapporteren als u contact opneemt met de beheerder van de app. Het bewijst op zichzelf niet of de applicatie de GTK-themavoorkeuren respecteert.

Veelvoorkomende oplossingen om te vermijden

  • Geef niet meteen brede toegang tot het hostbestandssysteem. De Flatpak-documentatie vermeldt dat het blootstellen van themabestanden van de host de sandbox kan verzwakken en de portabiliteit kan verminderen. Geef de voorkeur aan een onderhouden thema-extensie en een goed werkende desktopintegratie.
  • Ga er niet vanuit dat het installeren van een thema met APT het in elke Flatpak installeert. APT wijzigt de host. De Flatpak-runtime heeft nog steeds een compatibele extensie of een ondersteund instellingenpad nodig.
  • Verwar de donkere modus niet met een GTK-thema. De voorkeursinstellingen voor het kleurenschema van het bureaublad en een volledig GTK-thema zijn verwante, maar verschillende instellingen. De app en de bijbehorende runtime moeten de betreffende voorkeursinstelling ondersteunen.
  • Reset niet alle GNOME-instellingen en verwijder geen themamappen. Dergelijke stappen kunnen irrelevante voorkeuren verwijderen en voegen geen ontbrekende Flatpak-extensie toe.
  • Gebruik omgevingsvariabelen niet als universele oplossing. Een overschrijving kan per toolkit en app verschillen en kan het daadwerkelijke probleem met de ontbrekende extensie of portal maskeren.

Controleer het resultaat

Na het bijwerken of installeren van de bijbehorende extensie en het opnieuw starten van de sessie of app, controleert u drie dingen: de host meldt nog steeds de verwachte GTK-themanaam; de relevante thema-extensie verschijnt in de lijst met geïnstalleerde Flatpak-applicaties; en de GTK-besturingselementen van de betreffende app zien er nu correct uit. U kunt een lijst van geïnstalleerde Flatpaks bekijken met:

flatpak list --app

Als het hostthema correct is, de extensie niet beschikbaar is voor de runtime van de app en er slechts één applicatie visueel anders uitziet, kan de beperking app-specifiek zijn in plaats van een defect Ubuntu-thema. Vermeld bij het indienen van een rapport de Flatpak-app-ID, de runtime-branch, het sessietype, de themanaam en de relevante pakketstatus van de portal. Dit geeft beheerders de details die nodig zijn om een ​​probleem met de pakketten te onderscheiden van een probleem met de desktopinstellingen.

Officiële referenties

Laat een reactie achter

Ontwikkel een PipeWire-uitvoerschakelscript dat de actieve audio verplaatst.

Ontwikkel een PipeWire-uitvoerschakelscript dat de actieve audio verplaatst.

Schakel tussen benoemde PipeWire-uitgangen in Debian met een pactl-script dat de standaardbestemming bijwerkt en reeds afgespeelde streams omleidt.

De Bluetooth-microfooningang van de headset herstellen in Ubuntu 24.04

De Bluetooth-microfooningang van de headset herstellen in Ubuntu 24.04

Zorg dat de microfoon van je Bluetooth-headset werkt door de juiste ingang te selecteren, een handsfree audioprofiel te gebruiken en de PipeWire-route van Ubuntu te controleren.

Los het probleem op dat Flatpak-apps GTK-thema's niet respecteren in Ubuntu 24.04.

Los het probleem op dat Flatpak-apps GTK-thema's niet respecteren in Ubuntu 24.04.

Ontdek waarom Flatpak-apps Ubuntu 24.04 GTK-thema's mogelijk negeren en volg de veilige stappen om thema-extensies te controleren, Flatpak-apps te vernieuwen en problemen met de portal te diagnosticeren.

Hoe je Ubuntu 24.04 en Windows 11 naast elkaar kunt installeren (dual-boot) met BitLocker ingeschakeld.

Hoe je Ubuntu 24.04 en Windows 11 naast elkaar kunt installeren (dual-boot) met BitLocker ingeschakeld.

Installeer Ubuntu 24.04 veilig naast Windows 11 met BitLocker. Vergelijk paden voor aparte schijven en gedeelde schijven, herstelsleutels, partitionering en opstartcontroles.

Hoe los je het probleem op dat Nvidia-stuurprogramma's niet laden na een kernelupdate in Ubuntu?

Hoe los je het probleem op dat Nvidia-stuurprogramma's niet laden na een kernelupdate in Ubuntu?

Diagnoseer NVIDIA-stuurprogrammafouten na een Ubuntu-kernelupdate. Controleer DKMS en Secure Boot, compileer de betreffende module opnieuw, registreer een MOK en verifieer de oplossing.

Hoe los je het probleem op dat de wifi-verbinding in Ubuntu 24.04 wegvalt na het onderbreken van de sessie?

Hoe los je het probleem op dat de wifi-verbinding in Ubuntu 24.04 wegvalt na het onderbreken van de sessie?

Los het probleem op dat de wifi-verbinding in Ubuntu 24.04 wegvalt na het in de slaapstand zetten van de computer. Controleer hiervoor NetworkManager, radioblokkeringen, updates, energiebesparing en stuurprogramma's en verifieer vervolgens elke hervatting.

Het hoge CPU-gebruik van Tracker-Miner-3 in Ubuntu GNOME verhelpen

Het hoge CPU-gebruik van Tracker-Miner-3 in Ubuntu GNOME verhelpen

Leer waarom tracker-miner-fs-3 veel CPU-kracht verbruikt in Ubuntu GNOME en hoe je de indexering kunt controleren, mappen kunt uitsluiten, Ubuntu kunt bijwerken of de zoekindex veilig opnieuw kunt opbouwen.

Oplossing voor "Geen opstartbaar apparaat gevonden" na installatie van Debian op UEFI

Oplossing voor "Geen opstartbaar apparaat gevonden" na installatie van Debian op UEFI

Los de UEFI-opstartfout van Debian op door de opstartmodus, de EFI-systeempartitie, GRUB-bestanden en de opstartvolgorde van de firmware te controleren, zonder Debian eerst opnieuw te installeren.

Hoe los je het probleem op dat er na een update een DLL-bestand ontbreekt in Windows 11?

Hoe los je het probleem op dat er na een update een DLL-bestand ontbreekt in Windows 11?

Krijg je na een update in Windows 11 last van DLL-fouten? Ontdek bewezen, stapsgewijze oplossingen om je systeem weer soepel te herstellen. Geen technische kennis nodig – je bent snel weer aan de slag!

Hoe los je de grijze HDR-kleuren en het gedimde scherm in Windows 11 op?

Hoe los je de grijze HDR-kleuren en het gedimde scherm in Windows 11 op?

Heb je last van grauwe kleuren en een donker scherm in Windows 11 HDR? Ontdek bewezen oplossingen om je beeld weer levendig te maken en je beeldscherminstellingen te optimaliseren voor een meeslepende ervaring. Stapsgewijze oplossingen vind je hier.