Remediați problemele legate de aplicațiile Flatpak care nu respectă tema GTK în Ubuntu 24.04

Referință rapidă: ce anume corectează de obicei nepotrivirea

Dacă o aplicație Flatpak pe Ubuntu 24.04 se deschide cu Adwaita sau o interfață luminoasă în timp ce desktopul este setat la întuneric, verificați mai întâi dacă aplicația utilizează GTK 3 sau GTK 4/libadwaita. Apoi actualizați Flatpak, faceți disponibilă extensia de temă GTK 3 corespunzătoare și confirmați că portalul desktop este instalat. Aplicațiile Flatpak rulează într-un sandbox, deci nu citesc automat fiecare fișier temă instalat pe gazda Ubuntu.

Ceea ce veziCauza probabilăPrima acțiune
Aplicația GTK 3 folosește Adwaita în loc de YaruExtensia temei active lipsește sau nu este vizibilă pentru runtime-ul aplicațieiActualizați Flatpak și instalați extensia temei corespunzătoare
Flatpak ignoră stilul întunecat al UbuntuProblemă cu portalul, setarea schemei de culori sau asistența pentru aplicațieVerificați aspectul, pachetele portalului și relansați aplicația
Doar o aplicație arată diferitAplicația poate folosi GTK 4/libadwaita, Qt, Electron sau stiluri personalizate.Identificați setul de instrumente înainte de a modifica setările sistemului

Acești pași se aplică aplicațiilor Flatpak pe Ubuntu 24.04, în special celor instalate de pe Flathub. Nu obligă fiecare aplicație să utilizeze stilul complet al desktopului din Ubuntu. Extensiile temei GTK 3, preferința pentru culori deschise/întunecate, pictogramele și stilurile specifice aplicațiilor sunt părți separate.

Cum funcționează potrivirea temelor Flatpak

O aplicație Flatpak folosește propriul sistem de execuție (runtime) în loc de bibliotecile de sistem și directoarele de teme ale gazdei. Flatpak nu poate pur și simplu să expună temele Ubuntu /usr/share/themesca sursă de fișiere pentru aplicația respectivă: sandbox-ul are propriul sistem de fișiere runtime, iar temele pot depinde de o anumită versiune GTK. Prin urmare, Flatpak distribuie temele GTK 3 acceptate ca extensii runtime.

Flatpak poate citi numele temei GTK active a gazdei și poate instala o extensie corespunzătoare atunci când una este disponibilă în telecomanda aplicației. Tema trebuie totuși expusă aplicației. Pe X11, GTK 3 poate primi tema selectată prin XSettings. Pe Wayland, GTK citește setările de aspect relevante printr-un portal de setări pentru desktop. Dacă extensia temei sau o cale de integrare adecvată lipsește, o aplicație poate reveni la Adwaita.

Panoul Setări din Ubuntu 24.04 oferă stiluri de desktop deschise și închise. Această preferință nu este același lucru cu setarea pentru ca fiecare aplicație să utilizeze tema Yaru GTK 3. Aplicațiile GTK 4 construite cu libadwaita respectă, în general, preferințele de aspect ale sistemului acceptate, dar nu acceptă neapărat suprascrieri arbitrare ale temelor GTK vechi. O extensie de temă flatpak numită pentru GTK 3 nu va restyla fiecare aplicație GTK 4 sau libadwaita.

Pentru o prezentare generală tehnică, consultați documentația Flatpak privind integrarea desktop și temele și documentația de asistență pentru portalul GTK .

1. Confirmați stilul desktopului și numele temei

Deschideți Setări > Aspect și selectați stilul dorit Luminos sau Întunecat. Alegerea se aplică imediat desktopului. Dacă utilizați GNOME Tweaks sau un alt instrument pentru a selecta o temă GTK personalizată, rețineți numele exact al temei; numele pachetelor și numele temelor pot diferi în ceea ce privește scrierea cu majuscule sau sufixele.

Puteți citi numele temei GTK active și preferința pentru schema de culori în Terminal:

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

Prima comandă raportează numele temei stocat în setările GNOME; a doua raportează schema preferată de culori deschise/întunecate, atunci când este acceptată. Aceste comenzi inspectează doar valorile. Evitați setarea unui nume de temă copiat dintr-un tutorial, cu excepția cazului în care tema respectivă este instalată și intenționați să o utilizați. Reporniți aplicația afectată după modificarea setărilor de aspect, deoarece multe programe își citesc tema la lansare.

2. Actualizați Flatpak și instalați extensia temei corespunzătoare

Reîmprospătați mai întâi aplicațiile și runtime-urile instalate. Integrarea temelor documentate din Flatpak poate instala automat o extensie corespunzătoare în timpul unei instalări sau actualizări, atunci când tema este disponibilă de la telecomanda configurată.

flatpak update

Dacă aplicația folosește în continuare tema de rezervă, enumerați extensiile temei GTK expuse de Flathub:

flatpak remote-ls --columns=application flathub | grep '^org.gtk.Gtk3theme'

