Fluxbox, un Window Manager per Computer con poche risorse: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
 
(23 versioni intermedie di 8 utenti non mostrate)
Riga 1: Riga 1:
{{Versioni compatibili|Wheezy|Jessie}}
==Introduzione==
==Introduzione==
Questa guida mostra come installare il Windows Manager Fluxbox su un PC in cui sia stata fatta un'installazione base di Debian, senza server grafico X. Fluxbox è un Window Manager leggero, che consuma poche risorse di sistema e che può dare nuova vita a macchine obsolete
Questa guida mostra come installare il Window Manager Fluxbox su un PC in cui sia stata fatta un'installazione base di Debian, senza server grafico X. Fluxbox è un Window Manager leggero, che consuma poche risorse di sistema e che può dare nuova vita a macchine obsolete
 
==Installazione==
==Installazione==
Come al solito in Debian l'installazione consta di pochi comandi:
Come al solito in Debian l'installazione consta di pochi comandi:
<pre>
<pre>
# aptitude install xserver-xorg
# apt-get install xorg fluxbox
# aptitude install fluxbox
</pre>
==Configurazione==
Ora che abbiamo installato Fluxbox, dobbiamo copiare il menu esempio di default e farlo diventare il nostro primo menu di sistema:
<pre>
# cp /etc/X11/fluxbox/system.fluxbox-menu /etc/X11/fluxbox/fluxbox-menu
</pre>e quindi copiarlo nella nostra Home, per poterlo poi modificare a piacere:
<pre>
$ cp /etc/X11/fluxbox/fluxbox.menu-user $HOME/.fluxbox/menu
</pre>
</pre>
==Programmi utili==
==Programmi utili==
Sebbene Fluxbox e il nostro server grafico X siano già funzionanti, abbiamo bisogno ancora di alcuni programmi, prima di poter utilizzare con profitto il nostro nuovo Window Manager:
Sebbene Fluxbox e il nostro server grafico X siano già funzionanti, abbiamo bisogno ancora di alcuni programmi, prima di poter utilizzare con profitto il nostro nuovo Window Manager:
<pre># apt-get install xterm feh</pre>
Per apprendere come aggiungere programmi al menù di Fluxbox vedere la sezione apposita più avanti.
==Avvio di Fluxbox==
Notare che in questa installazione di Fluxbox non è stato installato alcun Login Manager; pertanto sarà necessario effettuare il login in maniera testuale da [[shell]] e poi avviare Fluxbox.<br/>
Prima di poterlo fare, però, è necessario creare il file di avvio per <code>startx</code>:
<pre>$ echo "exec startfluxbox" > "$HOME"/.xinitrc</pre>
Oppure, se si è installato ConsoleKit (basta installare il pacchetto '''consolekit'''):
<pre>$ echo "exec ck-launch-session startfluxbox" > "$HOME"/.xinitrc</pre>
La sessione grafica è in questo modo registrata assieme a quella sul terminale virtuale.
In entrambi i casi tramite '''dbus''', che è avviato automaticamente, è possibile avvalersi delle funzionalità di altri demoni di sistema, se si decide di installarli.
Dopo di che è sufficiente eseguire, dopo aver effettuato il login da un terminale virtuale (<code>tty1</code>, <code>tty2</code>, ...):
<pre>$ startx</pre>
Se preferite, è possibile installare un Login Manager come <code>xdm, gdm, kdm</code>.
L'avvio di Fluxbox dal gestore di login avviene andando a leggere il file '''<code>/usr/share/xsessions/fluxbox.desktop</code>''' il cui contenuto è il seguente:
<pre>
<pre>
# aptitude install xterm
[Desktop Entry]
Name=Fluxbox
Comment=Highly configurable and low resource X11 Window manager
Exec=/usr/bin/startfluxbox
Terminal=false
TryExec=/usr/bin/startfluxbox
Type=Application
 
[X-Window Manager]
SessionManaged=true
</pre>
</pre>
Per apprendere come aggiungere programmi al Menu di Fluxbox si veda la sezione apposita della guida.<br/><br/>
Si noti che in questa installazione di Fluxbox non è stato installato alcun Login Manager; pertanto sarà necessario effettuare il login in maniera testuale da shell e poi avviare Fluxbox con il comando:
<pre>
$ startx
</pre>
Se preferite, è possibile installare un Login Manager come <code>gdm, xdm, kdm</code>.


==Abbellimento del Desktop==
==Abbellimento del Desktop==
Prima di installare altre applicazioni ci dedicheremo a rendere più gradevole l'ambiente di lavoro, installando:
Prima di installare altre applicazioni ci dedicheremo a rendere più gradevole l'ambiente di lavoro, installando:
<pre>
 
# apt-get install conky
<pre># apt-get install conky</pre>
</pre>
 
Per fare in modo che conky appaia sul desktop di Fluxbox è necessario modificare il suo file di configurazione:
Per fare in modo che conky appaia sul desktop di Fluxbox è necessario creare il suo file di configurazione:
<pre>
 
$ nano $HOME/.conkyrc
<pre>$ conky -C > $HOME/.conkyrc</pre>
</pre>
 
aggiungendo la linea
modificando poi al suo interno la linea '''own_window yes''' in '''own_window no'''
<pre>
 
own_window no
</pre>
Per avere conky che si avvia insieme a Fluxbox modificate invece il file:
Per avere conky che si avvia insieme a Fluxbox modificate invece il file:
<pre>
 
$ nano $HOME/.fluxbox/startup
<pre>$ nano $HOME/.fluxbox/startup</pre>
</pre>
 
aggiungendo la linea
aggiungendo la linea:
<pre>
 
conky &
<pre>conky &</pre>
</pre>
 
'''prima''' della linea
'''prima''' della linea:
<pre>
 
exec /usr/bin/fluxbox
<pre>exec /usr/bin/fluxbox</pre>
</pre>
 
che deve essere sempre l'ultima.
che deve essere sempre l'ultima.
==Software per vecchi Laptop==
==Software per vecchi Laptop==
Installiamo adesso alcuni software leggeri, adatti per notebook non proprio giovanissimi:
Installiamo adesso alcuni software leggeri, adatti per notebook non proprio giovanissimi:
<pre>
 
aptitude install wifi-radar cpufreqd
<pre># apt-get install wifi-radar cpufreqd</pre>
</pre>
 
Quindi avviamo il demone appena installato:
Quindi avviamo il demone appena installato:
<pre>
 
# /etc/init.d/cpufreqd start
<pre># service cpufreqd start</pre>
</pre>
 
Se il demone non partisse, occorre caricare il corretto modulo:
Se il [[demone]] non partisse, occorre caricare il corretto modulo:
 
* AMD Sempron/Athlon/MP ( K7 )
* AMD Sempron/Athlon/MP ( K7 )
<pre>
 
# modprobe powernow-k7
<pre># modprobe powernow-k7</pre>
</pre>
 
* AMD Duron/Sempron/Athlon/Opteron 64 ( K8 )
* AMD Duron/Sempron/Athlon/Opteron 64 ( K8 )
<pre>
 
# modprobe powernow-k8
<pre># modprobe powernow-k8</pre>
</pre>
 
* Intel Core Duo and Intel Pentium M
* Intel Core Duo and Intel Pentium M
<pre>
 
# modprobe speedstep-centrino
<pre># modprobe speedstep-centrino</pre>
</pre>
 
* Intel Pentium IV
* Intel Pentium IV
<pre>
 
# modprobe acpi-cpufreq
<pre># modprobe acpi-cpufreq</pre>
</pre>
 
==Software applicativo==
==Software applicativo==
<pre>
<pre># apt-get install iceweasel icedove pidgin htop vim abiword gnumeric evince libreoffice-impress</pre>
# aptitude install firefox thunderbird centericq htop vim gftp abiword gnumeric
 
</pre>
==Dove trovare i temi GTK==
==Dove trovare i temi GTK==
E' possibile ottenere i temi GTK nella sezione GTK di FreshMeat (http://themes.freshmeat.net/browse/58/).<br/>
È possibile ottenere i temi GTK da [http://xfce-look.org/index.php?xcontentmode=100 xfce-look.org],
[http://gnome-look.org/index.php?xcontentmode=100 gnome-look.org], [http://browse.deviantart.com/?qh=&section=&q=GTK+theme deviantart.com]
 
Per installare i temi c'è solo bisogno di decomprimere questi file in <code>~/.themes</code>. Quindi:
Per installare i temi c'è solo bisogno di decomprimere questi file in <code>~/.themes</code>. Quindi:
<pre>
<pre>
$ mkdir ~/.themes
$ mkdir ~/.themes
Riga 92: Riga 115:
$ tar -jxvf theme-name-here.tar.bz2
$ tar -jxvf theme-name-here.tar.bz2
</pre>
</pre>
Alcuni temi sono installabili anche via <code>apt-get</code>:
Alcuni temi sono installabili anche via <code>apt-get</code>:
<pre>
 
apt-get install gtk-engines-industrial
<pre># apt-get install gtk2-engines-pixbuf</pre>
apt-get install gtk-engines-*
 
</pre>
oppure:
 
<pre># apt-get install gtk2-engines-*</pre>
 
Per utilizzare i temi scaricati, basta installare:
Per utilizzare i temi scaricati, basta installare:
<pre># apt-get install gtk-theme-switch</pre>
oppure:
<pre># apt-get install gtk-chtheme</pre>
==Il menù di Fluxbox==
Il file di configurazione del menù di fluxbox di default è <code>~/.fluxbox/menu</code>. <br/>
Il file ha una struttura molto elementare. Di seguito è riportato uno stralcio del file di configurazione del menù di default su Debian (/etc/X11/fluxbox/fluxbox-menu):
<pre>
<pre>
# apt-get install gtk-theme-switch
  [begin] (Fluxbox)
# apt-get install gtk2-theme-switch
# gtk-chtheme
</pre>
==Il Menu di Fluxbox==
Il file di configurazione del menu di fluxbox di default è <code>~/.fluxbox/menu</code>.
<br/>
Il file ha una struttura molto elementare. Di seguito è riportato uno stralcio del file di configurazione del menu di default su debian (/etc/X11/fluxbox/fluxbox-menu):
<pre>
  [ begin] (Fluxbox)
  # Automatically generated file. Do not edit (see /usr/share/doc/menu/html/index.html)
  # Automatically generated file. Do not edit (see /usr/share/doc/menu/html/index.html)
  [submenu] (Aiuto) {}
  [submenu] (Aiuto) {}
Riga 131: Riga 161:
  [end]   
  [end]   
</pre>
</pre>
Le principali caratteristiche di questo file di testo sono:
Le principali caratteristiche di questo file di testo sono:
# Ogni riga ha una sintassi molto intuitiva e semplice;
# Ogni riga ha una sintassi molto intuitiva e semplice;
# L'indentatura del codice permette di "immaginarsi" il risultato finale.
# L'indentatura del codice permette di "immaginarsi" il risultato finale.
# Ogni riga ha una sintassi di questo tipo:
# Ogni riga ha una sintassi di questo tipo:
<pre>
<pre>
[tag] (label o nome del file) {comando o nomefile}
[tag] (label o nome del file) {comando o nomefile}
</pre>
</pre>
L'indentatura del file è una caratteristica molto importante che semplfica l'operazione di generazione del menu e della sua successiva modifica, perciò è bene mantenere questa struttura gerarchica ogni volta che si mette mano al menu.
 
L'indentatura del file è una caratteristica molto importante che semplifica l'operazione di generazione del menù e della sua successiva modifica, perciò è bene mantenere questa struttura gerarchica ogni volta che si mette mano al menù.
 
===Sintassi generica delle righe del file ===
===Sintassi generica delle righe del file ===
Ciascuna riga del file di configurazione del menu di fluxbox ha una struttura di questo tipo:
Ciascuna riga del file di configurazione del menù di Fluxbox ha una struttura di questo tipo:
<pre>
<pre>[tag] (label o nome del file) {comando o nomefile}</pre>
[tag] (label o nome del file) {comando o nomefile}
 
</pre>
Perciò a ciascuna coppia di parentesi corrisponde un significato ben preciso e questo aiuta molto a far risparmiare tempo in fase di modifica del file. <br/>
Perciò a ciascuna coppia di parentesi corrisponde un significato ben preciso e questo aiuta molto a far risparmiare tempo in fase di modifica del file.
 
<br/>
Il menù inizia sempre con una riga di codice simile alla seguente:
Il menu inizia sempre con una riga di codice simile alla seguente:
<pre>[begin] (Titolo_menù)</pre>
<pre>
 
[begin] (Titolo_Menu)
il tag <code>[begin]</code> deve essere presente nel file, altrimenti Fluxbox cerca il file di configurazione di default del sistema, mentre (Titolo_menù) può essere omesso. Titolo_menù è il testo che verrà visualizzato in cima al menù di Fluxbox. <br/>
</pre>
 
la tag <code>[begin]</code> deve essere presente nel file, altrimenti fluxbox cerca il file di configurazione di default del sistema, mentre (Titolo_Menu) può essere omesso. Titolo_Menu è il testo che verrà visualizzato in cima al menu di fluxbox.
Per la chiusura del menù viene utilizzata il tag <code>[end]</code>. Questo può essere utilizzato sia per chiudere un menù che un sottomenù. In ogni menù deve essere presente un tag <code>[end]</code> per ogni tag <code>[submenu]</code> più uno che comunque è presente e che corrisponde al tag <code>[begin]</code>. Quindi un menù ha la seguente struttura:
<br/>
Per la chiusura del menu viene utilizzata la tag <code>[end]</code>. Questa tag può essere utilizzata sia per chiudere un menu che un sottimenu. In ogni menu deve essere presente una tag <code>[end]</code> per ogni tag <code>[submenu]</code> più una che comunque è presente e che corrisponde alla tag <code>[begin]</code>. Quindi un menu ha la seguente struttura:
<pre>
<pre>
  [begin] (Titolo Menu)
  [begin] (Titolo Menu)
Riga 160: Riga 192:
  [end]
  [end]
</pre>
</pre>
Per creare un sottomenu nel menu principale si usa il tag <code>[submenu]</code>. Ogni Sottomenu viene chiuso dal tag <code>[end]</code>. Il tag <code>[submenu]</code> deve essere seguito dagli attributi (label) e . Il secondo attributo è opzionale e se omesso viene assunto uguale a (label). Riassumendo un sottomenu avrà il seguente aspetto.
 
Per creare un sottomenù nel menù principale si usa il tag <code>[submenu]</code>. Ogni sottomenù viene chiuso dal tag <code>[end]</code>. Il tag <code>[submenu]</code> deve essere seguito dagli attributi (label) e . Il secondo attributo è opzionale e se omesso viene assunto uguale a (label). Riassumendo un sottomenù avrà il seguente aspetto:
<pre>
<pre>
  [submenu] (label)  
  [submenu] (label)  
Riga 168: Riga 201:
  [end]
  [end]
</pre>
</pre>
dove tra <code>[submenu]</code> e <code>[end]</code> vengono incluse tutte le voci del menu.
<br/>
Dal momento che flubxbox legge i menu in maniera ricorsiva non c'è limite al numero di sottomenu che possono essere annidati, praticamente vi consiglio di non esagerare per non complicare troppo la ricerca di una applicazione.


===Item del menu (Eseguibili)===
dove tra <code>[submenu]</code> e <code>[end]</code> vengono incluse tutte le voci del menù. <br/>
Per popolare ciascun menu di voci  che corrispondono all'esecuzione di un programma si utilizza il seguente statement:
 
Dal momento che Fluxbox legge i menù in maniera ricorsiva non c'è limite al numero di sottomenù che possono essere annidati, vi consiglio però di non esagerare per non complicare troppo la ricerca di una applicazione.


[exec] (label) {command}
===Elemento del menù (Eseguibili)===
Per popolare ciascun menù di voci che corrispondono all'esecuzione di un programma si utilizza la seguente istruzione:
<pre>[exec] (label) {command}</pre>


A questa riga viene associata nel menu una voce che viene chiamata "label" e che esegue il comando "command".
A questa riga viene associata nel menù una voce che viene chiamata "label" e che esegue il comando "command".


===Elemento del menù (file e directory)===
Per inserire il collegamento ad un file o ad una directory all'interno del menù di Fluxbox si usa la seguente riga:
<pre>[include] (nome_file_o_dir)</pre>


===Item del menu (Files e directory)===
Per inserire il collegamento ad un file o ad una directory all'interno del menu di fluxbox si usa la seguente riga:
<pre>
[include] (nome_file_o_dir)
</pre>
===Separatore===
===Separatore===
A volte, per aumentare la chiarezza del menu può essere utile inserire un separatore. Questo può essere aggiunto inserendo una riga contenente lo statement <code>[separator]</code>:
A volte, per aumentare la chiarezza del menù può essere utile inserire un separatore. Questo può essere aggiunto inserendo una riga contenente l'istruzione <code>[separator]</code>:
<pre>
<pre>[separator]</pre>
[separator]
 
</pre>
===Istruzioni aggiuntive===
Fluxbox mette a disposizione una serie di istruzioni addizionali per personalizzare ulteriormente il menù. Le principali sono:
* Inserimento di una voce che permette la chiusura e l'uscita da fluxbox<pre>[exit] (label)</pre>


===Statements aggiuntivi===
* Inserimento di una voce "estetica nel menù". In altre parole: inserimento di una voce che se selezionata non comporta l'esecuzione di nessun comando. La sintassi è:<pre>[nop] (label)</pre>se label viene omessa di default viene inserita una voce vuota.
Fluxbox mette a disposizione una serie di statements addizionali per personalizzare ulteriormente il menu. I principali sono:
* Inserimento di una voce che permette la chiusura e l'uscita da fluxbox
<pre>
[exit] (label)
</pre>
* Inserimento di una voce "estetica nel menu". In altre parole: inserimento di una voce che se selezionata non comporta l'esecuzione di nessun comando. La sintassi è:
<pre>
[nop] (label)
</pre>
se label viene omessa di default viene inserita una voce vuota.
* Reload del menu e di tutti i files di configurazione e di stile di fluxbox
<pre
[reconfig] (label)
</pre>
Questa voce è utile per creare nuovi temi e stili e non dover rilanciare fluxbox tutte le volte che è necessario testare il tema.
* Riavvio di fluxbox
<pre>
[restart] (label) {command}
</pre>
Verrà creata una voce nel menu con il nome "label" e quando verrà selezionata fluxbox verrà arrestato e all'uscita da fluxbox verrà eseguito il comando "command". Comunemente il comando fornito è quello necessario ad avviare un altro windows manager. Il parametro "command" è opzionale.
* Voce per la configurazione di fluxbox
<pre>
[config] (label)
</pre>
Viene inserita una voce nel menu chiamata "label" che permette di accedere a numerose opzioni di configurazione riguardanti il comportamento delle finestre.
* Directory dei Wallpapers
E' possibile inserire una voce all'interno del menu permetta di cambiare rapidamente lo sfondo di fluxbox attraverso la seguente riga:
<pre>
[wallpapers] (directory) {command}
</pre>
Cliccando su una immagine questa viene immediatamente settata come sfondo. Ovviamente <code>directory</code> è la directory contenente le immagini.
==Windowmenu==
Windowmenu è il menu che si ottiene con un click desto del mouse sulla barra del titolo di una finestra, premere il tasto menu sulla barra del titolo, utilizzare il :WindowMenu keybind o anche dal menu delle aree di lavoro. Di default ha opzioni per massimizzare, minimizzare ,nascondere la finestra etc, inviare a diversi layer o aree di lavoro e ricordare le opzioni delle finestre.


===Preparativi===
* Rilettura di tutti i file di configurazione di Fluxbox<pre>[reconfig] (label)</pre>Questa voce è utile per creare nuovi temi e stili e non dover rilanciare Fluxbox tutte le volte che è necessario testare il tema.
Prima di tutto, bisogna sapere che Fluxbox è un WindowManager personalizzato. Apri ~/.fluxbox/init e cerca la linea


session.screen0.windowMenu:
* Riavvio del solo eseguibile di Fluxbox, X e gli eventuali programmi rimarranno in esecuzione<pre>[restart] (label) {command}</pre>Verrà creata una voce nel menù con il nome "label" e una volta selezionata Fluxbox verrà arrestato e all'uscita da Fluxbox verrà eseguito il comando "command". Comunemente il comando fornito è quello necessario ad avviare un altro windows manager. Il parametro "command" è opzionale.


Cambiala in
* Voce per la configurazione di Fluxbox<pre>[config] (label)</pre>Viene inserita una voce nel menù chiamata "label" che permette di accedere a numerose opzioni di configurazione riguardanti il comportamento delle finestre.


session.screen0.windowMenu: ~/.fluxbox/windowmenu
* Directory dei wallpaper<br/>È possibile inserire una voce all'interno del menù che permetta di cambiare rapidamente lo sfondo di fluxbox attraverso la seguente riga:<pre>[wallpapers] (directory) {command}</pre>Cliccando su una immagine questa viene immediatamente impostata come sfondo. Ovviamente <code>directory</code> è la directory contenente le immagini.


Ricarica la configurazione di Fluxbox e si dovrebbe essere pronti per iniziare la modifica del menu.
==Windowmenu==
Windowmenu è il menù che si ottiene con un click destro del mouse sulla barra del titolo di una finestra, premere il tasto menù sulla barra del titolo, utilizzare il comando '':WindowMenu'' tramite tastiera o anche dal menù delle aree di lavoro. Di default ha opzioni per massimizzare, minimizzare, nascondere la finestra ecc, impostare le finestre su diversi livelli o inviare ad aree di lavoro e ricordare le opzioni delle finestre.


===Modificare il menu===
===Modificare il menù===
Windowmenu è come il rootmenu, eccetto alcune voci speciali che il menu normale non ha.
Windowmenu è come il rootmenu, eccetto alcune voci speciali che il menù normale non ha, il file di configurazione è <code>~/.fluxbox/windowmenu</code> .
Il menu dovrebbe iniziare con [begin] e finire con [end].
Si può usare il normale menuitems oppure quelli speciali della lista sottostante. Notare che (label) è facoltativo, senza di esso sarà utilizzato quello di dafault:


[shade] (label)
Il menù dovrebbe iniziare con [begin] e finire con [end].
Questa opzione ombreggia la finestra, la barra del titolo sarà visibile solo a sinistra.


Lo stesso effetto cliccando due volte sul titolo, premendo il tasto ombra, utilizzando un tasto veloce o forse anche lo scorrimento con la rotellina del mouse.
Si possono usare i normali elementi del menù oppure quelli speciali della lista sottostante. Notare che (label) è facoltativo, senza di esso sarà utilizzato quello di default:


[close] (label)
<pre>[shade] (label)
Chiude la finestra. Proprio come premendo il tasto X nell'angolo.
Questa opzione riduce la finestra alla sola barra del titolo "arrotolandola".</pre>


[kill]  (label)
Lo stesso effetto cliccando due volte sul titolo, scegliendo "Riduci a barra", utilizzando una scorciatoia da tastiera o la rotellina del mouse (comandi :Shade :ShadeOn :ShadeOff).
[killwindow]  (label)
Termina la finestra. E' utile se il programma è andato in crash e bisogna chiuderlo.


[stick] (label)
<pre>[close] (label)
Attiva e disattiva l'attaccamento (stickiness) della finestra. Quando è appiccicosa, è visibile in tutti i workspace.
Chiude la finestra. Proprio come premendo il tasto X nell'angolo.</pre>


[maximize] (label)  
<pre>[stick] (label)
Massimizza e ripristina la finestra.
Rende la finestra appiccicosa, ovvero visibile su tutte le aree di lavoro.</pre>


[iconify] (label)
<pre>[maximize] (label)
Minimizza (riduce a icona) la finestra.
Massimizza e ripristina la finestra.</pre>


[raise] (label)
<pre>[iconify] (label)
Solleva la finestra ad un layer superiore.
Minimizza (riduce a icona) la finestra.</pre>


[lower] (label)
<pre>[raise] (label)
Abbassa la finestra di un layer.
Solleva la finestra al livello superiore portandola quindi in primo piano.</pre>


[sendto] (label)
<pre>[lower] (label)
Mostra il menu “Send to..” , permette l'invio delle finestre ad un altro workspace.
Porta la finestra al livello inferiore, dietro tutte le altre.</pre>


[layer] (label)
<pre>[sendto] (label)
Mostra il menu “Layer..” , permette all'utente di cambiare facilmente il layer della finestra.
Mostra il menù "Invia a..." che permette l'invio delle finestre in un'altra area di lavoro.</pre>


[extramenus]
<pre>[layer] (label)
Mostra il menu “Remember..” , per ricordare i parametri di finestra nelle sessione.
Mostra il menù "Livello..." che permette all'utente di cambiare facilmente il livello della finestra.</pre>


[alpha] (label)
<pre>[extramenus]
Un sottomenu contenente varie opzioni per la trasparenza della finestra.
Mostra il menù "Ricorda..." per salvare alcune impostazioni della finestra nel file ~/.fluxbox/apps.</pre>


[separator]
<pre>[alpha] (label)
Linea di separazione orizzontale, non fa altro che creare una linea divisoria.
Un sottomenù contenente varie opzioni per la trasparenza della finestra.</pre>


Dopo la modifica del menu, salvarlo, e scegliere Reload config dal menu di Fluxbox, o non si vedranno le modifiche.
<pre>[separator]
Linea di separazione orizzontale, non fa altro che creare una linea divisoria.</pre>


===Esempi===
===Esempi===
Questo dovrebbe creare un menù simile a quello di default:


Questo dovrebbe creare un menu simile a quello di default:
<pre>
 
# ~./fluxbox/windowmenu
# ~./fluxbox/windowmenu
[begin]
[begin]
       [shade]  (Shade)
       [shade]  (Shade)
       [stick]  (Stick)
       [stick]  (Stick)
Riga 303: Riga 299:
       [separator]
       [separator]
       [close] (Close)
       [close] (Close)
[end]
[end]
</pre>


Questo è un differente:
Questo è un po' differente:


[begin]
<pre>
[begin]
       [exec] (terminal)  {xterm}
       [exec] (terminal)  {xterm}
         [maximize]  (maximize)
         [maximize]  (maximize)
Riga 315: Riga 313:
       [extramenus]  (remember)
       [extramenus]  (remember)
       [sendto]  (send to)
       [sendto]  (send to)
[end]
[end]
[separator]
[separator]
[close]  (close)
[close]  (close)
[end]
[end]
==Filemanager==
</pre>
Fluxbox non integra un filemanager perciò, per semplificarsi la vita nell'utilizzo quotidiano del windows manager, sarebbe consigliato installarne uno.
 
I file manager tra i quali si può scegliere sono veramente molti, comunemente la scelta ricade sempre su un numero limitato di alternative che soddisfino contemporaneamente le esigenze di compattezza, funzionalità e leggerezza apprezzate dagli utenti di fluxbox.
==Applicazioni e accessori aggiuntivi==
I filemanager più popolari che rispettano questi requisiti sono: ROX-Filer, Thunar, Worker e Gentoo.
Fluxbox non integra un file manager, un emulatore di terminale o altro, perciò si può installare praticamente tutto quel che si vuole.
===ROX-Filer===
 
[http://roscidus.com/desktop/ROX-Filer ROX-Filer] è un file manager attorno al quale è stato realizzato l'ambiente desktop ROX desktop.
{{Autori
Questo programma nasce per essere particolarmente leggero in quanto basato sulle librerie GTK+, inoltre , a differenza di quanto avviene per molti filemanager, poichè non utilizza alcuna libreria condivisa ha una lista di dipendenze veramente contenuta.<br/>
|Autore = [[Utente:Ferdybassi|Ferdybassi]] 18:11, 10 mar 2010 (CET)
Le principali caratteristiche di ROX-Filer sono:
}}
*Supporto per il drag and drop (XDND, XDS)
 
*Memorizzazione delle preferenze dell'utente nel file ~/.config (questa impostazione può essere cambiata settando la variabile di ambiente XDG_CONFIG_HOME)
[[Categoria:Fluxbox]]
*Supporto per directory applicative (In altre parole supporta applicazioni che possono essere installate e disintallate semplicemente attraverso drag and drop)
*Possibilità di personalizzare i temi delle icone
*Visualizzazione di miniature/anteprima delle immagini
===Thunar===
[http://thunar.xfce.org/index.html Thunar] è il filemanager dell'ambiente desktop xfce e, come xfce, è basato quasi solamente sulle librerie grafiche GTK+.
Questo software è estremamente più leggero in termini di richiesta di risorse rispetto ai più comuni filemanager (anche rispetto a rox-filer !).<br/>
Altra caratteristica che lo rende interessante è la possibilità di personalizzarlo attraverso dei plugin.
L'unico neo di Thunar è la folta lista di dipendenze. Infatti questo software è stato sviluppato e pensato come parte integrante dell'ambiente grafico xfce, perciò l'installazione di thunar comporta la soddisfazione di un numero elevato di dipendenze che per lo più sono librerie di xfce.
===Worker===
[http://www.boomerangsworld.de/worker/ Worker File Manager] è un file manager per i sistemi operativi unix-like scritto da Ralf Hoffmann. Al momento della scrittura dell'articolo l'ultima versione rilasciata è la 2.17.5 e viene distribuito sotto licenza GNU GPL v2 (o successiva).
La sua caratteristica principale è la sua esigua lista di dipendenze, infatti dipende unicamente dai pacchetti del sistema X Window nel caso in cui venga scaricato come pacchetto, mentre nel caso in cui si voglia compilare il software da sorgente le dipendenze si estendono a gcc e alle librerie -dev del sistema grafico X-11.<br/>
Tra le dipendenze opzionali ci sono:
*AVFS (utilizzato per il supporto per filesystem virtuali, ad esempio archivi, FTP ...)
*libmagic (Per migliorare il riconoscimento dei file)
*imagemagick (utilizzato per la visualizzazione delle immagini)
Worker incorpora molte funzioni per la manipolazione dei files e delle directory. Le principali sono quelle che si occupano della creazione, eliminazione, spostamento di files e directory. Oltre a queste ci sono molte altre funzioni di utilità che permettono bookmarking di directory e files (utile per i files e le directory utilizzate più frequentemente) e la visualizzazione di testi.
L'aspetto grafico è molto minimalista e permette la navigazione nel filesystem in due pannelli separati.
===Gentoo===
[http://www.obsession.se/gentoo/ Gentoo] è un filemanager scritto in c e basato sulle librerie GTK+.<br/>
Le sue dimensioni contenute e la sua bassa richiesta di risorse sono i suoi due punti di forza. Chiaramente va tutto a scapito dell'estetica che è un pò "grezza" e che ha molto da invidiare a filemanager leggermente più "pesanti" (ma sempre molto leggeri se confrontati con nautilus) come rox-filer e thunar.
Gentoo permette di operare le principali operazioni di gestione dei files e quasi tutte le sua impostazioni sono settabili graficamente.
L'aspetto ricorda molto worker file manager e personalmente penso che gentoo sia una alternativa valida a worker solamente perchè l'interfaccia minimalista di worker, alla lunga, finisce per stancare. Va da se che mentre worker dipende quasi solamente dalle librerie grafiche del server grafico, la lista delle dipendenze di gentoo è leggermente più estesa.
===Altri File Manager===
*[http://www.gnome.org/projects/nautilus/ Nautilus] (lancciatelo con il comando nautilus --no-desktop --browser)
*[http://emelfm.sourceforge.net/ emelfm]
*[http://www.emelfm2.net/ emelfm2]
*[http://wolfpack.twu.net/Endeavour2/ Endeavour2]
*[http://kde.org/ konqueror]
*[http://www.ibiblio.org/mc/ mc]
*[http://www.fox-toolkit.org/ pathfinder]
*[http://pcmanfm.sourceforge.net/ PCMan File Manager]
*[http://tuxcmd.sourceforge.net/ tux commander]
*[http://roland65.free.fr/xfe/ xfe]
*[http://www.musikwissenschaft.uni-mainz.de/~ag/xfm/ xfm]
*[http://www.musikwissenschaft.uni-mainz.de/~ag/xplore/ xplore]
*[http://www.xfce.org/ xffm]
*[http://xnc.dubna.su/ xnc]
<br/><br/>
--[[Utente:Ferdybassi|Ferdybassi]] 18:11, 10 mar 2010 (CET)
----
[[Categoria:Desktop]]

Versione attuale delle 17:19, 16 dic 2015

Edit-clear-history.png Attenzione. Questa guida è da considerarsi abbandonata, per via del tempo trascorso dall'ultima verifica.

Potrà essere resa obsoleta, previa segnalazione sul forum, se nessuno si propone per l'adozione.


Debian-swirl.png Versioni Compatibili

Debian 7 "wheezy"
Debian 8 "jessie"

Introduzione

Questa guida mostra come installare il Window Manager Fluxbox su un PC in cui sia stata fatta un'installazione base di Debian, senza server grafico X. Fluxbox è un Window Manager leggero, che consuma poche risorse di sistema e che può dare nuova vita a macchine obsolete

Installazione

Come al solito in Debian l'installazione consta di pochi comandi:

# apt-get install xorg fluxbox

Programmi utili

Sebbene Fluxbox e il nostro server grafico X siano già funzionanti, abbiamo bisogno ancora di alcuni programmi, prima di poter utilizzare con profitto il nostro nuovo Window Manager:

# apt-get install xterm feh

Per apprendere come aggiungere programmi al menù di Fluxbox vedere la sezione apposita più avanti.

Avvio di Fluxbox

Notare che in questa installazione di Fluxbox non è stato installato alcun Login Manager; pertanto sarà necessario effettuare il login in maniera testuale da shell e poi avviare Fluxbox.

Prima di poterlo fare, però, è necessario creare il file di avvio per startx:

$ echo "exec startfluxbox" > "$HOME"/.xinitrc

Oppure, se si è installato ConsoleKit (basta installare il pacchetto consolekit):

$ echo "exec ck-launch-session startfluxbox" > "$HOME"/.xinitrc

La sessione grafica è in questo modo registrata assieme a quella sul terminale virtuale.

In entrambi i casi tramite dbus, che è avviato automaticamente, è possibile avvalersi delle funzionalità di altri demoni di sistema, se si decide di installarli.

Dopo di che è sufficiente eseguire, dopo aver effettuato il login da un terminale virtuale (tty1, tty2, ...):

$ startx

Se preferite, è possibile installare un Login Manager come xdm, gdm, kdm.

L'avvio di Fluxbox dal gestore di login avviene andando a leggere il file /usr/share/xsessions/fluxbox.desktop il cui contenuto è il seguente:

[Desktop Entry]
Name=Fluxbox
Comment=Highly configurable and low resource X11 Window manager
Exec=/usr/bin/startfluxbox
Terminal=false
TryExec=/usr/bin/startfluxbox
Type=Application

[X-Window Manager]
SessionManaged=true

Abbellimento del Desktop

Prima di installare altre applicazioni ci dedicheremo a rendere più gradevole l'ambiente di lavoro, installando:

# apt-get install conky

Per fare in modo che conky appaia sul desktop di Fluxbox è necessario creare il suo file di configurazione:

$ conky -C > $HOME/.conkyrc

modificando poi al suo interno la linea own_window yes in own_window no

Per avere conky che si avvia insieme a Fluxbox modificate invece il file:

$ nano $HOME/.fluxbox/startup

aggiungendo la linea:

conky &

prima della linea:

exec /usr/bin/fluxbox

che deve essere sempre l'ultima.

Software per vecchi Laptop

Installiamo adesso alcuni software leggeri, adatti per notebook non proprio giovanissimi:

# apt-get install wifi-radar cpufreqd

Quindi avviamo il demone appena installato:

# service cpufreqd start

Se il demone non partisse, occorre caricare il corretto modulo:

  • AMD Sempron/Athlon/MP ( K7 )
# modprobe powernow-k7
  • AMD Duron/Sempron/Athlon/Opteron 64 ( K8 )
# modprobe powernow-k8
  • Intel Core Duo and Intel Pentium M
# modprobe speedstep-centrino
  • Intel Pentium IV
# modprobe acpi-cpufreq

Software applicativo

# apt-get install iceweasel icedove pidgin htop vim abiword gnumeric evince libreoffice-impress

Dove trovare i temi GTK

È possibile ottenere i temi GTK da xfce-look.org, gnome-look.org, deviantart.com

Per installare i temi c'è solo bisogno di decomprimere questi file in ~/.themes. Quindi:

$ mkdir ~/.themes
$ cd ~/.themes
$ tar -zxvf theme-name-here.tar.gz
$ tar -jxvf theme-name-here.tar.bz2

Alcuni temi sono installabili anche via apt-get:

# apt-get install gtk2-engines-pixbuf

oppure:

# apt-get install gtk2-engines-*

Per utilizzare i temi scaricati, basta installare:

# apt-get install gtk-theme-switch

oppure:

# apt-get install gtk-chtheme

Il menù di Fluxbox

Il file di configurazione del menù di fluxbox di default è ~/.fluxbox/menu.

Il file ha una struttura molto elementare. Di seguito è riportato uno stralcio del file di configurazione del menù di default su Debian (/etc/X11/fluxbox/fluxbox-menu):

 [begin] (Fluxbox)
 # Automatically generated file. Do not edit (see /usr/share/doc/menu/html/index.html)
 [submenu] (Aiuto) {}
   [exec] (Debian Reference) {/usr/bin/debian-reference} 
   [exec] (Info) { x-terminal-emulator -T "Info" -e info} 
   [exec] (Xman) {xman} 
 [end]
 [submenu] (Applicazioni) {}
   [submenu] (Editor) {}
    [exec] (Nano) { x-terminal-emulator -T "Nano" -e /bin/nano} 
   [end]
   [submenu] (Emulatori di terminale) {}
    [exec] (XTerm) {xterm} 
    [exec] (XTerm (Unicode\)) {uxterm} 
   [end]
   [submenu] (Grafica) {}
    [exec] (X Window Snapshot) {xwd | xwud} 
    [end]
   [submenu] (Navigazione web) {}
    [exec] (w3m) { x-terminal-emulator -T "w3m" -e /usr/bin/w3m /usr/share/doc/w3m/MANUAL.html} 
   [end]
 [end]  

Le principali caratteristiche di questo file di testo sono:

  1. Ogni riga ha una sintassi molto intuitiva e semplice;
  2. L'indentatura del codice permette di "immaginarsi" il risultato finale.
  3. Ogni riga ha una sintassi di questo tipo:
[tag] (label o nome del file) {comando o nomefile}

L'indentatura del file è una caratteristica molto importante che semplifica l'operazione di generazione del menù e della sua successiva modifica, perciò è bene mantenere questa struttura gerarchica ogni volta che si mette mano al menù.

Sintassi generica delle righe del file

Ciascuna riga del file di configurazione del menù di Fluxbox ha una struttura di questo tipo:

[tag] (label o nome del file) {comando o nomefile}

Perciò a ciascuna coppia di parentesi corrisponde un significato ben preciso e questo aiuta molto a far risparmiare tempo in fase di modifica del file.

Il menù inizia sempre con una riga di codice simile alla seguente:

[begin] (Titolo_menù)

il tag [begin] deve essere presente nel file, altrimenti Fluxbox cerca il file di configurazione di default del sistema, mentre (Titolo_menù) può essere omesso. Titolo_menù è il testo che verrà visualizzato in cima al menù di Fluxbox.

Per la chiusura del menù viene utilizzata il tag [end]. Questo può essere utilizzato sia per chiudere un menù che un sottomenù. In ogni menù deve essere presente un tag [end] per ogni tag [submenu] più uno che comunque è presente e che corrisponde al tag [begin]. Quindi un menù ha la seguente struttura:

 [begin] (Titolo Menu)
 ...
 ...
 ...
 [end]

Per creare un sottomenù nel menù principale si usa il tag [submenu]. Ogni sottomenù viene chiuso dal tag [end]. Il tag [submenu] deve essere seguito dagli attributi (label) e . Il secondo attributo è opzionale e se omesso viene assunto uguale a (label). Riassumendo un sottomenù avrà il seguente aspetto:

 [submenu] (label) 
 ...
 ...
 ...
 [end]

dove tra [submenu] e [end] vengono incluse tutte le voci del menù.

Dal momento che Fluxbox legge i menù in maniera ricorsiva non c'è limite al numero di sottomenù che possono essere annidati, vi consiglio però di non esagerare per non complicare troppo la ricerca di una applicazione.

Elemento del menù (Eseguibili)

Per popolare ciascun menù di voci che corrispondono all'esecuzione di un programma si utilizza la seguente istruzione:

[exec] (label) {command}

A questa riga viene associata nel menù una voce che viene chiamata "label" e che esegue il comando "command".

Elemento del menù (file e directory)

Per inserire il collegamento ad un file o ad una directory all'interno del menù di Fluxbox si usa la seguente riga:

[include] (nome_file_o_dir)

Separatore

A volte, per aumentare la chiarezza del menù può essere utile inserire un separatore. Questo può essere aggiunto inserendo una riga contenente l'istruzione [separator]:

[separator]

Istruzioni aggiuntive

Fluxbox mette a disposizione una serie di istruzioni addizionali per personalizzare ulteriormente il menù. Le principali sono:

  • Inserimento di una voce che permette la chiusura e l'uscita da fluxbox
    [exit] (label)
  • Inserimento di una voce "estetica nel menù". In altre parole: inserimento di una voce che se selezionata non comporta l'esecuzione di nessun comando. La sintassi è:
    [nop] (label)
    se label viene omessa di default viene inserita una voce vuota.
  • Rilettura di tutti i file di configurazione di Fluxbox
    [reconfig] (label)
    Questa voce è utile per creare nuovi temi e stili e non dover rilanciare Fluxbox tutte le volte che è necessario testare il tema.
  • Riavvio del solo eseguibile di Fluxbox, X e gli eventuali programmi rimarranno in esecuzione
    [restart] (label) {command}
    Verrà creata una voce nel menù con il nome "label" e una volta selezionata Fluxbox verrà arrestato e all'uscita da Fluxbox verrà eseguito il comando "command". Comunemente il comando fornito è quello necessario ad avviare un altro windows manager. Il parametro "command" è opzionale.
  • Voce per la configurazione di Fluxbox
    [config] (label)
    Viene inserita una voce nel menù chiamata "label" che permette di accedere a numerose opzioni di configurazione riguardanti il comportamento delle finestre.
  • Directory dei wallpaper
    È possibile inserire una voce all'interno del menù che permetta di cambiare rapidamente lo sfondo di fluxbox attraverso la seguente riga:
    [wallpapers] (directory) {command}
    Cliccando su una immagine questa viene immediatamente impostata come sfondo. Ovviamente directory è la directory contenente le immagini.

Windowmenu

Windowmenu è il menù che si ottiene con un click destro del mouse sulla barra del titolo di una finestra, premere il tasto menù sulla barra del titolo, utilizzare il comando :WindowMenu tramite tastiera o anche dal menù delle aree di lavoro. Di default ha opzioni per massimizzare, minimizzare, nascondere la finestra ecc, impostare le finestre su diversi livelli o inviare ad aree di lavoro e ricordare le opzioni delle finestre.

Modificare il menù

Windowmenu è come il rootmenu, eccetto alcune voci speciali che il menù normale non ha, il file di configurazione è ~/.fluxbox/windowmenu .

Il menù dovrebbe iniziare con [begin] e finire con [end].

Si possono usare i normali elementi del menù oppure quelli speciali della lista sottostante. Notare che (label) è facoltativo, senza di esso sarà utilizzato quello di default:

[shade] (label)
Questa opzione riduce la finestra alla sola barra del titolo "arrotolandola".

Lo stesso effetto cliccando due volte sul titolo, scegliendo "Riduci a barra", utilizzando una scorciatoia da tastiera o la rotellina del mouse (comandi :Shade :ShadeOn :ShadeOff).

[close] (label)
Chiude la finestra. Proprio come premendo il tasto X nell'angolo.
[stick] (label)
Rende la finestra appiccicosa, ovvero visibile su tutte le aree di lavoro.
[maximize] (label)
Massimizza e ripristina la finestra.
[iconify] (label)
Minimizza (riduce a icona) la finestra.
[raise] (label)
Solleva la finestra al livello superiore portandola quindi in primo piano.
[lower] (label)
Porta la finestra al livello inferiore, dietro tutte le altre.
[sendto] (label)
Mostra il menù "Invia a..." che permette l'invio delle finestre in un'altra area di lavoro.
[layer] (label)
Mostra il menù "Livello..." che permette all'utente di cambiare facilmente il livello della finestra.
[extramenus]
Mostra il menù "Ricorda..." per salvare alcune impostazioni della finestra nel file ~/.fluxbox/apps.
[alpha] (label)
Un sottomenù contenente varie opzioni per la trasparenza della finestra.
[separator]
Linea di separazione orizzontale, non fa altro che creare una linea divisoria.

Esempi

Questo dovrebbe creare un menù simile a quello di default:

# ~./fluxbox/windowmenu
[begin]
       	[shade]  (Shade)
       	[stick]  (Stick)
       	[maximize]
       	[iconify]  (Iconify)
       	[raise]
       	[lower]
       	[sendto]
       	[layer]
       	[extramenus]
       	[separator]
       	[close]	(Close)
[end]

Questo è un po' differente:

[begin]
       	[exec]	(terminal)  {xterm}
         [maximize]  (maximize)
       	[iconify]  (minimize)
       	[submenu]  (advanced)
       	[layer]  (layer)
       	[extramenus]  (remember)
       	[sendto]  (send to)
[end]
[separator]
[close]  (close)
[end]

Applicazioni e accessori aggiuntivi

Fluxbox non integra un file manager, un emulatore di terminale o altro, perciò si può installare praticamente tutto quel che si vuole.




Guida scritta da: Ferdybassi 18:11, 10 mar 2010 (CET) Swirl-auth20.png Debianized 20%
Estesa da:
Verificata da:

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