Openbox: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Riga 298: Riga 298:
# <--</pre>
# <--</pre>
Per avere le giuste immagini bisogna copiare il tema:
Per avere le giuste immagini bisogna copiare il tema:
  $ cp /usr/local/share/themes/foom ~/.themes
  $ cp -R /usr/local/share/themes/foom ~/.themes


Ora non ci resta che aggiungere il comando al nostro menù, modificando la voce exit.
Ora non ci resta che aggiungere il comando al nostro menù, modificando la voce exit.

Versione delle 12:01, 20 set 2012

Debian-swirl.png Versioni Compatibili

Tutte le versioni supportate di Debian

Introduzione

Openbox è un gestore di finestre leggerissimo e altamente personalizzabile, adatto ai computer con hardware limitato. Può essere utilizzato al posto di Metacity, il window manager di Gnome, di Kwin, quello di KDE, ma è anche possibile avviare una sessione Openbox.

Installazione

Per installare Openbox e i suoi tool di configurazione occore da terminale eseguire il seguente comando.

# aptitude install openbox obconf obmenu

Adesso è possibile utilizzare Openbox e lo si può avviare direttamente da riga comando, oppure attraverso un Display Manager.

Login

Login Testuale

Se non si dispone di un DM o non lo si vuole usare, occorre lanciare la sessione di Openbox con il comando :

exec openbox-session

É possibile avviare una sessione di Openbox anche da console tramite xinit:

$ xinit /usr/bin/openbox-session

Per utilizzare Consolekit, eseguire invece questo comando:

$ exec ck-launch-session openbox-session

Se si utilizzano anche polkit e D-Bus (Es. per usufruire dell'automount su Nautilus/Gnome) eseguire:

$ exec ck-launch-session dbus-launch openbox-session

Per rendere l'operazione più comoda si può impartire il comando attraverso un alias oppure editando il file .xinitrc aggiungendo il comando sopra riportato.

Se il file .xinitrc non esiste crearlo :

$ echo "exec openbox-session" > ~/.xinitrc 

In questo modo all' avvio del PC dopo essersi accreditati occorrerà eseguire il comando :

$ startx

oppure

$ xinit

Eseguirlo in maniera indipendente può ridurre drasticamente il consumo di cpu e memoria.

Login Grafico

Se avete già un Display Manager, come GDM o KDM, vi basterà scegliere dal menù a tendina, la voce "Openbox" ed effettuare il login.

Configurazione

Lo stupore di molti al primo avvio è comune, l'ambiente si presenta con uno sfondo grigio e nessuna icona o barra presente, con la tipica scorciatoia Alt+F2 non appare alcuna finestra per l'esecuzione dei programmi, l'unica opzione possibile è il pulsante destro del mouse.

La comparsa di un piccolo menù ci aprirà la strada verso l'inizio di questa avventura.

Openbox.jpg

La configurazione di Openbox è basata principalmente (ma non solo) su due file: menu.xml e rc.xml, all'inizio non saranno presenti e verrà utilizzata una configurazione predefinita presente in /etc/xdg/openbox, per poterli modificare occorre eseguire le due applicazioni obconf e obmeu oppure copiarli nella propria /home/user/.config/openbox e modificarli a piacimento.

Obconf

Per modificare rc.xml, uno dei file principali di configurazione, occorre prima crearlo attraverso l'esecuzione di obconf, comando facilmente disponibile nel menù aperto precedentemente.

Tramite questo file si gestisce il cuore del Window Manager, l'aspetto e la gestione delle finestre, il comportamento del mouse e i temi.

Attraverso la prima scheda, Tema, possiamo scegliere uno dei tanti temi già disponibili o aggiungerne di nuovi.

Openbox1.jpg

La seconda scheda, Aspetto, ci permette di configurare l'ordine dei bottoni e i caratteri utilizzati per la barra del titolo.

Openbox2.jpg

La terza scheda, Finestre, si occupa del posizionamento delle finestre e il loro comportamento all'apertura.

Openbox3.jpg

La quarta scheda, Move & Resize, è dedicata allo spostamento e ridimensionamento delle finestre e la loro interazione con il desktop.

Openbox4.jpg

La quinta scheda, Mouse, definisce le azioni del mouse sulle finestre e la personalizzazione del doppio click sulla barra del titolo.

Openbox5.jpg

La sesta scheda, Desktop, consente di definire il numero e il nome delle aree di lavoro disponibili.

Openbox6.jpg

La settima scheda, Margini, regola lo spessore dei bordi del desktop, ovvero la distanza tra il margine dello schermo e una finestra.

Openbox7.jpg

L'ottava e ultima scheda, Dock, non l'ho usata perché non ho ancora provato a inserire dockapps; gestisce la posizione e il comportamento dell'area dedicata a ospitare queste piccole applicazioni.

Openbox8.jpg

Dopo aver apportato anche una sola modifica a queste opzioni ci troveremo il file rc.xml.

Purtroppo Obconf non è fornito di un'utile scheda per configurare le scorciatoie da tastiera, per cui dovremo addentrarci in questo file che a prima vista potrà sembrare complesso, ma basterà scorrerlo per vedere come queste sono impostate.

Le abbreviazioni per molti tasti funzione sono:

C = Ctrl
S = Shift
A = Alt
W = Super (tasto con logo di sistema operativo estraneo)

Ad esempio C-A-Left (Ctrl+Alt+freccia sinistra) ci farà muovere tra le aree di lavoro.

Se abbiamo una finestra aperta, S-A-Left ci farà muovere la finestra che ha il focus attraverso le altre aree di lavoro disponibili.

Con un po' di pazienza ci si può sbizzarrire personalizzando al massimo le combinazioni di tasti,

Obmenu

Questa applicazione offre una comoda GUI per gestire il menù che compare alla pressione del pulsante destro del mouse sul desktop.

L'unico modo per avviarla la prima volta è eseguire il comando da un terminale, dopo sarà possibile inserire la voce direttamente nel menù:

$ obmenu

Dopo l'esecuzione avremo il file /home/user/.config/openbox/menu.xml che, volendo, potremo modificare anche tramite il nostro editor di testi preferito.

Openbox9.jpg


Info.png incompleto
Parte da terminare


Il file autostart.sh

Creiamo il file autostart.sh che definisce le applicazioni da lanciare all'avvio di Openbox

$ touch ~/.config/openbox/autostart.sh

Rendiamolo avviabile:

$ chmod 700 ~/.config/openbox/autostart.sh

Adesso inseriamo il seguente codice:

# Run the system-wide support stuff
. $GLOBALAUTOSTART

# Programmi da eseguire all'avvio
feh [OPZIONE] [FILE]
xcompmgr [OPZIONI] &

# Programmi da eseguire dopo che Openbox si avvia
(sleep [sec] && tint2) & 
Info.png Il comando "sleep"
(sleep [N] && comando)
esegue "comando" dopo N secondi.


Info.png Gestore di connessioni
Se avete un gestore di connessioni internet, aggiungete nella sezione "Programmi da eseguire all'avvio":
  • nm-applet &
    in caso di Newtork manager
  • wicd-daemon &
    se avete Wicd.


Warning.png ATTENZIONE
Se dovete aggiungere qualche altro programma, ricordatevi di appendere "&" al comando, che avvierà l'applicazione in background, altrimenti Openbox sarà inutilizzabile finché non terminerà quel determinato processo.


Tips & Trick

Pulsante centrale

Ci sono alcune funzioni che occorre ricordare sull'uso del mouse in Openbox, oltre all'indispensabile pulsante destro sul desktop abbiamo quello centrale che ci fa muovere tra le varie aree di lavoro disponibili e ci permette di selezionare un'applicazione aperta ovunque si trovi.

Openbox10.jpg

Bloc-num

Usando un portatile avere attivo questo programma importa poco, ma per un PC desktop è una cosa da avere. Sono molti gli utilizzatori de tastierino numerico posto alla destra della nostra tastiera, pertanto si ritiene utile l'installazione di numlockx.

# aptitude install numlockx

Xorg richiama /etc/X11/Xsession.d/55numlockx e in /etc/default/numlockx è su auto di default, in questo modo la funzione sarà da subito disponibile.

alt+tab switch all desktop

Questa combinazione di tasti è di uso comune ma di default in Openbox non risponde come si vorrebbe, infatti lo switch ruota nelle sole applicazioni del desktop in cui ci si trova.

Per chi volesse la rotazione tra tutte le applicazioni aperte in tutti i desktop le soluzioni comporta una modifica al file rc.xml.

Intorno alla riga 273 troverete ', qui inseriremo <allDesktops>yes</allDesktops> come in esempio:

<keybind key="A-Tab">
<action name="NextWindow">
<allDesktops>yes</allDesktops>
<finalactions>
<action name="Focus"/>
<action name="Raise"/>
<action name="Unshade"/>
</finalactions>
</action>

se si vogliono le sole icone senza il testo aggiungere anche

<dialog>icons</dialog>

sotto quanto prima inserito.

Gestione dei temi

Per poter utilizzare temi diversi può essere d'aiuto installare un'applicazione in grado di gestire i temi gtk2

#aptitude instal gtk-chtheme

Per eseguire l'applicazione cercare nel menu oppure da terminale digitare

$ gtk-chtheme

ci apparirà così :

Ob30.jpeg

Noterete subito la differenza in applicazioni come Pcmanfm

Ob31.jpeg

Per avere un tema in stile KDE come quello da immagine occorre avere gtk2-engines-oxygen e oxygen-icon-theme installati

Shutdown & logout

La voce «exit» predefinita nel menù di Openbox porta al logout, pertanto se si vuole effettuare lo spegnimento della macchina occorre apportare alcune modifiche al sistema.

Dopo varie ricerche ho trovato tre soluzioni che ora riporterò, nelle quali si fa un uso differente dei comandi.

Per lo spegnimento è possibile usare halt oppure shutdown -h now, mentre per il riavvio reboot o shutdown -r now.

Per prima cosa serve aver installato sudo

# aptitude install sudo

e configurarlo con il comando

# visudo

si rende necessario attribuire all'utente i permessi adeguati ai comandi shutdown oppure halt e reboot, e, a seconda delle necessità anche pm-suspend e pm-hibernate.

Aggiungendo:

ALL   ALL=NOPASSWD:/sbin/shutdown

permetteremo a chiunque di eseguire lo spegnimento oppure si possono impostare i permessi al solo utente, fate le giuste considerazioni sulla sicurezza ecco un esempio:

Defaults    secure_path="/sbin:/bin:/usr/sbin:/usr/bin"
utente ALL=(root) NOPASSWD: /sbin/shutdown
utente ALL=(root) NOPASSWD: /sbin/halt
utente ALL=(root) NOPASSWD: /sbin/reboot
ecc..

Altertux

Oltre alla parte che interessa l'uscita dal sistema potrete trovare al seguente link un'ottima guida su Openbox.

In questo caso si effettua una semplice modifica al file menu.xml aggiungendo a piacimento le funzioni desiderate.

      <item label="Riavvia il sistema">
           <action name="Execute">
               <execute>
                   sudo reboot
               </execute>
           </action>
       </item>
       <item label="Spegni">
           <action name="Execute">
               <execute>
                   sudo halt
               </execute>
           </action>
       </item>

Urukrama

Autore di diversi articoli su Openbox e di un'ottima guida propone una semplice GUI link

Se si vuole un'uscita rapida e semplice con GDM, si può spegnere il pc con l'aiuto di gdm-control, con il seguente comando:

gdm-control --shutdown && openbox --exit

Per riavviare usare il comando:

gdm-control --reboot && openbox --exit

Per sospendere usare la seguente linea:

gdm-control --suspend

Se si vuole utilizzare un'interfaccia grafica minimale bisogna aver installato gxmessage ( articolo originale):

# aptitude install gxmessage

A questo punto creiamo uno script con un contenuto simile:

#!/bin/bash

### attenzione la riga è stata spezzata con il simbolo \ che va rimosso dopo averla unita ### 

gmessage "Sei sicuro di voler spegnere il computer?" -center -title "Take action" -font "Sans bold 10" -default "Cancel" \
         -buttons "_Cancel":1,"_Log out":2,"_Reboot":3,"_Shut down":4 >/dev/null 

case $? in
	1)    echo "Exit" ;;
	2)    killall openbox ;;
	3)    sudo shutdown -r now ;;
	4)    sudo shutdown -h now ;;
