lunedì 7 dicembre 2009

HOW-TO arch linux + openbox

È giunta l'ora, non posso più procrastinare:P
Già sto week end non ho scritto una fava, e non ho scuse visto che Sabato mi son dimenticato di organizzare la serata e Domenica sono rimasto con mio nonno in casa per controllare che non facesse qualche boiata, ma veniamo ai fatti.

E così volete installarvi linux ma vi sta sul belino l'idea di avere millanta programmi che alla fine non userete mai uh? Vi installate ARCH linux per avere sotto controllo tutto, per fare sì che all'accensione del vostro pc partano SOLO le cose che volete, non altre cose che sono state installate con gnome-kde-xfce o chi per loro, giusto? La soluzione c'è, anzi LE soluzioni, quella che vediamo oggi si chiama OPENBOX, forse più avanti ne proverò altre, ma iniziamo.
Partiamo dal presupposto che abbiate già installato arch o, se non altro, che ne siate in grado, e che sappiate come configurarlo. Aggiornate il tutto, installate i driver della scheda video.
La prime cose che installiamo saranno openbox e slim (questo lo metteremo pure nei daemon di avvio)

pacman -S openbox slim


Adesso dobbiamo creare un file nella home dell'utente che userà il pc (o degli utenti, fate voi), tale file sarà chiamato .xinitrc, slim, una volta dato account e password, andrà a leggere questo file per sapere cosa volete fare partire, nel nostro caso openbox, ora vi scrivo due righe, ma voi dovete metterne solo una di queste, vi spiegherò:
exec ck-launch-session openbox-session
exec openbox-session
La prima riga è quella che uso io, la seconda è quella standard, siccome avevo alcuni problemi con il mount dei dischi esterni mi sono affidato a google e ho trovato sul forum di arch in inglese questa soluzione.
Adesso potete loggare con il vostro nuovo ambiente grafico, notate la splendida mandanza di tutto.
Cliccando con il tasto destro si aprirà un piccolo menu, da questo possiamo aprire una shell, aprite xterm, è l'unica che funziona (se non state installando xbox per affiancare gnome o kde o xfce o quel che è), a questo punto installate tutti i programmi che pensate di utilizzare stando molto attenti a non installare cose che dipendono da qualche ambiente grafico, vogliamo tenre openbox pulito, giusto?
Ricordate di includere nelle installazioni tint2 e pcmanfm, vorrete anche installare una shell che vi permetta di copiare e incollare, io uso sakura, inoltre potete installare opzionalmente anche due altri programmi:

tablaunch: se volete un lanciatore di applicazioni, lo installate con yaourt, ricordate di modificare il pkgbuild e modificare xorg con xorg-server

nitrogen: se volete uno sfondo, altrimenti se vi basta uno sfondo monocolore potete anche risparmiarvelo.

A questo punto possiamo installare due applicazioni che ci permetteranno di modificare il menu di openbox
pacman -S obmenu mmaker
Se preferite configurarlo a mano ne siete liberissimi e quindi anche questi due programmi sono opzionali, mmaker crea il menu da solo, quindi magari eliminate quello attuale che si trova nella vostra home nella cartella /.config/openbox/menu.xml (potete dare da terminale un pcmanfm e farlo con il file manager se preferite).
Fatto questo date da terminale un
mmaker -vf OpenBox

