GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo editar temas en Gnome 40+ - Tutorial

No puedes editar los temas de Gnome, no más, alguien me escribió en un correo electrónico. Y yo respondí, qué qué. La persona señaló que las instrucciones que expuse en mi guía de edición de temas de Gnome ya no funcionaban. Específicamente, el archivo gtk.css, que se supone que contiene las cláusulas necesarias para realizar cambios en el tema, como el color de fuente, por ejemplo, simplemente ya no estaba allí.

Decidí explorar esto más a fondo. Encendí CentOS 9 Stream, que viene con una versión moderna del entorno de escritorio Gnome, y miré lo que aparece en la carpeta del tema Adwaita. De hecho, el antiguo método de personalización parece ya no aplicable. Es por eso que necesitamos este tutorial. Empezar, debemos.

Problema con más detalle

De todas formas. Vaya a /usr/share/themes/Adwaita y vea qué hay debajo de este árbol de directorios. En la subcarpeta gtk-3.0, hay un archivo gtk.css, pero está vacío. Es un resguardo que dice lo siguiente:

/* Adwaita ahora es parte de GTK+ 3, este archivo ya no se usa */

Entonces, necesitamos algo más.

La nueva forma de editar temas de Gnome

Bien. El método requerido para editar los temas de Gnome 40+ es bastante complejo y enrevesado, pero, de nuevo, el hecho de que necesite modificar manualmente los archivos CSS ya es un gran problema. Por otra parte, el único escritorio en el espacio de Linux que le permite hacer las cosas de manera GUI, sin ningún tipo de piratería, es Plasma. Sin embargo, no quiero ponerme filosófico o fanático aquí. El propósito de este tutorial es mostrarle cómo editar temas de Gnome, por cualquier motivo. Por ejemplo, color de fuente, aunque Adwaita tiene valores predeterminados decentes (a diferencia de la mayoría de los temas de Linux en general).

1. Clonar el repositorio gtk desde GitLab

Esto es lo primero:

clon de git https://gitlab.gnome.org/GNOME/gtk.git

2. Cambiar a la rama "más antigua" de este árbol

Necesitamos esto para poder editar temas GTK 3.X:la rama actual es para GTK 4.0, y allí, el manejo de temas es diferente. Ahora, esto significa que en algún momento en el futuro tendremos que enfrentar otro obstáculo técnico, pero esa es una historia completamente diferente; de ​​hecho, es posible que ya haya programas que no utilicen ninguno de sus temas personalizados y otros problemas de este naturaleza. Pero avancemos lentamente.

git checkout gtk-3-24
Sucursal 'gtk-3-24' configurada para rastrear la sucursal remota 'gtk-3-24' desde 'origen'.
Cambiado a una nueva rama 'gtk-3-24'

Aquí, ahora verá una lista de archivos, incluidos los archivos CSS de "fuente" a partir de los cuales se construyen los temas.

3. Edite el archivo de colores

Abra _colors.scss en un editor de texto. Lo que verá es la sintaxis de tema familiar que vimos en el pasado, y ahora necesitamos hacer cambios, como el color de la fuente.

// Cuando la definición de color difiere para la variante oscura y clara
// obtiene @if ed dependiendo de $variant