esac

salviamolo dove preferiamo con un nome a piacere (es. /home/user/.config/openbox/oblogout.sh).

Se eseguito apparirà così :

Openbox19.jpg

Per eseguirlo abbiamo diverse opzioni , si può abbinare ad una scorciatoia da tastiera o richiamare da obmenu.

Se si volesse utilizzare la combinazione di tasti Super+q basterà inserire in rc.xml :

    <!-- Keybindings for running applications --> 
    <keybind key="W-q"> 
      <action name="Execute"> 
        <startupnotify> 
          <enabled>true</enabled> 
          <name>OBlogout</name> 
        </startupnotify> 
        <command>/home/barabba/.config/openbox/oblogout</command> 
      </action> 
    </keybind> 

Oppure in obmenu modificare la voce Exit impostando execute e inserendo il comando :

~/.config/openbox/oblogout.sh
Obmenu.JPG

CrunchBang style

La seguente procedura è tratta da questo articolo.

Per prima cosa dobbiamo scaricare il file:

https://github.com/Cloudef/oblogout-fork/zipball/master

dopo averlo estratto va eseguito con python:

# python ./setup.py install

Se avete errori verificate la presenza di questi pacchetti: python-dbus python-imagingpython-distutils-extra

il file principale di configurazione si trova in /etc/oblogout.conf:

