Debian Wheezy e Ubuntu Oneiric con Fluxbox

Desktop di Fluxbox

Dopo aver sperimentato la minimal install di Ubuntu e la netinstall di Debian è venuto il momento di decorare ed “attrezzare” questi spartani pinguini con un’interfaccia grafica ed un corredo essenziale di programmi. Come avevo anticipato nei precedenti articoli, punto ad ottenere un sistema che impieghi poche risorse e che mi permetta solo (almeno inizialmente) di “surfare il Web” (un’espressione che fa molto anni ’90), eseguire musica e video e poco altro.

A questo scopo la scelta del window manager è caduta su Fluxbox. Fluxbox è correntemente sviluppato (ultima release: 1.3.2 – ottobre 2011) ed è indipendente dalle librerie GTK (Gnome) e QT (KDE). Questa separazione netta dai principali toolkit di sviluppo è positiva in termini di spazio richiesto per l’installazione ma si potrebbe pagare al momento della scelta dei software da installare.

Molti programmi, tra i più comuni, si portano dietro dipendenze da tali librerie (Firefox, ad esempio, dipende da alcuni elementi GTK): scegliere accuratamente il software a corredo sarà la parte più complessa dell’opera di costruzione. Al momento la mia impressione è che qualche compromesso sia inevitabile… Per semplicità prediligerò i software dai repository ufficiali piuttosto che installare pacchetti scaricati in giro (il Saggio dice che “Ciò è male”) o compilazioni da sorgente (paura!).

Salvo diverse indicazioni le procedure descritte sono valide per Debian ed Ubuntu. Manterrò inoltre le impostazioni di default per i permessi degli utenti nelle due installazioni. Per operazioni di amministrazione (gestione pacchetti, scrittura nelle cartelle di sistema) in Debian l’utente normale (che indico come “user”) dovrà prima autenticarsi come root con “su root” mentre in Ubuntu userà “sudo”. Ad esempio per installare un pacchetto in Debian eseguirò:

su root
apt-get install <nome-del-pacchetto>

mentre in Ubuntu solamente

sudo apt-get install <nome-del-pacchetto>

Fluxbox è un WM versatile e facile da configurare benché non disponga di strumenti grafici per queste operazioni. Un piccolo numero di file di testo nella cartella /home/user/.fluxbox permette di regolare diversi aspetti dell’ambiente:

  • init: alcune impostazioni di gestione delle finestre e richiamo dei file di configurazione
  • startup: applicazioni da lanciare all’avvio
  • menu: struttura del menu di sistema
  • slitlist: ordine delle applicazioni agganciate alla “slit”
  • keys: impostazione delle scorciatoie da tastiera (es.: Alt + F4→ Chiudi finestra)

Il riferimento principale per tutti gli aspetti di Fluxbox è la sua wiki: da qui e dai link suggeriti ho preso la maggior parte delle informazioni utili alla configurazione.

Nota (20/03/2012): dato il tempo necessario per le necessarie ricerche, prove e documentazione dei risultati ho deciso di aggiornare gradualmente questo articolo, via via che riesco ad aggiungere un “pezzetto”. Troverete quindi una serie di appunti sparsi e link di riferimento che verranno progressivamente messi in ordine. Se aspettassi di completare l’opera per pubblicare l’articolo farei in tempo a vedere Wheezy diventare “old stable”! (Questa l’hanno capita pochi geek, ma va bene così ;-) )

Cercherò inoltre di procedere parallelamente per Debian ed Ubuntu: non dovrebbe essere troppo impegnativo, a meno di qualche differenza tra i pacchetti disponibili nei rispettivi repository.

I suggerimenti, come sempre, sono graditi.

Sistema base

A partire dalla minimal / netinstall, il minimo necessario da aggiungere sono i pacchetti xorg e fluxbox.

apt-get install xorg fluxbox

eseguito da root in Debian, con “sudo” in Ubuntu. Per escludere i pacchetti raccomandati aggiungere “–no-install-recommends” in coda alla riga di comando.

Per l’audio, se richiesto, sono necessari i pacchetti alsa-base e alsa-utils.

Tuning

“Vuoi perdere peso? Chiedimi come!”

Una prima grattatina ai pacchetti installati, anche se c’è ben poco da ridurre (apt-get remove <pacchetto> –purge, premettere “sudo” per Ubuntu):

Debian

exim*, bsdmailx e vim*. I primi sono utility per la gestione della posta, l’ultimo è un editor di testo. Rimuovere exim elimina anche un processo dall’avvio.

Ubuntu

Rimossi language-pack-en, language-pack-en-base, language-pack-gnome-en, language-pack-gnome-en-base. I corrispondenti language pack italiani sono già installati.