così si creerà un menu nuovo, apportiamo una piccola modifica con obmenu per aggiungere (dove preferite) i comandi halt e reboot, che qua mandano, vanno ovviamente preceduti da sudo quindi, dopo aver configurato bene sudo (seguendo lo wiki di arch), clicchiamo su NEW ITEM, scegliamo il laber (che sarebbe il nome che comparirà sul nostro menu) e inseriamo i comandi, mi raccomando, nel menu a tendica scegliete execute. Con obmenu potete anche spostare e/o eliminare cose che non vi vanno bene nel menu, ma, se avete intenzione di usare il terminale o tablaunch per lanciare i programmi o spegnere o riavviare e così via vi consiglio di non alterarlo (potreste avere bisogno in futuro di cose di cui non ricordate il comando).
In teoria il nostro openbox potrebbe funzionare anche così, senza aggiungere altro, ma noi abbiamo installato tint2 e mi sembra il caso di utilizzarlo, quindi ora spiegherò come modificare e usare tint2 e tablaunch, aggiungere lo sfondo con nitrogen, modificare la lista dei comandi che partono al login, e, eventualmente, risolvere due scocciature riguardanti tastiera e mouse, nel mio caso non riuscivo a togliermi di torno il layout americano nonostante la configurazione in rc.conf fosse apposto e il mouse lo volevo per mancini.
Il file di configurazione di tint2 è, partendo dalla vostra home, .config/tint2/tint2rc, aprendolo potete notare che è molto ordinato, e configurarlo non sarà troppo difficile (se il file non c'è provate prima a avviare tint2 dal terminale), a me piaceva così come era, ma ho aumentato la grandezza modificando il panel size così: panel_size = 100% 30
Ovviamente possiamo cambiare i colori e le trasparenze, per i colori vi consiglio di andare su un sito che vi permette di vedere i codici relativi ai colori, tipo questo: http://www.computerhope.com/htmcolor.htm
La cosa migliore, ovviamente, sarebbe sfruttare geany (lo avete installato, vero?) che ha una tabella per i colori interna :) aggiungete il comando
tint2 &
Al file nella vostra home /.config/openbox/autostart.sh
Tablaunch è altrettanto semplice da configurare, forse anche di più. Il file è nella home e si chiama .tablaunch, la sua architettura è molto semplice:
nome comando icona "icona grossa"
Come potete vedere icona grossa è fra virgolette, ora vi spiego perchè, quello qua sopra è solo come esempio, in realtà il percorso delle icone non va fra virgolette, fra virgolette vanno le cose con uno spazio, permettetemi di farvi un secondo esempio, se noi vogliamo lanciare un lettore multimediale, per esempio vlc, e fare comparire su tablaunch il nome "Lettore multimediare" allora il comando da dare dovrà essere questo:
"Lettore multimediale" vlc percorso/della/icona.piccola percorso/della/icona.grossa
Per le icone io ho usato i formati 80x80 e 50x50, potete ovviamente anche usare icone completamente diverse, non dovete seguire schemi, io per le icone piccole ho preso un tema, per quelle grosse un tema diverso (uno in bianco e nero e uno a colori), per fare partire tablaunch digitiamone il nome da terminale, possiamo anche usare varie opzioni per modificarne l'aspetto, per esempio
tablaunch -x 500 -fg "#CCCCCC" -pfg "#CCCCCC" -sfg "#FFFFFF" -bg "#31353a" &
Vi consiglio di leggervi le varie opzioni:
[arkindal@Atene ~]$ tablaunch --help

tablaunch version 0.6
usage: tablaunch [option] [option] ...
where options include:
(Note: X resource should be prepended with 'tablaunch.')
descriptions refer default 'top' docking position
option X resource description
------ ---------- -----------
-h, --help displays this help
--settings lists current settings
(a good way to see default values)
--ignoreXRM ignore X resources
-c configfile configfile config file listing tabs
-fg color foreground foreground text color
-sfg color selected_foreground foreground text color of selected tab
-pfg color pressed_foreground foreground text color of pressed tab
-bg color background background color of tab
-fn fontname font name of font for tab
-sfn fontname selected_font name of font for selected tab
-x xoffset xoffset x offset of tabs from left/right of screen
-y yoffset yoffset y offset of tabs from top/bottom of screen
-r rightalign align tabs to right of screen
-d hideDelay hide_delay seconds until tabs auto-hide
-l always_show_label always show text label
-t text_only don't use icons
-k keep_selected_on_hide selected tab is apparent when hidden
-e float expand_factor expand factor
--iconMaskOff use_icon_mask allows images to be transparent
--fit_text fit_text makes icons wider to fit text
--s_yoffset pixels selected_yoffset y offset of selected tab from adjacent tabs
--limit_y pixels limit_y y coordinate of highest tab
(negative value means above screen)
--hidden pixels hidden_height pixels that are visible when auto-hidden
--bottom pixels margin_bottom space below text label
--top pixels margin_top space above text label
--sides pixels margin_sides extra space left and right of text label
--pulldown pixels pulldown_height how far down to pulldown the selected tab
--opts.bevel pixels opts.bevel size of bevel around tab
--overlap pixels tab_overlap pixels that tab overlap each other
(negative value means tab separation)
--step pixels step_factor step factor of tab offset as it gets
farther from the selected tab
--height pixels same_height use this height for all icons
--caption_y pixels caption_yoffset y offset for captions under icons
--no_caption no_caption turn off caption under icons
or show_caption
--no_label no_label turn off all labels for icons
or show_label
--iconhome dir iconhome set dir to search for icons
expects 48x48 and 64x64 subdirs
--no_iconhome no_iconhome don't use icon home
or use_iconhome
--blinks int blinks number of blinks when tab is pressed
--brightness float brightness brightness of pressed icon
--dock [top|bottom] dock_position screen position of launchbar
Qua viene tutto disordinato, ma se lo fate dal vostro terminale sarà più semplice, fatto questo aggiungete il comando scelto al file di autostart di openbox.
Ora scegliamo uno sfondo per nitrogen
nitrogen /percorso/della/cartella/contenente/i/vostri/sfondi
scegliete il vostro sfondo e aggiungete al file autostart.sh (come avete fatto prima) una riga con
nitrogen --restore &
A questo punto avrete capito che il file contenente i comandi che partono all'avvio è il famigerato autostart.sh, per aggiungere una riga per ogni comando e mettere alla fine una &, questo per esempio è il mio file:
nitrogen --restore &
tint2 &
pidgin &
skype &
tablaunch -x 500 -fg "#CCCCCC" -pfg "#CCCCCC" -sfg "#FFFFFF" -bg "#31353a" &
conky &
tilda &
#alltray -s -l thunderbird %u &
Con questo avremmo finito, se non per il fatto che ci sono due problemi che io ho riscontrato, spero che voi non abbiate problemi di nessun tipo, ma se, per caso, anche voi non riusciste a avere un layout italiano potete risolvere aprendo il file
/usr/share/hal/fdi/policy/10osvendor/10-keymap.fdi
cercate dove c'è us e metteteci it, salvate, poi salvate con nome in
/etc/hal/fdi/policy/10-keymap.fdi
Se per caso siete mancini come me potete anche risolvere lo scomodo mouse per destri aprendo il file
/usr/share/hal/fdi/policy/10osvendor/10-x11-input.fdi
cercate la parte relativa al mouse e modificatela così:

mouse
string="Linux">
3 2 1 4 5
evdev

poi salvate il tutto, senza modificare il nome del file, nella cartella /etc/hal/fdi/policy/ .
A questo punto DOVREMMO avere finito, per questa guida voglio ringraziare alcune persone della comunità di arch, in ordine alfabetico (partendo prima con i nickname che iniziano per numeri):
4javier
Ander
Azz
Berseker
Bl@ster
Veleno77
Spero di non avere dimenticato niente, sia nella guida che nei ringraziamenti, se mi sono dimenticato qualche punto della guida vi prego di perdonarmi e informarmi, la modificherò, se mi sono dimenticato di ringraziare qualcuno mi dispiace molto, e vi prego di avvisarmi, aggiungerò il nome del dimenticato ASAP :)
Spero che questa guida sia utile a qualcuno, sia a nuovi openboxisti che a eventuali curiosi :)

10 commenti:

  1. posta qualche screen che sono curioso ....

    RispondiElimina
  2. Qualcosina lo trovi qui, non aggiornato a oggi però
    http://arkindal.blogspot.com/2009/12/un-po-di-risultati-visivi.html

    RispondiElimina
  3. Ah, ecco chi sei, l'invertito!!!!
    Bella guida, per impostare lo sfondo puoi utilizzare anche altri programmi, ad esempio feh.
    Tra le dotazioni irrinunciabili aggiungerei scrot per gli screenshot (se vuoi poi ti dico come fare la screen solo della parte che selezioni col mouse)

    RispondiElimina
  4. Occhio però al mouse per mancini, quel setting inverte solo i due tasti standard dei mouse comuni, per i possessori di mouse multimediali (con tanti tasti estremamente inutili), la rimappatura risulta più complessa.

    RispondiElimina
  5. Ah, grazie 4javier, apprezzo molto i tuoi commenti e ti ringrazio di nuovo per l'aiuto con il mouse :)
    Si si, il consiglio per scrot è bene accetto :)

    RispondiElimina
  6. Prego
    Basta che bindi ad un tasto questo comando
    scrot -sq1 /dir/di/salvataggio/selection_-_%c.png
    naturalmente dopo aver installato scrot :P

    Ad esempio io ho bindato il comando al tasto superL (la bandiera a sinistra), e dopo che lo premo, la prima area che selezionerò col mouse sullo schermo verrà catturata in uno screenshot.
    Spero piaccia. :)

    RispondiElimina
  7. scusa ancora per i doppi post -.-'
    Non ti ho detto che questa parte
    selection_-_%c.png
    assegna al file il nome selection_-_data_e_ora_correnti.png
    Naturalmente ci sono altre opzioni di formattazione.
    q1 invece mette al massimo il fattore di compressione dell'immagine, e col png a sembrano comunque molto buone.

    RispondiElimina
  8. Grazie 4javier, non preoccuparti per i doppi post, se sono costruttivi vanno benissimo ;)

    RispondiElimina
  9. a parte tutto...
    continuo a preferire wdm+wmaker+nedit

    RispondiElimina
  10. De gustibus... :P
    Preferisco il "look" delle cose che ho consigliato, specialmente per quanto riguarda wmaker, slim posso tranquillamente cestinarlo per qualcosa di più leggero, magari quando il mio pc inizierà a perdere colpi, e geany lo trovo insostutuibile, me ne sono innamorato subito :)

    RispondiElimina