Archivio > Linux e Open Source, Scripting e Programmazione > Singolo: Go-compiz!

Go-compiz!

[Immagine] Oggi ho deciso di pubblicare il mio primo script Bash. Si occupa di gestire il gestore di finestre in uso su Linux: se Metacity è avviato, lo sostituisce con Compiz; altrimenti, fa il contrario. Non è uno dei tanti modi per fare pubblicità ad un già noto ed apprezzato gestore di finestre come Compiz. In realtà, volevo solo segnalarvi un piccolo script Bash di mia creazione che si dovrebbe occupare dello switch con Metacity in maniera facile e veloce.
Come sempre, usatelo a vostro rischio e pericolo!

# Compiz startup script!

DirLog="$HOME/.compiz"
MessageLog="$DirLog/message.log"
ErrorLog="$DirLog/error.log"
DatePrefix="$(date +'%A %d %B %Y @ %H:%M:%S'):"

if [ -d "$DirLog" ]; then :
else
        mkdir "$DirLog"
fi

if [ -a "$MessageLog" ]; then :
else
        > "$MessageLog"
fi

if [ -a "$ErrorLog" ]; then :
else
        > "$ErrorLog"
fi

exec 1>>"$MessageLog"
exec 2>>"$ErrorLog"

echo "$DatePrefix"

if [ `ps -A | grep metacity | cut -d' ' -f11` ]
then
        compiz --replace gconf --loose-binding &
        gtk-window-decorator --replace &
        echo "  Compiz caricato corettamente."

        gconftool-2 -s /apps/compiz/general/screen0/options/number_of_desktops "2" --type=int && sleep 1 && gconftool-2 -s /apps/compiz/general/screen0/options/number_of_desktops "1" --type=int
        echo "  Fix sui workspaces applicato."

elif [ `ps -A | grep compiz | cut -d' ' -f11` ]
then
        #gnome-session-remove compiz > /dev/null
        killall -g compiz
        echo "  Compiz chiuso correttamente."

        metacity --replace &
        echo "  Metacity ripristinato."
fi

exit 0

Questo script si occupa di avviare Compiz nel caso che Metacity sia già in esecuzione, e viceversa. Inoltre, scrive in due file di log collocati dentro una cartella ~/.compiz messaggi d'errore stderr e d'output normale stdout completi di data ed ora.

Per cominciare ad utilizzare il programma, inserite tutto il codice dentro un file eseguibile, che io ho collocato in /usr/bin:

$ sudo nano /usr/bin/go-compiz

A questo punto, garantite a quest'ultimo i permessi d'esecuzione.

$ sudo chmod +x /usr/bin/go-compiz

Adesso vi basterà lanciarlo da terminale ogni qualvolta abbiate voglia di cambiare windows manager.

Ovviamente non è niente di speciale, avrei potuto ampliarlo con qualche altra caratteristica, ricostruirlo in funzioni, e cose del genere.

Probabilmente alla maggior parte di voi non serivrà, a meno che non abbiate voglia di compilare - come ho fatto io - Compiz dall'ultima revisione SVN, e senza front-end grafici per la configurazione.

Insomma... devo ancora prendere familiarità col linguaggio, ma come la maggior parte delle cose che creo o trovo interessanti, mi piace condividerle. ;)

Approfondimenti

L'articolo è stato di tuo gradimento? Puoi controllare che vi sia altro di tuo interesse nelle categorie e , oppure iscriverti al notiziario RSS e seguirmi su per restare sempre aggiornato sulle ultime pubblicazioni.

Pubblicato venerdì 30 marzo 2007.

Discuti

Il blog è in sola lettura.

Paginatura: