Ok, di discussioni ce ne sono a iosa sul web riguardo le schede grafiche e Linux; ma voglio tenere traccia di quel che ho fatto io… Almeno come metodo, più che come How-To.
Dell’hardware di Elio/Kripton ho già parlato.
La scheda grafica è dunque una nVidia GF8600 GT (Silent 256 Mb).
lspci, con l’opzione -n, identifica il codice 10de:0402 (rev a1). [man: lspci è un utility che mostra informazioni riguardanti i bus PCI del sistema e i device connessi a quelle uscite; l'opzione -n mostra i codici del vendor e del device come numeri]
Una ricerca sul web verifica l’identità fra codice e scheda grafica.
In primis, qui stiamo parlando di stock kernel aka i kernel ufficiali passati dai repository di debian.
Dopo aver aggiornato kripton all’ultima versione (2.6.26) mi sono scaricato e installato xserver-xorg-core che è il server X famoso ecc. ecc.
Opzionalmente, se non si vuole scaricare tutti i pacchetti che dselect seleziona automaticamente, meglio controllare i driver e mantenere i vesa e nv che sono gli standard per la grafica 2D e van sempre bene (xserver-xorg-video-vesa 1:1.3.0-4 e xserver-xorg-video-nv 1:2.1.10-1).
Necessari anche gli input device (mouse e keyboard).
Già che ci siamo, per fare prove interessanti, è necessario tenere conto anche di un client con cui il server puo’ parlare, ad esempio Xterm.
Ho poi raccattato module-assistant e lanciato questa serie di comandi:
# m-a prepare
# m-a update
# m-a a-i nvidia
m-a è un po’ un casino e c’e’ parecchio materiale da leggere; fatto sta che installa autonomamente i driver che servono e aggiorna tutto (debian – nvidia-glx (173.14.09-5) per la GeForce 8600 GT – in Lenny).
Configurare xorg.conf puo’ essere un po’ uno sbattimento, ma risultare anche interessante.
Localmente, per vedere cosa permettono i driver nvidia, consultare /usr/share/ doc/nvidia-glx/ README.txt.gz.
Comunque il punto è aggiungere nella sezione modulo Load “glx” e cambiare il valore del driver con “nvidia”.
Ora se lanciando X (o startx, nel caso) compare il logo nvidia, stiamo sfruttando i driver giusti e tutto è andato bene. ^_^
Per la configurazione di xorg, meglio guardare man xorg.conf; e’ meno peggio di quel che sembra, ma c’e’ davvero un sacco di cose da sapere che non credo siano interessanti per tutti in qualunque momento – magari buone per futuri esperimenti.
Questo è lo xorg.conf di kripton, con anche qualche opzione in più per far andare Compiz.
Se per qualche ragione si decidesse di voler aprire X da remoto, si dovebbe modificare il valore di allowed-users con anybody nel file /etc/X11/Xwrapper.config.
PS: Per provare la grafica 3D trovate un modo… alla peggio quel coso terribile (imho) che è tuxrace.
Il comando history ci permette di visualizzare lo storico dei nostri comandi in console, con un output molto spartano:
sim@idrogeno:~$ history
29 ls /etc/alternatives/
30 ll /etc/alternatives/java
31 ll /etc/alternatives/figlet
32 ll /etc/alternatives/vim
33 cd ~/script/
34 vim fine_di_mondo.sh
35 echo $PATH
Potrebbe rivelarsi estremamente utile mantenere una traccia non solo dei comandi, ma anche di quando sono stati digitati.
Per fare questo è necessario settare una variabile (HISTTIMEFORMAT) con il formato desiderato e il gioco è fatto.
sim@idrogeno:~$ export HISTTIMEFORMAT=”%F %T ”
sim@idrogeno:~$ history
511 2008-11-02 01:38:05 history
512 2008-11-02 01:38:11 export HISTTIMEFORMAT=”%F %T ”
513 2008-11-02 01:38:14 history
514 2008-11-02 01:40:15 vim ~/.bashrc
515 2008-11-02 01:48:18 ls
516 2008-11-02 01:48:20 history
Con un export possiamo settare HISTTIMEFORMAT temporaneamente, ma per avere la storicizzazione di default è necessario scrivere la riga di export in ~/.bashrc o ~/.bash_profile.
Ennesima questione di colori…
A me piace vim, mi ci trovo benone. E mi fa comodo che evidenzi il testo degli script in maniera leggibile.
In linea generale, l’impostazione d’esempio fornita (/usr/share/vim/vim71/vimrc_example.vim) va alla grande. Unica pecca, i commenti blu scuro che su sfondo nero diventano difficili da identificare. E così si incominciano a leggere documentazioni varie e a rompere le balle a chi si conosce che potrebbe avere gli indizi necessari.
Seguendo la documentazione, spesso si legge di un’impostazione da inserire nel ~/.vimrc che risolve le cose in maniera rapida e veloce.
set background=dark
In effetti questa impostazione dice a vim che il background del terminale è scuro (c’è anche l’opzione light), e l’editor cambierà i toni dei colori di conseguenza, in modo da aumentare il contrasto. Il tutto rende il testo più leggibile, ma cambia i colori impostati.
Ammettiamo che vi piacciano i colori, ma quel commento blu proprio non vada giù…
La soluzione eccola qua: leggendo documentazione su syntax e guardando gli esempi nelle dir /colors (es.: /usr/share/vim/vim71/colors) si vede che è possibile settare i colori dei singoli parametri tramite il comando highlight (hi). Attualmente il problema è risolvibile aggiungendo all’inizio di .vimrc le righe come questa:
hi clearsyntax onhi Comment ctermfg=Gray ctermbg=Black
Porc. Doveva essere tutto semplice e liscio.
E invece sono stato un tot di ore su questa cosa.
Ora sono troppo stanco (ma felice di aver concluso) per scrivere.
Cmq per settare in automatico le connessioni ppp ed il riconoscimento delle interfacce (ethernet) ero partito da /etc/network/interfaces e sono arrivato a modificare le configurazioni di init (/etc/inittab).
Mi ci vorrà una nottata di riposo per riprendermi.
Mi sembrava in effetti che il vecchio interfaces avesse un po’ di “problemi”.
Attualmente /etc/network/interfaces risulta come segue:
auto lo eth0 eth1
iface eth0 inet static
address idrogeno # /etc/hosts 192.168.0.1 idrogeno
netmask 255.255.255.0iface eth1 inet static
address 0.0.0.0
netmask 0.0.0.0iface lo inet loopback
e /etc/inittab configura init con questo comando extra:
# Format:
# <id>:<runlevels>:<action>:<process>ADSL:2345:respawn:/usr/sbin/pppd call dsl-provider
Infine /etc/ppp/peers/dsl-provider ha visto cambiare alcune regole (evidenziate):
noipdefault
usepeerdns
defaultroutehide-password
lcp-echo-interval 20
lcp-echo-failure 3connect /bin/true
noauth
nopersist # <—
nodetach # <—
noproxyarp
mtu 1492noaccomp
default-asyncmapplugin rp-pppoe.so eth1
user “aliceadsl”