1. Software sviluppato da Matteo Avalle in
collaborazione con Valerio Billera e il
SiciLinux Group
2. A cosa serve:
Buc è un applicativo che permette di
sfruttare la propria conoscenza del
terminale di Linux per realizzare delle
complesse applicazioni grafiche in modo
semplice e veloce, senza dover imparare
nuovi linguaggi di programmazione o simili
2
3. Come funziona: Il programma non è altro che un
interprete in grado di leggere file con
estensione .mc.
Questi file sono dei file xml “quasi”
standard che definiscono come deve
essere formata l’interfaccia grafica e, in
aggiunta, definiscono anche le istruzioni
bash che devono essere eseguite alla
pressione dei pulsanti o al caricamento
dell’applicazione
2
6. Un’interfaccia
più articolata
In ogni file mc è possibile
inserire una lunga serie di
oggetti, quali pulsanti,
caselle di testo, caselle a
scelta multipla, ecc.
I valori inseriti nelle varie
caselle sono poi messi a
disposizione degli script di
ogni pulsante, che quindi
diventano “interattivi”
2
7. Un confronto con i
“normali” script
• Gli script MC “liberano”
l’utente finale dalla necessità
di utilizzare il terminale per
“pilotare” lo script e per
leggerne il risultato
• Anche tramite script bash è
possibile ottenere un certo
livello di “interattività”, ma
tramite BUC questa procedura
è più semplice e veloce
2
8. Possibili utilizzi:
• E’ possibile sfruttare BUC per realizzare l’interfaccia
grafica di applicativi esistenti, disponibili solo per
terminale
• Tecnici ed amministratori di sistema possono “facilitare
la vita” ai propri clienti, magari digiuni di linux,
realizzando applicativi grafici che li liberino dalla
necessità di utilizzare il terminale per le operazioni più
comuni
• Le persone abili nell’utilizzo del terminale possono
utilizzare script mc per realizzarsi un proprio “pannello di
controllo” che automatizzi le operazioni più tediose e
ripetitive
2
11. Esempi:
BUC
• Lo sviluppo dello stesso BUC è automatizzato sfruttando
un piccolo applicativo mc: questo script è in grado di
ricompilare il programma, evidenziandone gli eventuali
errori, per poi preparare tutti i vari pacchetti da
distribuire e caricarli automaticamente sul sito web.
• Tutte queste operazioni, sebbene non particolarmente
complesse, normalmente richiederebbero almeno una
ventina di minuti, passati a modificare diversi file di
configurazione, eseguire istruzioni da terminale ed a
testare il tutto.
• Tramite lo script invece tutta la procedura si riduce ad
un click ed a pochi secondi di attesa.
22
12. Come realizzare uno script
Proviamo ora a realizzare un piccolo script, a titolo
esemplificativo.
Lo script in questione è stato ispirato da un breve
tutorial online che spiega come personalizzare lo
sfondo del proprio desktop sostituendo l’immagine
di sfondo con uno degli screensaver messi a
disposizione da Gnome.
22
13. Come realizzare uno script
Tale guida suggeriva di utilizzare le seguenti
istruzioni, da terminale, per attivare lo
sfondo animato:
Questi altri comandi, invece, consentono di tornare alla normalità:
type bool --set /apps/nautilus/preferences/show_d
eensaver/glmatrix -root
x
--set /apps/nautilus/preferences/show_desktop tru
22
14. Come realizzare uno script
Cerchiamo ora di tradurre i comandi elencati in uno script MC:
Iniziamo partendo dallo “scheletro” di qualunque script:
<?xml
version=“1.0”?>
<config>
</config>
22
15. Come realizzare uno script
Aggiungiamo ora una casellina di testo per scrivere il titolo
dell’applicazione.
Qui incontriamo il primo script, che si occupa semplicemente di
stampare il titolo.
<?xml version=“1.0”?>
<config>
<label> echo “Modifica
impostazioni sfondo” </label>
</config>
22
16. Come realizzare uno script
Aggiungiamo ora i due pulsanti: uno per attivare lo sfondo, e
l’altro per disattivarlo
<?xml version=“1.0”?>
<config>
<label> echo “Modifica
impostazioni sfondo” </label>
<button title=“Abilita sfondo
animato”>
</button>
<button title=“Disabilita sfondo
animato”>
22
17. Come realizzare uno script
L’applicativo così ottenuto avrà quest’aspetto:
Mancano però tutte le funzionalità: i tasti ci sono, ma non
fanno nulla!
22
18. Come realizzare uno script
Completiamo ora l’applicativo, aggiungendo il codice da
eseguire alla pressione dei due pulsanti:
<?xml version=“1.0”?>
<config>
<label> echo “Modifica
impostazioni sfondo” </label>
<button title=“Abilita sfondo
animato”>
gconftool-2 --type bool –set
/apps/nautilus/preferences/show_des
ktop false
/usr/lib/xscreensaver/glmatrix
–root &
</button>
<button title=“Disabilita sfondo
animato”>
22
19. Come realizzare uno script
L’applicativo ora è
funzionante! Non presenta
però ancora nessun vantaggio
rispetto ad utilizzare dei
normali script…
Aggiungiamo quindi qualche
funzionalità che migliori
l’interazione con l’utente
22
20. Come realizzare
uno script
Cerchiamo ora di rendere più
flessibile l’applicativo
permettendo all’utente di
scegliere quale screensaver
utilizzare!
Per ottenere questo risultato è
possibile utilizzare una casella a
scelta multipla.
22