$base_color:if($variant =='light', #ffffff, aligerar(desaturar(#241f31, 100%), 2%));
$text_color:if($variante =='claro', negro, blanco);
$bg_color:if($variante =='claro', #f6f5f4, oscurecer(desaturar(#3d3846, 100%), 4%));
$fg_color:if($variante =='claro', #2e3436, #eeeeec);

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

Lo que necesita cambiar depende completamente de sus necesidades. Pero digamos texto. Mire la segunda línea sin comentarios en el archivo. Por el momento, dice:

$texto_color:if($variante =='claro', negro, blanco);

Cambiaremos esto a:

$texto_color:if($variante =='claro', rojo, blanco);

La estructura de la línea es en forma de cláusula IF THEN, lo que significa que si el tema es ligero, se utilizará el primer argumento después de la coma, y ​​si no, entonces el segundo. En otras palabras, si se trata de un tema claro, la declaración de color del texto se establecerá en negro. Para el tema Adwaita oscuro, será blanco. Cambiaremos el color de fuente negro a rojo.

4. Analizar el archivo

El siguiente paso es "construir" el archivo gtk.css del tema final. Esto se hace usando el script parse-sass.sh. Es algo así como crear el menú de GRUB a partir de una variedad de "archivos fuente" en lugar de editar directamente el menú. Esta es una forma moderna de hacer las cosas y, si bien es más modular, también es más molesta.

Ejecute el script. Es posible que vea un error:

./parse-sass.sh
sassc debe instalarse para generar el css.

Esto significa que necesita instalar el programa sassc (utilidad) desde los repositorios. El procedimiento exacto para hacer esto diferirá de una distribución a otra, es decir, el sistema real en el que está trabajando. En CentOS 9 Stream, esto era más complicado ya que sassc no está disponible en los repositorios estándar y tuve que habilitar EPEL para instalar la herramienta. Ahora, alternativamente, podría haber hecho esto en una caja de Fedora o una caja de Ubuntu. De todos modos.

Después de algunos cambios en el repositorio, la utilidad está ahí y la ejecutamos:

/parse-sass.sh
Generando el css...

El script creará dos archivos, gtk-contained.css y gtk-contained-dark.css, para usar con los temas claro y oscuro, respectivamente.

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

5. Copia el archivo CSS creado a tu tema

Ahora, necesitamos tomar los archivos CSS que generamos (y algunos otros archivos) y usarlos en nuestro tema personalizado. Copiaremos el tema Adwaita predeterminado en el directorio de inicio y luego copiaremos el CSS. También me tomé la libertad de editar el nombre del tema copiado (en el archivo index.theme) para que sea más fácil distinguirlo del Adwaita original. Llamé al mío Adwaita-2.

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

Nombra el tema como quieras.

cp -r [ubicación del repositorio git clonado local]/gtk/gtk/theme/Adwaita/assets ~/.themes/Adwaita-2/gtk-3.0/
cp -r [ubicación del repositorio git clonado local]/gtk/ gtk/theme/Adwaita/gtk-contained.css ~/.themes/Adwaita-2/gtk-3.0/gtk.css

En esencia, estamos sobrescribiendo el archivo auxiliar vacío.

6. Activar el nuevo tema

Ahora, inicia Gnome Tweaks y activa tu nuevo tema:

¡Y ahí tienes! Trabajo hecho. Solo tomó 16 minutos y 6 sencillos pasos. ¿Derecha? Correcto.

Conclusión

La piratería de temas en la línea de comandos es muy de 1998, pero, desafortunadamente, gran parte de la experiencia de escritorio de Linux sigue siendo de 1998. No es algo bueno, especialmente si las personas buscan dejar atrás el mundo de Windows, incluida la compañía actual. Pero luego, logramos completar nuestras tareas, así que no todo es malo.

Si necesita realizar ediciones de temas en Gnome 40+, deberá clonar el repositorio original, cambiar a la rama anterior, realizar cambios en las declaraciones de color, crear los archivos CSS y luego copiarlos en su propio tema. No trivial, pero factible. Y totalmente evitable si las distribuciones se comprometen a enviar sus productos con fuentes hermosas, claras, nítidas y nítidas. Hasta entonces, con suerte, este artículo le resultará útil. Por último, todo esto puede cambiar pronto una vez más, porque GTK-4.0 y libadwaita traen sus propios problemas de tematización. Nos vemos.


Linux
  1. Cómo GNOME usa Git

  2. Cómo grabar screencasts en GNOME 3

  3. Cómo instalar temas en Ubuntu 17.10 y superior

  4. ¿Cómo reanudar una sesión de Gnome?

  5. ¿Cómo edito resolv.conf?

Trucos de escalado de escritorio y HD de Gnome

Gnome 40 - El escritorio anti-escritorio

Cómo instalar extensiones de Gnome en CentOS 8

Cómo instalar Mono o dotNET45 en Linux - Tutorial

Cómo desinstalar aplicaciones WINE

Cómo mostrar el escritorio en GNOME