~~~

Ho inoltre disabilitato alcune console (tty4, 5 e 6) che praticamente non userò mai per il login. In teoria ne basterebbero solo due: una testuale per un login alternativo o recovery (ad esempio come root) ed un’altra (tty7) per il server grafico (fonte).

Debian

Da root modificare il file /etc/default/console-setup. La riga

ACTIVE_CONSOLES="/dev/tty[1-6]"

diventerà ad esempio

ACTIVE_CONSOLES="/dev/tty[1-3]"

Successivamente bisogna editare /etc/inittab commentando le righe relative alle console da disabilitare:

#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6

Ubuntu

In /etc/init editare (con permessi di root) i file tty*.conf delle console che si vogliono disabilitare

sudo nano /etc/init/tty4.conf

commentando (#) la riga “start on runlevel [23]“. Esempio del risultato finale per tty4:

# tty4 - getty
#
# This service maintains a getty on tty4 from the point the system is
# started until it is shut down again.

#start on runlevel [23]
stop on runlevel [!23]

respawn
exec /sbin/getty -8 38400 tty4

Quindi rinominare il file aggiungendo “.disabled” all’estensione

sudo mv tty4.conf tty4.conf.disabled

~~~

Queste due azioni combinate ci permettono di risparmiare circa 1-2 MB di RAM (used) ed altrettanto di RAM cached perché i relativi processi sono inattivi.

Login

Non aggiungerò un login manager grafico: il sistema avrà solo fluxbox come WM e root (solo Debian) + utente normale (d’ora in poi “user”) quindi questo componente mi sembra superfluo. Il login è testuale dalla console. L’unica controindicazione sarebbe che il server X (l’ambiente grafico, in parole povere) non viene avviato automaticamente: il login manager, se installato, si occupa di modificare opportunamente i file di avvio.

Ovviare a questo inconveniente è molto semplice: si può modificare il file /home/user/.profile (Debian / Ubuntu) aggiungendo “startx” in fondo (fonte: Debian Admin). La stessa fonte riporta anche il metodo per abilitare il login automatico ma preferisco tralasciare questa possibilità. Ho eseguito la modifica solo per user mentre root rimarrà alla riga di comando dopo il login.

L’alternativa leggera e indipendente potrebbe essere lightdm, che sostituirà presto i login manager GDM e KDM per *ubuntu. Il pacchetto è anche nei repository Debian. Funziona ma non lo ritengo indispensabile, quindi rimane a nanna nei repository. ;-)

Attualmente è possibile spegnere il computer solo con “halt” o comando equivalente dato come root (Deb) o con “sudo” (Ub). Ci sto lavorando…

File manager

Ho installato inizialmente Midnight Commander (Home Page) che è funzionale ma piuttosto spartano.

apt-get install mc --no-install-recommends

Una buona alternativa è xfe (Home page XFErecensione / trackback su LFFL). Per installarlo, aggiungendo anche il visualizzatore pdf e la localizzazione,

apt-get install xfe xpdf xfe-i18n --no-install-recommends

Browser

Per ora w3m, Midori e Chromium. Midori è abbastanza leggero e funzionale ma richiede libgtk2.0 ed altre dipendenze. Per avere un browser completo non ho trovato al momento alternative che permettano di essere completamente indipendenti dalle librerie GTK o QT. Tanto vale dunque sfruttare queste librerie installando altri software che le richiedono. Proverò anche Firefox, scelta che può sembrare incoerente per tenere il sistema “leggero”. Tale considerazione è ragionevole se abbiamo poche risorse (<512 MB direi che è un limite accettabile). Se invece abbiamo un po’ di RAM in più ed un processore decente (>1 GHz), le risorse “risparmiate” grazie alle basse richieste di Fluxbox possono essere dirottate verso tali software.

Lettori multimediali

In prova: Audacious, VLC (dipendenze QT). Malgrado quello che si porta appresso, VLC è il mio preferito perché include già i codec.

Gestione software ed aggiornamenti

Si può tranquillamente utilizzare aptitude per tutto se vogliamo uno strumento più “visivo” per gestire le operazioni. Spesso apt-get direttamente da terminale basta e avanza (specie per lanciare semplicemente l’aggiornamento del sistema). Installare synaptics o simili non mi sembra proprio il caso, visto che si tirerebbe dietro un bel po’ di roba.

Per gli aggiornamenti può far comodo un cron job. Due articoli di riferimento per cron su “The Geek Stuff”: (1) Sintassi – (2) Esempi

Ubuntu