# # Ignored if you have a backend -->
shutdown    = sudo shutdown -h now
restart     = sudo reboot
suspend     = sudo pm-suspend
hibernate   = sudo pm-hibernate
safesuspend = safesuspend
# <--

Per avere le giuste immagini bisogna copiare il tema:

$ cp -R /usr/local/share/themes/foom ~/.themes

Ora non ci resta che aggiungere il comando al nostro menù, modificando la voce exit.

Openbox20.jpg

E questo dovrebbe essere Il risultato:

Openbox20.png

Personalizzazione

L'installazione di Openbox è minimale e parca di dipendenze, pertanto per poter avere un'eperienza dekstop un pò più accattivante si rende necessaria l'installazione di alcune applicazioni opzionali.

Di seguito ne verranno elencate alcune.

Sfondo (wallpaper)

Per impostare uno sfondo per il desktop ho trovato tra le tante applicazioni disponibili due programmi: feh e nitrogen.

Feh

Per installarlo occorre eseguire da terminale:

# aptitude install feh

feh non è solamente utile per impostare lo sfondo ma è anche un ottimo e leggero visualizzatore di immagini, se successivamente verrà usato un file manager lo troveremo come opzione nell'apertura di file immagine.

Per configurare lo sfondo, bisogna eseguire da terminale il seguente comando:

$ feh [opzione] /posizione/file/immagine

le opzioni disponibili sono:

--bg-center (centra l'immagine)
--bg-fill (centra l'immagine e la ingrandisce)
--bg-scale (scala l'immagine)
--bg-tile (piastrella l'immagine)

Per caricare uno sfondo predefinito all'avvio di Openbox bisogna inserire il comando con le giuste opzioni all'interno di autostart.sh come da sintassi:

$ feh [OPZIONE] [FILE]

Nitrogen

Con questa applicazione abbiamo una comoda interfaccia grafica per poter impostare lo sfondo, ma prima di cominciare installiamola:

# aptitude install nitrogen

Dato che nitrogen non è presente nel menù, lanciamo il programma da terminale:

$ nitrogen

Dalle preferenze scegliamo da quali directory attingere i file immagine e quindi scegliamo con quali opzioni impostare lo sfondo.

Openbox11.jpg

Per caricare lo sfondo all'avvio inserire nel file autostart.sh.

nitrogen --restore &

Pannello o Barra

Openbox non fornisce un pannello per visualizzare le icone delle fineste aperte, lanciatori e system tray; è comunque disponibile un buon assortimento tra i quali tint2, hpanel, fspanel, fbpanel e molti altri.

Tra questi ho preferito lxpanel perché mi consente l'uso della rotella del mouse su alcune applicazioni visualizzate all'interno della barra come ad esempio il volume in radiotray oppure in amarok.

Prendiamo come esempio lxpanel e lo andiamo a installare:

# aptitude install lxpanel
Openbox12.jpg

Il primo pulsante a sinistra ci porta un utile menù con diverse applicazioni.

Openbox17.jpg

Usando il pulsante destro del mouse sulla parte a sinistra è possibile eseguire alcune personalizzazioni, come l'aggiunta di applicazioni preferite.

Openbox13.jpg

Usando il pulsante destro del mouse nelle diverse zone del pannello sarà possibile effettuare altre modifiche.

Openbox14.jpg

Per avere il pannello disponibile all'avvio si deve inserire il comando nel file autostart.sh.

(sleep 3 && lxpanel) &

in questo caso eseguita con 3 secondi di ritardo.

Terminale

Tra i tanti disponibili ho scelto lxterminal, l'installazione richiede anche poche dipendenze:

# aptitude install lxterminal
Openbox15.jpg

Per poter eseguire lxterminal dal menù di Openbox ho modificato obmenu inserendo

lxterminal --geometry=139x50

alla voce terminal emulator.

Per avere le giuste dimensioni occorre prima ridimensionare la finestra di lxterminal e segnarsi dato che compare a monitor, le dimensioni preferite.

Oppure usando questo comando:

$ xwininfo | grep geometry 

e quindi cliccare sulla finestra

Alcuni tasti scorciatoia assolutamente indispensabili per l'uso di lxterminal:

Crtl+Shift+t = apre una nuova scheda
Ctrl+pgup/pgdown per muoversi tra le schede aperte

Per poter usare al meglio MC ho disabilitato l'uso di F10 a lxterminal, flag opzionale nelle impostazioni.

Sempre nelle impostazioni è possibile selezionare la trasparenza.

Composite Manager

Possiamo arricchire il nostro desktop con qualche effetto anche su macchine con scarsa dotazione hardware video.

Un leggero ma valido gestore di compositing è xcompmgr, che può impostare trasparenza e altri effetti sulle finestre.

# aptitude install xcompmgr

Le opzioni disponibili sono consultabili nel manuale:

$ man xcompmgr

Per poterlo avere all'avvio va inserito come al solito all'interno del file autostart.sh un comando come in esempio:

xcompmgr -r 15 -o .63 -l -20 -t -20 -I 0.015 -O 0.02 -D 5 &

Gestore di File

Anche qui le scelte sono molte, e oltre all'immancabile MC (articolo e-zine guida a MC che ritengo indispensabile ma un po' difficoltoso nell'uso comune ho preferito per qualcosa di nuovo come PCManFM, anche se su molte macchine avevo già presente l'ottimo Dolphin ho voluto dare una chance a qualcosa di minimale che richiede poco spazio su disco.

  1. aptitude install pcmanfm
Openbox16.jpg

Se all'avvio non sono presenti le icone occorre installare alcuni pacchetti opzionali come lxde-icon-theme e tangerine-icon-theme.

Una scorciatoia utile è la combinazione di tasti Ctrl+h che permette di visualizzare file e cartelle nascosti, il resto delle opzioni sono disponibili nel menù sulla barra superiore della finestra.

Notifiche

Per avere le notifiche sul desktop è necessario installare libnotify4.

Questo pacchetto contiene la libreria condivisa. Per vedere realmente le notifiche è necessario installare il pacchetto notification-daemon oppure notify-osd, plasma-widgets-workspace, xfce4-notifyd o dunst.

# aptitude install libnotify4

A seconda della configurazione appariranno sul desktop le notifiche.

Editor di testo avanzato (IDE)

Su una macchina dove era installato solo Openbox mi sono trovato a dover utilizzare un editor di testo per i file di configurazione, sono abituato ad avere anche KDE4 e così solitamente la scelta ricadeva sull'ottimo kate, ma su una macchina «naked» questo comporta l'installazione di molte dipendenze quasi al pari di un KDE4 di base.

Per chi vuole un buon editor grafico impegnando il minor spazio su hard disk consiglio Geany, medit o altrimenti mcedit che fa parte di MC.

Gestione file compressi

A volte, dato che non ricordo bene tutti i comandi da shell per scompattare un file, mi torna utile una comoda interfaccia per gestire i file compressi.

Per chi ha già installato KDE è possibile utilizzare ark , altrimenti è possibile usare file-roller o xarchiver.

Per gli amanti del terminale il sempre valido MC ha già quello che serve, nel menù in basso alla pressione di F2.

Screenshot

Fare un'istantanea del desktop è un'operazione piuttosto comune per un utente, l'applicazione di default che risponde alla pressione del tasto Stamp è configurata all'interno del file rc.xml (circa riga 335) ed è gnome-screenshot.

Per chi non l'ha o vuole altro la scelta ricade sull'ottimo scrot, il cui uso è molto semplice.

# aptitude install scrot

modificando la voce di default e inserendo:

scrot -d 5

si farà uno screenshot con un ritardo di 5 secondi e l'immagine verrà salvata nella nostra Home.

Il comando per scattare foto alla sola finestra che ha il focus:

$ scrot -d 3 -u -b

per ulteriori informazioni consultare il manuale

$ man scrot

Configurazione della rete

Ho sempre odiato i network manager, perché spesso dipendono dall'ambiente usato o anche perché spesso soffrono di bug che ne compromettono il buon funzionamento.

Su tutte le Debian installate su PC fissi ho sempre preferito la configurazione manuale attraverso il file /etc/network/interfaces, in questo modo una macchina sempre connessa allo stesso tipo di rete non soffrirà di alcun problema.

Per gestire reti diverse sul portatile mi affido da parecchi anni a switchconf, in questo modo posso gestire la rete in modo indipendente dal DE o dal WM presente, posso lavorare anche senza X perché basta una shell.

Grazie anche all'aiuto degli alias e sudo posso abilitare il wifi con i tasti funzione fn+F2 e lanciare il comando che ho come alias Bash che richiama la configurazione alla rete a cui voglio connettermi.

Guida a switchconf.

Conky

Per terminare, un piccolo abbellimento al desktop; siccome non posso usare il mio superkaramba ho dirottato le mie preferenze su conky.

A prima vista appare un po' complicato ma dopo aver appreso come funziona, la sintassi dei comandi non è poi così difficile.

Come per superkaramba sono andato in rete ( gnomelook ) alla ricerca di qualcosa che mi piacesse e ho trovato 150600-conky7-2cores che ho poi adattato alle mie esigenze.

Dalla versione scaricata ho inserito qualche informazione in più sulla CPU (temperatura e frequenze), mentre per gli hard disk ho inserito oltre alla temperatura la partizione dati che uso.

Qui per ottenere alcuni output è indispensabile avere hddtemp e lm-sensors.

Non poteva poi mancare una visualizzazione dello stato della batteria con livello di carica e percentuale dello stato, sia numerico che su barra.

Openbox18.jpg

Per chi volesse provare questa configurazione modificata questo è il link mm-conky-notebook.

Riferimenti

  • I manuali dei vari applicativi



Guida scritta da: Ernestus 15:20, 3 mar 2011 (CET) Swirl-auth40.png Debianized 40%
Estesa da:
Mm-barabba
Verificata da:
Mm-barabba

Verificare ed estendere la guida | Cos'è una guida Debianized