script

¿Alguna vez has querido tener esa característica de cambio automático de fondo en tu distribución con el escritorio GNOME? Echaba de menos esta característica después de probar Cinnamon y Plasma KDE en GNOME, porque soy usuario también de este escritorio. Se que hay programas que hacen eso, como Variety, pero lo que propongo es un script en bash que ahorrará recursos del sistema y además te introducirá en el apasionante mundo del scripting.

No necesitas muchos requisitos ni tener experiencia en desarrollo de código. Todo lo que necesitas es un editor de texto para editar algunas líneas de código en el archivo de script y la posibilidad de crear y guardar archivos de texto. Vamos a hacerlo en unos pocos de pasos.

Crear el archivo de script

Abre tu editor de texto favorito y ponle un nombre al archivo como por ejemplo .presentacion-fondos en tu directorio de inicio.

Observa el punto que le he puesto delante al nombre del archivo. Necesitamos que ese archivo esté oculto, por lo que es importante ponerle un punto antes del nombre del archivo porque si lo dejas visible es posible que lo borres por algún descuido.

script-01

A continuación, tienes que copiar y pegar el siguiente script en el archivo recién creado.

script-02

Modificar el script

Tienes que introducir tu propia ruta personalizada en la variable de entorno donde dice: $wallpaper_path. Por ejemplo, si tu directorio con las imágenes está en /home/usuario/Imágenes/Fondos tendrás que modificar esa línea:

export wallpaper_path=/home/usuario/Imágenes/Fondos

El script buscará las imágenes que estén en formato JPG, JPEG, PNG, BMP y SVG pero supongamos que tus imágenes están en el formato TIFF o algo más. Asegúrate de agregar las extensiones que faltan. Por ejemplo, si quiero añadir soporte para TIFF, tengo que añadir la siguiente declaración:

wallpaper_path/*.svg line as in:
wallpaper_path/*.svg $wallpaper_path/*.tiff

script-03

Elige una de las dos opciones siguientes

Debes elegir sólo una de ellas y omitir la otra. De lo contrario, te encontrarás con problemas.

La primera opción es si quieres que tu fondo de pantalla cambie en orden secuencial, es decir, desde la primera imagen hasta la última. Y luego repite el mismo proceso una y otra vez. Por lo tanto, no se queda con la última imagen cuando el bucle se agota. Copia y pega el siguiente código en la última línea de tu script.

Modificar los fondos en orden secuencial

seleccionar los fondos en orden incremental
index=0
while [ $index -lt $wallpapers_size ]
do
gsettings set org.gnome.desktop.background picture-uri ${wallpapers[$index]}
El índice está llegando al máximo, así que reiniciamos
if [ $(($index+1)) -eq $wallpapers_size ]
then
index=0
else
index=$(($index + 1))
fi
Mantener los fondos durante el tiempo especificado
sleep 15m
done»

Cambiar los fondos en orden aleatorio

Si prefieres la aleatorización en lugar del orden secuencial en el que se muestran tus imágenes de pantalla al azar, copia y pega el siguiente código en la última línea de tu script.

Establecer fondos de pantalla aleatorios
loop infinitely
while true
do
Generar índice aleatorio
random_index=$(($RANDOM % $wallpapers_size))
y luego poner un fondo de pantalla aleatorio
gsettings set org.gnome.desktop.background picture-uri ${wallpapers[$random_index]}
Mantener el papel tapiz durante un tiempo especificado
sleep 15m
done»

Tu script está terminado. Ahora sólo queda una cosa por hacer, iniciar ese script cuando inicies sesión.

Para eso, tenemos que agregar un código en el archivo .profile para iniciar ese script. Edita el archivo .profile (está oculto en la carpeta de inicio) y copia estas cuatro líneas de código en la última línea.

Iniciar mi script personalizado para establecer fondos de pantalla aleatorios
if [ -f "$HOME/.change_wallpapers" ] ; then
bash $HOME/.change_wallpapers &
fi»

Una vez que hayas terminado, reinicia o vuelve a iniciar sesión para que el script se pueda ejecutar.

Espero que hayas encontrado este tutorial simple y fácil de seguir. Como ves, no tiene nada de difícil y puedes decir que has aprendido a hacer un programita.

 

Fuente: maslinux

¿Quién está en línea?

Hay 3985 invitados y ningún miembro en línea