GNU/Linux >> Znalost Linux >  >> Linux

Jak upravovat motivy v Gnome 40+ – návod

Motivy Gnome upravovat nejde, už ne, napsal mi někdo v emailu. A já odpověděl, co co. Tato osoba poukázala na to, že pokyny, které jsem uvedl v průvodci úpravou motivu Gnome, již nefungují. Konkrétně soubor gtk.css, který by měl obsahovat klauzule nezbytné k provádění změn motivu, jako je například barva písma, už tam prostě nebyl.

Rozhodl jsem se to prozkoumat dále. Zapnul jsem CentOS 9 Stream, který je dodáván s moderní verzí desktopového prostředí Gnome, a podíval jsem se, co nabízí ve složce motivu Adwaita. Zdá se, že stará metoda přizpůsobení již není použitelná. Proto potřebujeme tento tutoriál. Začněte, musíme.

Problém podrobněji

Tak jako tak. Přejděte do /usr/share/themes/Adwaita a podívejte se, co je pod tímto stromem adresářů. V podsložce gtk-3.0 je soubor gtk.css, ale je prázdný. Je to útržek s následujícím textem:

/* Adwaita je nyní součástí GTK+ 3, tento soubor se již nepoužívá */

Takže potřebujeme něco jiného.

Nový způsob úpravy motivů Gnome

Dobře. Metoda potřebná k úpravě motivů Gnome 40+ je poměrně složitá a spletitá, ale skutečnost, že musíte ručně upravovat soubory CSS, je již velkým problémem. Pak znovu, jediný desktop v linuxovém prostoru, který vám umožňuje dělat věci způsobem GUI, bez jakéhokoli hackování, je Plasma. Nechci zde však filozofovat nebo fanouškovit. Účelem tohoto tutoriálu je ukázat vám, jak z jakéhokoli důvodu upravovat témata Gnome. Řekněme barvu písma, ačkoli Adwaita má slušné výchozí hodnoty (na rozdíl od většiny témat Linuxu obecně).

1. Naklonujte úložiště gtk z GitLab

Toto je první věc:

git klon https://gitlab.gnome.org/GNOME/gtk.git

2. Přepněte na "starší" větev tohoto stromu

Potřebujeme to, abychom mohli upravovat témata GTK 3.X – aktuální větev je pro GTK 4.0 a tam je zacházení s motivy jiné. Nyní to znamená, že někdy v budoucnu budeme muset čelit další technické překážce, ale to je úplně jiný příběh – ve skutečnosti již mohou existovat programy, které nebudou používat žádný z vašich vlastních motivů, a další problémy tohoto Příroda. Ale pojďme postupovat pomalu.

git checkout gtk-3-24
Pobočka 'gtk-3-24' nastavena pro sledování vzdálené větve 'gtk-3-24' z 'origin'.
Přepnuto na novou větev 'gtk-3-24'

Zde nyní uvidíte seznam souborů, včetně „zdrojových“ souborů CSS, ze kterých jsou sestavována témata.

3. Upravte soubor barev

Otevřete soubor _colors.scss v textovém editoru. To, co uvidíte, je známá syntaxe motivu, kterou jsme viděli v minulosti, a nyní musíme provést změny, například barvu písma.

// Když se definice barev pro tmavou a světlou variantu liší
// získá @if ed v závislosti na $variant

$base_color:if($variant =='light', #ffffff, zesvětlit (desaturovat (#241f31, 100 %), 2 %);
$text_color:if($variant =='světlý', černý, bílý);
$bg_color:if($variant =='světlý', #f6f5f4, darken(desaturate(#3d3846, 100%), 4%));
$fg_color:if($variant =='light', #2e3436, #eeeeec);

$selected_fg_color:#ffffff;
$selected_bg_color:if($variant =='light', #3584e4, darken(#3584e4, 20%));
$selected_borders_color:if($variant=='light', darken($selected_bg_color, 15%), darken($selected_bg_color, 30%));
...

To, co potřebujete změnit, závisí čistě na vašich potřebách. Ale řekněme text. Podívejte se na druhý nekomentovaný řádek v souboru. V tuto chvíli zní:

$text_color:if($variant =='světlý', černý, bílý);

Změníme to na:

$text_color:if($variant =='světlý', červený, bílý);

Struktura řádku je ve tvaru klauzule IF THEN, což znamená, že pokud je téma světlé, použije se první argument za čárkou, a pokud ne, pak druhý. Jinými slovy, pokud se jedná o světlé téma, deklarace barvy textu bude nastavena na černou. U tmavého motivu Adwaita bude bílá. Změníme černou barvu písma na červenou.

4. Analyzujte soubor

Dalším krokem je „sestavení“ konečného souboru motivu gtk.css. To se provádí pomocí skriptu parse-sass.sh. Je to něco jako vytváření nabídky GRUB z různých „zdrojových souborů“ namísto přímé úpravy nabídky. Toto je moderní způsob, jak dělat věci, a přestože je modulárnější, je také otravnější.

Spusťte skript. Může se zobrazit chyba:

./parse-sass.sh
Ke vygenerování css je třeba nainstalovat sassc.

To znamená, že musíte nainstalovat program (utilitu) sassc z úložiště. Přesný postup, jak to udělat, se bude lišit od distribuce k distribuci, tj. od skutečného systému, na kterém pracujete. V CentOS 9 Stream to bylo extra komplikované, protože sassc není k dispozici ve standardních repozitářích a musel jsem povolit EPEL, aby se nástroj nainstaloval. Alternativně bych to mohl udělat na boxu Fedora nebo boxu Ubuntu. Každopádně.

Po nějakém šťouchání s repo je tam nástroj a spustíme ho:

/parse-sass.sh
Generování css...

Skript vytvoří dva soubory, gtk-contained.css a gtk-contained-dark.css, které budou použity se světlým a tmavým motivem.

-rw-rw-r--. 1 roger roger 4338 8. března 15:49 _colors.scss
drwxrwxr-x. 3 Roger Roger 4096 8. března 15:49.
-rw-rw-r--. 1 roger roger 171713 8. března 15:53 ​​gtk-contained.css
-rw-rw-r--. 1 roger roger 171416 8. března 15:53 ​​gtk-contained-dark.css

5. Zkopírujte vytvořený soubor CSS do svého motivu

Nyní musíme skutečně uchopit soubory CSS, které jsme vygenerovali (a několik dalších souborů), a použít je v našem vlastním motivu. Zkopírujeme výchozí motiv Adwaita do domovského adresáře a poté zkopírujeme CSS dovnitř. Také jsem si dovolil upravit název zkopírovaného motivu (v souboru index.theme), aby bylo snazší jej odlišit od standardního Adwaita. Nazval jsem svůj Adwaita-2.

cp -r /usr/share/themes/Adwaita ~/.themes/Adwaita-2
gedit ~/.themes/Adwaita-2/index.theme

Pojmenujte téma jakkoli.

cp -r [místní umístění klonovaného úložiště git]/gtk/gtk/theme/Adwaita/assets ~/.themes/Adwaita-2/gtk-3.0/
cp -r [umístění místního klonovaného úložiště git]/gtk/ gtk/theme/Adwaita/gtk-contained.css ~/.themes/Adwaita-2/gtk-3.0/gtk.css

V podstatě přepisujeme prázdný soubor se zakázaným inzerováním.

6. Aktivujte nový motiv

Nyní spusťte Gnome Tweaks a aktivujte své nové téma:

A je to! Hotovo. Trvalo to jen 16 minut a 6 snadných kroků. Že jo? Správně.

Závěr

Témata hackování na příkazovém řádku jsou velmi 1998, ale hodně zkušeností s Linuxem na desktopu bohužel zůstává 1998. Není to dobrá věc, zvláště pokud se lidé snaží opustit svět Windows, včetně současné společnosti. Ale pak se nám podařilo dokončit naše úkoly, takže to není úplně špatné.

Pokud potřebujete provést úpravy motivu v Gnome 40+, budete muset naklonovat původní úložiště, přepnout se do staré větve, provést změny v deklaracích barev, sestavit soubory CSS a poté je zkopírovat do vlastního motivu. Ne triviální, ale proveditelné. A zcela se tomu lze vyhnout, pokud se distribuce zaváží dodávat své produkty s krásným, jasným, ostrým a ostrým písmem. Do té doby vám, doufám, bude tento článek užitečný. A konečně, toto vše se může brzy znovu změnit, protože GTK-4.0 a libadwaita přinášejí své vlastní tématické problémy. Uvidíme se.


Linux
  1. Jak GNOME používá Git

  2. Jak obnovit relaci Gnome?

  3. Jak upravím resolv.conf?

  1. Jak nahrávat screencasty v GNOME 3

  2. Jak nainstalovat motivy v Ubuntu 17.10 a vyšší

  3. Jak nainstalovat motivy nebo ikony v základním OS

  1. Návod, jak používat GNOME boxy

  2. Jak přizpůsobit Ubuntu 18.04 pomocí motivů

  3. Jak nainstalovat Gnome Edit na Ubuntu 22.04 LTS