Alegeți o extensie al cărei nume corespunde temei GTK 3 selectate. Flathub listează în prezent variante de teme Yaru, inclusiv org.gtk.Gtk3theme.Yaru-light. De exemplu, instalați acea variantă numai atunci când se potrivește cu tema dorită:

flatpak install flathub org.gtk.Gtk3theme.Yaru-light

Lista de teme Yaru-light de la Flathub o identifică ca un pachet de teme GTK. Numele temei corespunzătoare depinde de setarea gazdei și de ceea ce publică în prezent telecomanda. Dacă utilizați o variantă Yaru diferită sau o temă terță, utilizați [numele] flatpak searchsau listarea telecomandii pentru a găsi ID-ul exact al extensiei; nu presupuneți că sufixul pachetului provine din numele său vizual.

Dacă tema este instalată, dar aplicația rula deja, închideți toate ferestrele acesteia și redeschideți-o. În cazul în care nu sunteți sigur, actualizați încă o dată după ce confirmați că extensia și aplicația provin din aceeași instalare Flatpak:

flatpak list --app
flatpak list --runtime | grep -i theme
flatpak update

Flatpak distinge între instalările per utilizator și cele de sistem. Dacă ați instalat aplicația cu [data], --userdar ați instalat extensia la nivel de sistem sau invers, este posibil ca aplicația să nu vadă extensia acolo unde este așteptată. Păstrați aplicația și extensia în același domeniu de instalare, acolo unde este posibil. Puteți inspecta instalarea unei anumite aplicații cu [data] flatpak info APP_ID.

3. Verificați portalul desktop pe Ubuntu 24.04

Documentația portalului Flatpak al GTK precizează că xdg-desktop-portal-gtkeste necesar pentru temele și fonturile GTK. Ubuntu publică acest backend pentru versiunea Noble (24.04 LTS). Dacă pachetul lipsește, instalați-l din repozitoriile Ubuntu:

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

Ubuntu GNOME folosește și backend-ul portalului GNOME pentru funcții de portal specifice desktop-ului. Instalarea backend-ului GTK nu înseamnă că trebuie să eliminați sau să înlocuiți backend-ul GNOME. Păstrați pachetele portal furnizate pentru mediul desktop. După instalare, deconectați-vă și reconectați-vă sau reporniți serviciul portal pentru utilizatori și apoi relansați aplicația afectată:

systemctl --user restart xdg-desktop-portal.service

Dacă systemd raportează că unitatea nu este disponibilă, deconectați-vă și conectați-vă din nou. Detaliile de activare a portalului pot varia în funcție de sesiune și de starea pachetului. Lista de pachete Ubuntu confirmă că xdg-desktop-portal-gtk este disponibil pentru Ubuntu 24.04 .

4. Decideți dacă aplicația poate folosi tema

Testează mai multe aplicații GTK 3 Flatpak, dacă poți. Dacă mai multe aplicații GTK 3 respectă acum tema, dar o aplicație nu, problema rămasă poate fi specifică acelei aplicații sau rulării acesteia. Dacă aplicațiile GTK 3 funcționează, dar o aplicație GNOME modernă are în continuare o culoare de accent sau un aspect diferit al widgetului, acest lucru este de așteptat: extensiile temei GTK 3 nu se aplică la GTK 4/libadwaita în același mod.

Unele aplicații folosesc Qt, Electron sau propriul set de instrumente de interfață chiar și atunci când arată similar cu aplicațiile GNOME. În acest caz, o extensie de temă GTK poate să nu aibă niciun efect. Verificați documentația oficială a aplicației pentru opțiunile de aspect acceptate înainte de a modifica permisiunile Flatpak. Pentru un Flatpak instalat din Flathub, verificați ID-ul aplicației și timpul de execuție cu:

flatpak info APP_ID

Înlocuiți APP_IDcu ID-ul aplicației afișat de flatpak list --app. Rezultatul ajută la identificarea perioadei de execuție și a domeniului de instalare; nu vă spune întotdeauna setul de instrumente, așa că confirmați setul de instrumente din documentația proprie a aplicației sau din pagina proiectului atunci când este necesar.

Remedii comune de evitat

  • Nu acordați acces larg la sistemul de fișiere gazdă doar pentru a copia aspectul. Flatpak documentează extensiile temei și integrarea portal/XSettings ca abordări normale. Accesul larg slăbește izolarea sandbox-ului și poate eșua în continuare atunci când versiunile GTK ale gazdei și cele ale runtime-ului diferă.
  • Nu utilizați o extensie de temă GTK 3 ca comutator universal pentru modul întunecat. Aceasta conține fișiere de temă pentru aplicații GTK 3 compatibile; suportul pentru schema de culori a sistemului este o setare separată pe care aplicația și portalul trebuie să o înțeleagă.
  • Nu reinstalați aplicația înainte de a verifica extensia și timpul de execuție. Reinstalarea poate prelua același timp de execuție fără a modifica tema sau condiția portalului lipsă.
  • Nu modificați configurația portalului global ca prim pas. Selecția backend-ului în Ubuntu GNOME este specifică sesiunii. Înlocuirea preferințelor portalului poate afecta selectoarele de fișiere și alte integrări desktop dincolo de tematică.

