Lanciare Qemu da KDE
posted in kde, qemu, service menu |Ogni giorno ci sono nuove release di molte distribuzioni GNU/Linux. Molte di queste distribuzioni sono live e uno dei metodi più “indolore” per provarle è attraverso un emulatore.
Qemu è uno dei tanti emulatori disponibili per GNU/Linux, già pronto per essere installato in molte distribuzioni fra le quali (K)Ubuntu:
sudo apt-get install qemu
Con Qemu è particolarmente facile avviare una distro live da riga di comando:
qemu -boot d -cdrom distribuzione-live.iso
L’opzione -boot d dice a Qemu di avviarsi facendo il boot dall’unità CD virtuale. Con -cdrom distribuzione-live.iso viene usata l’immagine ISO come CD-ROM. La riga di comando permette di semplificare al massimo l’avvio con KDE di una distribuzione live di cui si dispone dell’immagine ISO sul filesystem. Infatti è facile aggiungere menu contestuali (i cosiddetti service menu) a Konqueror, browser e file manager di KDE, creando un piccolo file di testo con estensione .desktop nella directory ~/.kde/share/apps/konqueror/servicemenus/.
Salviamo le righe seguenti nel file qemu.desktop:
[Desktop Entry] Encoding=UTF-8 ServiceTypes=application/x-iso Actions=QemuBoot [Desktop Action QemuBoot] Name=Boot with Qemu Exec=qemu -boot d -cdrom %f Icon=kwin
La sezione [Desktop Entry] specifica una nuova voce contestuale per le immagini ISO, che sarà disponibile quando navigando in Konqueror si clicca su uno di questi file con il tasto destro. L’azione collegata alla voce è QemuBoot, definita nella sezione successiva [Desktop Action QemuBoot], nella quale si assegna a Name il titolo con cui comparirà la voce nel menu contestuale.
Exec contiene il codice che verrà eseguito. Da notare il segnaposto %f che rappresenta il nome del file sul quale si è cliccato. Exec può essere una breve riga di comando, ma anche uno script in un linguaggio a scelta (Bash, Ruby, Perl, Python…) che esegue operazioni più o meno complesse sull’elemento selezionato. Per esempio konqil.icio.us è un service menu che permette, grazie ad uno script in Perl, di salvare su del.icio.us un bookmark alla pagina web correntemente aperta. Questo rende l’idea sulle potenzialità dei service menu di KDE. Infine prendiamo in prestito l’icona di KWin per rappresentare QemuBoot.
Adesso ci basterà cliccare con il tasto destro su un’immagine ISO, selezionare “Boot with Qemu” e verrà avviata una virtual machine con la distro in un batter d’occhio!

Un service menu nella directory ~/.kde/share/apps/konqueror/servicemenus/ sarà ovviamente disponibile solo per l’utente proprietario. I service menu globali risiedono in /usr/share/apps/konqueror/servicemenus, dove si trovano i menu contestuali di default che costituiscono una buona galleria di esempi.
