Come creare un avviatore .desktop

Icona per avviare programmi sullo schermo

I files con estensione .desktop sono situati nelle cartelle /usr/share/applications e nella cartella /home/utente/.local/share/applications solo in alcuni casi anche nella cartella Desktop.
Quelli nella cartella /usr/share/applications sono visibili da tutti gli utenti del sistema, mentre quelli nella cartella /home/utente/.local/share/applications sono visibili solo dall’utente proprietario della cartella.
Tutti questi files andranno a comporre i vari menù di Gnome, Kde, Xfce e molti altri ambienti grafici.
Se proviamo, per esempio ad ediatare il file /usr/share/applications/chromium.desktop otteniamo questo risultato

[Desktop Entry]
Version=1.0
Name=Chromium
GenericName=Web Browser
GenericName[it]=Browser Web

Comment=Access the Internet
Comment[it]=Accesso a Internet

Exec=chromium %U –disk-cache-dir=”/dev/shm/chromium”
Terminal=false
Icon=chromium
Type=Application
Categories=GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;

da notare la mia personalizzazione ossia l’aggiunta dell’opzione –disk-cache-dir=”/dev/shm/chromium” nella riga Exec che serve per velocizzare Chromium (Appunti).

La riga Categories=GTK;Network;WebBrowser; vi indicherà in quale categoria l’applicazione sarà visibile secondo quanto viene dettato dallo standard Freedesktop.org in questo caso nella categoria Internet cioè la traduzione italiana di Network.
Questi files possono essere creati con un semplice programma tipo nano, vi, emacs, scite, kedit, gedit, kwrite, libreoffice… oppure possiamo, da terminale, lanciare il comando

exo-desktop-item-edit --create-new ~/.local/share/applications

che vi creerà un file nella vostra cartella /home/utente/.local/share/applications abbreviata in ~/.local/share/applications
Per utilizzare questo comando bisogna aver installato il pacchetto exo.
Per chi è veramante pigro si può creare un file .desktop di questo tipo

[Desktop Entry]
Version=1.0
Type=Application
Name=Create Launcher
Name[it]=Crea un avviatore
Comment=Add a new launcher
Comment[it]=Aggiunge un nuovo avviatore
Exec=exo-desktop-item-edit –create-new ~/.local/share/applications
Icon=application-x-executable
Categories=Utility;Application;
Terminal=false
NoDisplay=true
StartupNotify=false
MimeType=application/x-desktop;

e salvarlo nella cartella ~/.local/share/applications, ma dove verrà visualizzato?
Va ricordato che gli ambienti tipo Openbox, Jwm… utilizzano un altro tipo di gestione dei menù.

Wayland la nuova era del server grafico

Wayland il moderno server grafico

Wayland è il moderno server grafico, rispetto all’oramai obsoleto X11, creato da Kristian Høgsberg.

La differenza con il vecchio sistema X11 stà, oltre che nelle prestazioni, anche in un maggiore numero di estenzioni del protocolo X11 e una maggiore pulizia ed ordinamento delle API rispetto a quelle di X.org.

Con l’ uscita della versione stabile la 1.0 ci sarà, entro alcuni mesi, la possibilità di vederlo come server grafico predefinito nella maggiori distribuzioni GNU/Linux, prima tra tutte Fedora.

Gli sviluppatori di Gnome stanno lavorando per integrare Wayland con le Gtk+3 mentre con la prossima uscita delle librerie Qt5 prevista per questo dicembre tutte le applicazioni Kde saranno nativamente compatibili con Wayland.

A differenza, del server X che faceva da filtro tra le applicazioni e il motore grafico (compositor), Wayland interagisce direttamente col kernel e tutte le librerie contenute (KMS, evdev, mesa, fontconfig, FreeType, Cairo, Qt, ecc.) diventando di fatto il motore grafico eliminando così un passaggio.

Per avere un idea chiara del funzionamento di Wayland visitare:

http://wayland.freedesktop.org/architecture.html

Aggiungere la Swap a mano

Sul mio vecchio portatile, per motivi di spazio, non ho creato la partizione di swap pensando che i 512mb di RAM bastassero.
All’ atto pratico avviando alcuni programmi (che non scrivo per non creare guerre filosofiche) la memoria si satura ed il sistema si riavvia.

Aggiungere un bancale di memoria non è possibile, riformattare il disco non mi sembra proprio il caso, cosa fare?

Come già descritto la partizione swap non è altro che un file e per questo motivo è possibile creare un file che serva proprio per eseguire le stesse operazioni della partizione swap, per esempio per aggiungere 512mb, al sistema, basterà aprire un terminale da amministratore e dare il comando:

dd if=/dev/zero of=/var/tmp/swapfile bs=1024 count=524288

dove il comando dd if=/dev/zero of=/var/tmp/swapfile, per semplificare, crea un file vuoto nella cartella /var/tmp l’ opzione bs=1024 permette di leggere e scrivere 1024bytes al tempo stesso e l’opzione count=524288 dà la dimenzione al file swapfile di 512mb.