Listă de verificare

  • Setările Ubuntu afișează stilul Luminos sau Întunecat dorit.
  • Numele temei GTK gazdă este cunoscut, iar o extensie GTK 3 corespunzătoare este disponibilă pentru Flatpak.
  • flatpak updatefinalizat, iar aplicația și extensia temei se află într-un domeniu de instalare compatibil.
  • Pachetul xdg-desktop-portal-gtkeste instalat; după modificări, sesiunea utilizatorului sau portalul a fost repornit.
  • Aplicația afectată a fost complet închisă și redeschisă.
  • Ai comparat aplicațiile în funcție de setul de instrumente: GTK 3, GTK 4/libadwaita, Qt sau Electron pot răspunde diferit.

Dacă lista de verificare este satisfăcătoare și o aplicație rămâne neschimbată, cel mai util pas următor este să consultați instrumentul de urmărire a problemelor sau documentația aplicației respective, împreună cu ID-ul Flatpak, timpul de execuție, tipul de sesiune Ubuntu (Wayland sau X11) și rezultatul celor două gsettingscomenzi doar pentru citire. Acest lucru ajută la distingerea unei alegeri de stil specifice aplicației de o componentă de integrare desktop lipsă, fără a slăbi mediul de testare.

Ghidul utilizatorului actual al Ubuntu descrie controalele pentru lumină/întuneric din Setări > Aspect . Comportamentul Flatpak poate varia în funcție de versiunea sa, de rularea aplicației, de backend-ul portalului, de setul de instrumente și de metadatele la distanță; dacă tema activă nu este inclusă în pachetul pentru rulare, aplicația poate continua să utilizeze propriul aspect implicit.

Lasă un comentariu

Descărcați FlightGear gratuit: Ghid oficial de instalare

Descărcați FlightGear gratuit: Ghid oficial de instalare

Descarcă FlightGear gratuit de pe site-ul oficial. Compară pachetele Windows, macOS și Linux, instalează fișierele de date și începe primul tău zbor.

Aplicația desktop Google Tasks: Cum se utilizează pe computer

Aplicația desktop Google Tasks: Cum se utilizează pe computer

Deschide Google Tasks într-un browser, adaugă o comandă rapidă pentru Chrome sau o lansare în stilul aplicației și gestionează activitățile de făcut în avans prin Calendar și Gmail.

OKSampler: Un sampler muzical gratuit și simplu pentru ritmuri de claviatură

OKSampler: Un sampler muzical gratuit și simplu pentru ritmuri de claviatură

OKSampler mapează clipuri MP3 pe tastele tastaturii și poate reda audio în buclă. Află ce face software-ul gratuit vechi, unde se termină funcțiile sale vechi și ce trebuie să verifici înainte de descărcare.

Cum să joci Don't Starve Together pe Linux

Cum să joci Don't Starve Together pe Linux

Instalează versiunea Linux a jocului Don't Starve Together prin Steam, creează o lume sau alătură-te prietenilor urmând acești pași de configurare și depanare.

Cum să joci Squad pe Linux cu Steam Proton

Cum să joci Squad pe Linux cu Steam Proton

Configurează Squad pe Linux cu Steam Play și Proton, instalează jocul, alege un instrument de compatibilitate și depanează problemele anti-cheat.

Cum se instalează Linux Mint Debian Edition 5 „Elsie” de pe USB

Cum se instalează Linux Mint Debian Edition 5 „Elsie” de pe USB

Descărcați și verificați fișierul ISO LMDE 5 arhivat, creați un USB bootabil și alegeți setările de instalare sigure. Elsie a ajuns la sfârșitul duratei de viață; consultați versiunea curentă a LMDE.

Cum se creează o unitate USB bootabilă cu Windows 11 pe Linux

Cum se creează o unitate USB bootabilă cu Windows 11 pe Linux

Creați un USB de instalare Windows 11 pe Linux cu Ventoy: obțineți fișierul ISO oficial, instalați Ventoy în siguranță, copiați imaginea și porniți PC-ul țintă.

Cum se instalează Wireshark pe Linux: Ubuntu, Fedora, Arch și altele

Cum se instalează Wireshark pe Linux: Ubuntu, Fedora, Arch și altele

Instalați Wireshark pe Ubuntu, Debian, Fedora, Arch sau openSUSE cu comenzile actuale ale pachetului, apoi configurați captura de pachete live în siguranță.

Cum se joacă DiRT Rally pe Linux: Configurarea Steam și remedierile Proton

Cum se joacă DiRT Rally pe Linux: Configurarea Steam și remedierile Proton

Învață cum să joci DiRT Rally pe Linux dacă îl deții deja pe Steam: instalează versiunea nativă, lansează-l și folosește Proton doar ca soluție de rezervă.

Cum se instalează Devuan Linux de pe un USB bootabil

Cum se instalează Devuan Linux de pe un USB bootabil

Instalați Devuan Excalibur din fișierul ISO Desktop Live. Verificați descărcarea, creați un USB bootabil, protejați partițiile existente și finalizați configurarea cu Refracta Installer.