Sfondo desktop dinamico per linux


Feh è un programma a riga di comando per la visualizzazione di immagini ma anche per la gestione dello sfondo in ambienti che non hanno questa funzionalità (es. Openbox). Questo programma ha anche la possibilità di usare immagini non presenti in locale grazie alla libreria libcurl come descritto sul sito ufficiale.

Quindi useremo feh per impostare a immagini rotazione per lo sfondo del desktop, in modo che cambi dopo un certo intervallo di tempo. Nell’esempio utilizzerò Openbox come ambiente, nano come editor e Archlinux / Manjaro.

Ricordo che i simboli $ e # si riferiscono rispettivamente a terminali utenti e terminali root.
Per prima cosa installiamo il programma dal gestore di pacchetti:
# pacman -Syy feh
Poi apriamo il nostro editor preferito e creiamo una lista contenente i link (oppure i percorsi locali) delle nostre immagini:

$ mkdir files #creo una cartella separata dove fare gli "esperimenti"
$ cd files
$ nano link_immagini #nuovo file

E scriviamo i nostri link (o i nostri percorsi locali):

http oppure ftp://...qualcosa....jpg
http oppure ftp://...altro....jpg

Salviamo tutto e chiudiamo l’editor:

CTRL+O
CTRL+X

Successivamente creiamo uno script che dovrà essere eseguito all’avvio dell’ambiente grafico:

$ nano change_bg

Scriviamo:

#!/bin/bash
function change_bg #dichiaro una funzione
{
    cat link_immagini | shuf -n1 | xargs feh --bg-scale #*1
    sleep 250 #*2
    change_bg #serve per fare la ricorsione
}
change_bg #serve solo per la prima chiamata

#*1 Mando l’output del file con i link al programma shuf che sceglie casualmente una riga. Questa poi viene passata con xargs a feh.
#*2 Imposto l’intervallo in secondi per il successivo cambio di immagine.

Salviamolo come prima e rendiamolo eseguibile:

CTRL+O
CTRL+X
$ chmod +x change_bg #script reso eseguibile per l'utente che lo invoca

Infine aggiungiamo il percorso del file eseguibile in append all’autostart di Openbox:

$ echo "(sleep 10s && ~/files/change_bg) &" >> ~/.config/openbox/autostart

Gli diamo quindi un intervallo di 10 secondi da quando l’utente si logga (cioè quando si avvia l’autostart) prima che feh cambi sfondo.
Ricordatevi di controllare il file di autostart (o quello che usate per il vostro DM o WM): se avete già un’altro gestore di sfondi (ad es. nitrogen) va ovviamente commentata la riga:

nitrogen --restore &

diventa:

# nitrogen --restore &

Notate che in tutti i file vanno messi i path completi per evitare problemi di esecuzione, in quanto l’ambiente del terminale potrebbe cambiare.

Se avete consigli o modi più eleganti segnalate!
A presto e buon divertimento…

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...