Adesso si dovrà impostare la swap e farla puntare sul file /var/tmp/swapfile sempre da terminale d’ amministratore digitare il comando:

mkswap /var/tmp/swapfile

per motivi di sicurezza bisognerà impostare i permessi sul file creato con i comandi:

chown root:root /var/tmp/swapfile
chmod 0600 /var/tmp/swapfile

solamente l’ utente root può leggere e scrivere il file.

Adesso attiviamo la partizione swap col comando:

swapon /var/tmp/swapfile

per rendere effettiva questa modifica bisognerà inserire nel file /etc/fstab la seguente stringa

/var/tmp/swapfile swap swap defaults 0 0

per vedere se tutto è andato a buon fine digitare:

swapon -s

Alla scoperta di JWM

Dopo aver letto che Debian cambierà il suo ambiente grafico passando da Gnome ad Xfce per motivi di spazio, mi sono messo alla ricerca di un ambiente grafico minimale.

Navigando nel Wiki Archlinux mi sono imbattuto in JWM

JWM (Joe’s Window Manager) è scritto in C usa all’incirca 5 MB di memoria in condizioni operative normali.
La dimensione della versione presente nei repository ufficiali di Arch Linux è inferiore ai 76 KB (confronto con Dwm che è sotto i 17 KB) e sotto i 171 KB una volta installato (confronto con Dwm che occupa 68 KB).
Una versione minimale compilata consuma approssimativamente 136 KB di spazio su disco e occupa al di sotto di 1500 KB di memoria ram.
Sebbene lo sviluppo di JWM abbia rallentato un po’, Joe Wingbermuehle continua a lavorarci….

Jwm ha una barra che può essere posizionata sia orizzontalmente che verticalmente, i menu interamente configurabili, l’orologio, i desktop vituali, una taskbar… il tutto configurabile tramite un semplice file XML

L’installazione è semplice, per gli arcieri dal terminale d’amministratore basta eseguire questo comando:

pacman -S jwm

per Debian e derivate invece:

apt-get install jwm

per chi volesse può anche conpilarsi il pacchetto manualmente.

Per poterlo avviare come ambiente grafico predefinito bisognerà inserire il comando nel file .xinitrc quindi utente normale basterà aprire un terminale ed eseguire:

nano ~/.xinitrc

vi mostro una parte del mio file in rosso le parole da modificare

DEFAULT_SESSION=jwm
case $1 in
openbox)
## se si usa Slim ck-launch-session non va messo
exec dbus-launch openbox-session
;;
*)
## se si usa Slim ck-launch-session non va messo
exec dbus-launch $DEFAULT_SESSION
;;
esac

a questo punto bisognerà andare a modificare anche il file di configurazione di Slim oppure del vostro gestore di accessi: Grub, LightDM… per semplicità vi descrivo come modificare slim.conf

da terminale di amministratore:

nano /etc/slim.conf

trovate la riga

sessions openbox,razor-qt,dwm,xfce4

ed aggiungete jwm

sessions jwm,openbox,razor-qt,dwm,xfce4

salvate il file con premendo i tasti CTRL + O confermate con INVIO ed uscite CTRL + X.

Adesso non vi rimane che copiarvi il file di configurazione di Jwm aprite un terminale da utente normale e date il comando:

cp -i /etc/system.jwmrc ~/.jwmrc

per le modifche potete leggervi la guida http://joewing.net/programs/jwm/config.shtml che purtroppo è solo in inglese oppure la guida da https://wiki.archlinux.org/index.php/JWM_%28Italiano.

Archlinux e pyvolwheel

Ultimamente per chi utilizza Archlinux le cose sono un pò cambiate.
Il file rc.conf è stato decentralizzato, adesso i moduli è preferibile caricarli dalla cartella /etc/modules-load.d/.
La cartella logicamente risulterà vuota starà a noi inserire i files corrispondenti hai moduli da caricare all’avvio.
In precendenza avevo scritto un articolo pyvolwheel Error: file o directory non esistente: ‘/dev/mixer’ per correggere l’errore e per far funziona pyvolwheel bastava inserire il modulo snd-mixer-oss nella sezione MODULES() nel file rc.conf, ma come detto in precendenza, adesso la soluzione migliore è crearsi un file snd-mixer-oss.conf nella cartella /etc/modules-load.d/ per caricarlo.
La procedura è semplice basta aprire un terminale da ammonistratore e dare il seguente comando

nano /etc/modules-load.d/snd-mixer-oss.conf

inserire questa 2 righe:

# carica il modulo snd-mixer-oss.ko all’avvio del sistema
snd-mixer-oss

salvare il file premendo contemporaneamente i tasti CRTL e O premere il tasto INVIO per confermare ed uscire premendo i tasti CTRL e X
a questo punto potete togliere snd-mixer-oss da MODULES() in rc.conf e consiglio di dare una letta al manuale di rc.conf

man rc.conf