Un acercamiento a los fondos de pantalla en Ubuntu

Publicado por Maximiliano Fernández en

 A medio mundo le gustan los perros; y hasta el día de hoy nadie sabe qué quiere decir guau.

Mafalda
Foto de cottonbro en Pexels

Pasan 30 minutos y desde un suave fade cambia el fondo de pantalla… Y mis imágenes favoritas van pasando. Hasta aquí la alegría funciona. El problema es cuando quieres agregar más imágenes o cambiar las diapositivas?

Fácil, recurrimos a programas de terceros, que nos ayudan a lograr nuestro setting preferido. Actualmente y desde tiempo uso Shotwell. Con buenos resultados, especialmente para generar los pases de diapositivas. El problema llega cuando quieres agregar nuevas fotos a la lista, haz de crear todo el pase devuelta.

Otro punto es la integración con las herramientas que ofrece el sistema. Ya que las diapositivas o otros wallpapers no siempre se encontraban disponibles cuando se realizaba un cambio de fondo de escritorio, especialmente los pases de diapositivas.
Qué pasa aquí? Donde está el wallpaper? Dónde está todo?

Donde está?

Más allá de programas, u otras soluciones que ya trae el mismo sistema, este artículo solo quiere ahondar en el sistema de ficheros que Ubuntu y supongo que otras distros debian, usan por defecto, y como llegado el momento podemos crear nuestros archivos o diapositivas, y agregarlos para que el gestor de fondos de pantalla pueda reconocerlos. , ya que con cada cambio alguna mejora a llegado y alguna característica se ha ido con respecto a la App «Fondo de Escritorio» en ubuntu.

La estructura de fondos de pantalla está compuesta por las imágenes y por unos archivos xml que configuran las opciones de los mismos. Los fondos incluidos en la instalación están en la carpeta:

$ /usr/share/backgrounds/

Pero no por subir material aquí ya las veremos en la lista. Para que sean un fondo de pantalla han de ser una entrada de un archivo xml situado en la carpeta:

/usr/share/gnome-background-properties/

Estos archivos y carpetas, son incómodas de modificar o agregar otros archivos sin un constante uso de súper poderes. Para un más personal uso disponemos de las mismas carpetas en el directorio:

$ ls ~/.local/share/*bac*

/home/user/.local/share/backgrounds

/home/user/.local/share/gnome-background-properties

La carpeta backgrounds del usuario si es continuamente observada por si hay actualizaciones de contenido. Es más el botón «añadir imagen» de la app «Fondo de Escritorio», copia el archivo seleccionado a esta carpeta.

La carpeta gnome-background-properties, guarda las definiciones de los fondes de escritorio, puede que la carpeta gnome-background-properties/ no exista, pero se puede crear fácilmente. Todo lo que agregaremos a la carpeta ./local/share/background se verá en el gestor de fondos de pantalla, como lo explicamos antes, pero se mostrará distinto a lo que un fondo de pantalla, los fondos de pantalla para ubuntu se crean con unas características , y estas se encuentran especificadas en un archivo xml de configuración. Por eljemplo, si listamos el contenido de la carpeta;

$ ls /usr/share/gnome-background-properties/
    focal-wallpapers.xml 

Vemos el xml generado por la instalación de la distribución, dentro del mismo, cada entrada es un wallpaper, sea imagen o pase de diapositivas, y como ya podéis adivinar, podemos crear uno y agregarlo a la carpeta gnome-background-properties de nuestra carpeta de configuración del usuario. Para visualizar mejor una captura de pantalla de como muestra una imagen de la carpeta background y como muestra los fondos. Las imágenes pueden eliminarse, los fondos no, Se pueden configurar, y lo más importante, se puede definir otro archivo xml como pases de diapositivas, todo lo definido aquí en estos archivos de configuración, se verá en el gestor de fondos. En la figura siguiente, las imágenes con el botón de eliminar son solo imágenes guardadas en la carpeta background, en la parte inferior tenemos los fondos y los que tienen un reloj son pases de diapositivas.

A superior el activo, debajo las imágenes subidas con su botón para eliminar, últimos los fondos, si tiene reloj es pase de imágenes.

Cuando se refiere a un fondo que no cambia no hay diferencia ente poner la imagen en el carpeta o agregarla. Pero si lo que buscamos son pases de imágenes aquí la cosa se complica, ya que no hay un medio de crearlas fácilmente.

Los archivos xml encontramos de dos clases, archivos con la definición de los wallpapers y archivos con la definición de los pases de imágenes.

Las definiciones de los fondos, es el contenido de la carpeta gnome-background-properties, allí encontramos el archivo, o varios, ya que podemos definir nuestros propios fondos, con los paperwall que aparecerán en el gestor. SI vemos el contenido de uno de estos ficheros:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
  <wallpaper>
    <name>Ubuntu</name>
    <name xml:lang="az">Ubuntu</name>
    <name xml:lang="ca">Ubuntu</name>
    <name xml:lang="ca@valencia">Ubuntu</name>
    <name xml:lang="cs">Ubuntu</name>
    <name xml:lang="cy">Ubuntu</name>
    <name xml:lang="en_GB">Ubuntu</name>
    <name xml:lang="es">Ubuntu</name>
    <name xml:lang="fa">اوبونتو</name>
    <name xml:lang="fr">Ubuntu</name>
    <name xml:lang="jbo">lu ubuntus</name>
    <name xml:lang="mr">उबून्टू</name>
    <name xml:lang="ms">Ubuntu</name>
    <name xml:lang="oc">Ubuntu</name>
    <name xml:lang="pl">Ubuntu</name>
    <name xml:lang="pt">Ubuntu</name>
    <name xml:lang="ru">Ubuntu</name>
    <name xml:lang="sl">Ubuntu</name>
    <name xml:lang="sr">Убунту</name>
    <name xml:lang="tr">Ubuntu</name>
    <name xml:lang="ug">ئۇبۇنتۇ</name>
    <name xml:lang="uk">Ubuntu</name>
    <name xml:lang="uz">Ubuntu</name>
    <name xml:lang="zh_CN">Ubuntu</name>
    <filename>/usr/share/backgrounds/warty-final-ubuntu.png</filename>
    <options>zoom</options>
    <pcolor>#2c001e</pcolor>
    <scolor>#2c001e</scolor>
    <shade_type>solid</shade_type>
  </wallpaper>
  <wallpaper>
    <name>Ubuntu Greyscale</name>
    <name xml:lang="bs">Ubuntu Greyscale</name>
    <name xml:lang="ca">Escala de grisos Ubuntu</name>
    <name xml:lang="de">Ubuntu Greyscale</name>
    <name xml:lang="en_AU">Ubuntu Greyscale</name>
    <name xml:lang="en_GB">Ubuntu Greyscale</name>
    <name xml:lang="eo">Ubuntu (grizoskala)</name>
    <name xml:lang="es">Ubuntu, escala de grises</name>
    <name xml:lang="fi">Ubuntu-harmaasävy</name>
    <name xml:lang="fr">Échelle de gris pour Ubuntu</name>
    <name xml:lang="gl">Escala de grises de Ubuntu</name>
    <name xml:lang="id">Ubuntu Skala Kelabu</name>
    <name xml:lang="it">Scala di grigi Ubuntu</name>
    <name xml:lang="ko">우분투 흑백</name>
    <name xml:lang="ms">Ubuntu Skala-Kelabu</name>
    <name xml:lang="pl">Ubuntu w skali szarości</name>
    <name xml:lang="pt">Escala de cinzentos Ubuntu</name>
    <name xml:lang="ru">Ubuntu в серых тонах</name>
    <name xml:lang="sl">Sivina Ubuntu</name>
    <name xml:lang="sv">Ubuntu gråskala</name>
    <name xml:lang="tr">Ubuntu Gri Tonlama</name>
    <name xml:lang="uk">Відтінки сірого Ubuntu</name>
    <name xml:lang="uz">Ubuntu Greyskeyl</name>
    <filename>/usr/share/backgrounds/ackgrounds/wallpapers/113H.jpg</filename>
    <options>zoom</options>
    <pcolor>#333333</pcolor>
    <scolor>#333333</scolor>
    <shade_type>solid</shade_type>
  </wallpaper>
</wallpapers>

Como vemos hay unas opciones que ahora mismo no podemos configurar, en otras versiones de ubuntu, si podíamos escoger alguna pero el las últimas solo podemos disfrutar de la configuración por defecto incluida en estos archivos. El primer tag del xml es el nombre del fondo, hasta está escrito en varios idiomas, pero nada de eso vemos en el gestor, sería interesante que el nombre fuera visible, por razones de autoría, orden, etc. El segundo tag es el archivo de imagen o podría ser otro xml que contiene un pase de imágenes.El tag ‘options’ en otras distribuciones está habilitado en el gestor y podemos escoger un estilo escalado, o centrado cuando renderiza la imagen. las Opciones que existen son :

  • none
  • wallpaper
  • centered
  • scaled
  • stretched
  • zoom
  • spanned

El tag shader hace referencia a los fondos que son colores, sólidos o degradados, teniendo en cuenta que no se ha seleccionado una imagen, los tres tipos que existen:

  • Solid
  • horizontal
  • vertical.

Los Tag Pcolor y Scolor, corresponden al color primario y color secundario, cuando definimos un degradado. También es el color que veremos si no se encuentra la imagen. En otras versiones, el gestor utilizaba esta opción para crear un fondo de un color sólido. Y si definimos un color sólido el color secundario es ignorado

Y las diapositivas?

Hasta este punto del artículo solo se han visto opciones para gestionar un fondo único, pero que pasa quando lo que buscamos es que las imágenes cambien cada cierto tiempo. Un archivo xml con la lista de imágenes y la configuración requerida que será, en si, la representación de el fondo y la ruta de este archivo, Y este archivo agregado a la lista de fondos de escritorio, por ejemplo a el archivo /usr/share/gnome-background-properties/focal-wallpapers.xml.

Podemos encontrar un archivo de este tipo en la carpeta /usr/share/backgrounds/contest/, por ejemplo en la disto que estoy usando actualmente tienen le siguiente contenido, copio solo una parte del xml:

<background>
  <starttime>
    <year>2020</year>
    <month>04</month>
    <day>01</day>
    <hour>00</hour>
    <minute>00</minute>
    <second>00</second>
  </starttime>
  <!-- This animation will start at midnight. -->
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/Focal-Fossa_WP_4096x2304_GREY.png</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/Focal-Fossa_WP_4096x2304_GREY.png</from>
    <to>/usr/share/backgrounds/brad-huchteman-stone-mountain.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/brad-huchteman-stone-mountain.jpg</file>
  </static>
...
</background>

El documento comienza con el tag starttime con la fecha y hora que se inicia la secuencia de pases,

A continuación las imágenes con su respectiva transición, cada etiqueta static, representa una imagen de fondo, dentro dos etiquetas más, duration, que es el tiempo en segundos que se mostrará este imagen ( 1795» -> 29, 9′ ) y file la ruta al archivo de imagen, la ruta es absoluta.

Conclusión

Para los que como yo creen que los fondos de escritorio son la magia de la personalización de un ordenador, este sistema no es muy práctico, pero gracias a otros programas se puede lograr el objetivo. Por esta razón he querido escribir este artículo, mucho he leído, y mucho se ha escrito de este tema, aunque no lo crean. Por eso conocer un poco más de como está estructurado el sistema nos acerca a poder modificar lo que deseemos sin riesgo de romper algo. Y principalmente a poder configurar las cosas como más nos gusta.

Categorías: LinuxUbuntu

0 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

cinco × dos =

Información básica sobre protección de datos
Responsable Maximiliano Fernández +info...
Finalidad Gestionar y moderar tus comentarios. +info...
Legitimación Consentimiento del interesado. +info...
Destinatarios No se cederán datos a terceros, salvo obligación legal +info...
Derechos Acceder, rectificar y suprimir los datos, así como otros derechos. +info...
Información adicional Puedes consultar la información adicional y detallada sobre protección de datos en nuestra página de política de privacidad.