Aggiunti i repository di Medibuntu, risolto l’errore di chiave non valida per repo “extras” e modificato /etc/apt/sources.list escludendo i repository di codice sorgente (commentare le righe con “deb-src”).

~~~

Personalizzazione dell’ambiente (temi, icone, sfondo, etc.)

Debian/Ubuntu

Aggiunto da repository “fbpager” (pager dei desktop virtuali). È necessario creare un “resource file” con le impostazioni del pager: per default è /home/user/.fluxbox/fbpager. Si fa eseguire l’applicazione all’avvio aggiungendo la riga di comando “fbpager -w &” nel file /home/user/.fluxbox/startup. L’opzione “-w” consente di posizionare il pager nella “slit” (docking).

Ho avuto problemi a far avviare fbpager in Ubuntu prima di creare il resource file (malgrado fbpager abbia dei valori predefiniti da utilizzare, vedere la pagina man per ulteriori dettagli). Il trasferimento dei default di sistema nel resource file utente (così da avere una base da cui iniziare per la personalizzazione) si ottiene con:

fbpager -sr > ~/.fluxbox/fbpager

L’alternativa suggerita nella wiki “Ipager” si deve compilare da sorgente; il compilatore necessita di una libreria (x11-dev-stuff) non reperibile (obsoleta?) ed esce con messaggi di errore che mi suggeriscono che il programma stesso è obsoleto. Peccato, sembrava carino. Saluti e baci ad Ipager.

Altra piccola applicazione elencata nella wiki (non è essenziale, ma è carina e funziona) è il monitor di rete “wmnd“. In /home/user/.fluxbox/startup è già presente la riga con il comando d’avvio: basta decommentarla ed il gioco è fatto. Sullo stesso genere c’è gkrellm, testato con successo. In generale le “dockapps” pensate per Windowmaker possono essere utilizzate agganciandole alla slit. Questi dock/monitor non sono indispensabili ma fanno scena e non consumano tantissimo. In un ambiente come questo, sprovvisto di strumenti di regolazione e configurazione, possono mettere a portata di mano qualche utile “scorciatoia” (la regolazione del volume, ad esempio). Della famiglia è anche il famoso Conky, che pure va abbastanza di moda… Sto facendo un pensiero a provarlo, ma non è per niente prioritario.

Icone: fbdesk non vuole saperne di funzionare. Ho ripiegato su idesk che, malgrado la data di release più vecchia, ha funzionato al primo colpo.

Sfondo: fbsetbg (immagine di sfondo) e fbsetroot (sfondo con colore/gradiente) fanno il loro lavoro.

Non andrò in ulteriori dettagli sulla personalizzazione grafica, che è molto soggettiva. Sicuramente suggerisco di avere un tema completo di icone (va bene gnome-hicolor o oxygen per iniziare) in modo da poter assegnare a ciascuna applicazione la propria, anche nel root menu, e rendersi conto dell’aspetto finale.

Rendere graficamente “coerenti” i colori, lo sfondo, le icone, l’aspetto delle applicazioni è un compito che porta via un bel po’ di tempo: ci lavorerò con molta calma.

~~~

Stato dell’arte (26/03/2012)

Icone (idesk), finestra con tab di XFE e terminale, pager. Tema: Meta

Ram: 48 MB (al netto delle applicazioni aperte)

Spazio su disco: 1.1 GB

About these ads

Informazioni su Man from Mars

http://extendedreality.wordpress.com/

  1. C’è una bambolina anche per il primo commento a questo post? No, perché mi piacerebbe Barbie Fiori di Pesco

  2. icittadiniprimaditutto

    Reblogged this on i cittadini prima di tutto.

  3. Scugnizzo

    Heilà, era tanto che non passavo di qua.
    Devo ricordarmi di farci un salto ogni tanto.
    Come procedono i lavori?

    • Mi sono “un attimino” arenato sulla faccenda dello spegnimento tramite DBus/Consolekit/HAL. Comincio a pensare che, tutto sommato, convenga installare un login manager (LightDM, per esempio) per risparmiarsi sbattimenti. Per il resto funziona più o meno tutto, anche se esteticamente non è molto coerente.
      Aspetto di avere il tempo di passare su macchina reale.

  4. Pingback: Debian Wheezy and Ubuntu Oneiric with Fluxbox « Extended Reality

  5. Pingback: Window managers -3- Fluxbox | Extended Reality

Dimmi che ne pensi o fai "Ciao ciao!" con la manina // Share your thoughts or just say "Hello!"

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

Iscriviti

Ricevi al tuo indirizzo email tutti i nuovi post del sito.

Unisciti agli altri 96 follower

%d blogger cliccano Mi Piace per questo: