Domenica, 5 Febbraio 2012 

Posts Tagged ‘desktop’

Cambiare randomicamente gli sfondi del desktop GNOME

Giovedì, Settembre 11th, 2008

Il desktop environment Gnome, almeno fino alla versione attualmente in uso nella mia sala macchine, cioè la 2.22.3, non consente, passando dalle finestre di settings del proprio ambiente di lavoro, la possibilità di cambiare ciclicamente, ed in maniera randomica, le immagini di sfondo del proprio desktop.

Questa carenza, del resto non così grave, è comunque aggirabile e risolvibile in una quantità pressochè illimitata di modi, grazie alla flessibilità del sistema GNU/Linux, alla disponibilità di copiosi strumenti di sviluppo, e ai cancelli software che Gnome mette a disposizione per dialogare in tempo reale con il suo environment.

Ecco quindi un modo molto semplice per inserire nel sistema questa funzionalità, e gestirla in modo altamente parametrico attraverso uno script PHP progettato ad hoc per lo scopo.

Lo script è testato e funzionante, con alcune piccole variazioni non importanti, in un sistema Gnome su piattaforma Fedora.

Naturalmente, chi non ha una conoscenza del linguaggio PHP può comunque fare uso del codice che tra poco presenterò, ed anche, con attenzione, intervenire nella sezione di configurazione dei parametri dello script, in modo da customizzare il risultato finale in maniera sempre più vicina alle sue esigenze.

Lo script PHP che gestisce il cambio randomico e ciclico degli sfondi del desktop è il seguente ( da salvare nel proprio sistema con estensione php, togliendo quella txt ):

clicca qui per visualizzare lo script ( verrà aperto in una nuova finestra )

La sezione VARIABILI GENERALI DI FUNZIONAMENTO contiene i parametri di funzionamento dello script.

L’array $aDir contiene la lista delle directory nel sistema locale da cui prelevare gli sfondi, e contiene due chiavi: uri è sostanzialmente il path da cui prelevare le immagini di sfondo, e scan è un importante parametro, perchè consente di prelevare le immagini ricorsivamente in tutte le sottodirectory dell’uri indicato. Se impostato a NORMAL, vengono prelevate solo le immagini nell’uri; se impostato a RECURSIVE, vengono prelevate tutte le immagini contenute nell’uri e nelle sue sottodirectory. Parametro utile, per esempio, per prelevare tutti gli sfondi nella directory del desktop Gnome adibita allo scopo, cioè /usr/share/wallpapers. Impostare in $aDir tutte le directory da cui si intende prelevare gli sfondi, sostituendo, se necessario, gli esempi che trovate, soprattutto quello puramente esemplificativo /my/dir/.

L’array $aExtension contiene le estensioni che devono avere i files per essere considerati immagini di sfondo. Il suo contenuto è parlante, aggiungere, se necessario, altre estensioni.

L’array $aFilter indica quali nomi di file senza estensione devono essere filtrati durante l’identificazione dei file da usare come sfondo. Cioè a dire, ogni elemento è un nome di file che, se incontrato durante lo scanning, sarà saltato senza essere considerato sfondo valido. Usare questo filtro per togliere le immagini che non si desidera inserire nel set di quelle da utilizzare. Le impostazioni indicate qui sono state inserite perchè il desktop Gnome mette a disposizione wallpaper di differenti dimensioni per lo stesso contenuto, che se non venissero in qualche modo filtrate, comparirebbero ovviamente tutte quante, pur avendo il medesimo contenuto, nella lista degli sfondi validi. Ma naturalmente, in certe directory personali si può avere la necessità di non prendere tutte le immagini ivi contenute come sfondo per il proprio desktop, e in quel caso, basta inserire il nome di file, senza estensione in questo array.

La variabile $iTimeKeep indica ogni quanti secondi il desktop Gnome cambierà inserendo una nuova immagine. Anche qui, inserire un valore sensato è una regola di indubbio valore: nell’esempio, il tempo impostato è di 30 minuti ( 1800 secondi ).

Una volta salvato lo script nel proprio sistema, occorre innestare la sua esecuzione nel sistema Gnome, e a tal proposito, seguire i passi indicati:

  • dare i permessi di esecuzione allo script.
  • Accedere in Sistema->Preferenze->Personale->Sessioni
  • Nella lista dei programmi d’avvio presentata, aggiungere una nuova entry così composta:
    • Nome : quello che volete
    • Comando : il nome dello script salvato, completo di path assoluto
    • Descrizione : quella che volete
  • chiudere la finestra, ed il gioco è fatto. Al successivo avvio di Gnome, gli sfondi cominceranno a cambiare in accordo alle vostre impostazioni.

Due parole finali sulla modalità di interazione con il desktop Gnome: il comando che fisicamente cambia il desktop del vostro ambiente di lavoro è:

gconftool-2 -t string -s /desktop/gnome/background/picture_filename [path_del_nuovo_sfondo]

gconftool-2 è sostanzialmente una utility che consente di impostare molti dei parametri di funzionamento del desktop Gnome (font, impostazioni del sound mixer, dimensione e posizione delle taskbar, etc) direttamente via shell; tra tali parametri, compare anche quello relativo all’immagine di sfondo da utilizzare, e attraverso questo comando possiamo gestirla in un modo più “creativo” e divertente.

Chiudi
Invia per E-mail