Vai al menù, saltando i contenuti (access key "m")
Appunti su Gentoo Linux.
Il server grafico X
Prima dell'installazione
Preparare il kernel.
Device Drivers ---> Input device support ---> <*> Event interface # SETTAGGI SPECIFICI PER SCHEDA NVIDIA Loadable module support ---> [*] Enable loadable module support Processor and Features ---> [*] MTRR (Memory Type Range Register) support Device Drivers ---> Graphics Support ---> [ ] /dev/agpgart (AGP Support) ---> Device Drivers ---> Graphics Support ---> <*> Support for frame buffer devices ---> < > nVidia Framebuffer Support < > nVidia Riva support <*> Userspace VESA VGA graphics support
Controllate che il symlink del kernel punti al giusto sorgente dopodiché ricompilate e riavviate il pc con il nuovo kernel.
NOTA: ogni volta che si installa un nuovo kernel i driver nvidia devono essere reinstallati. Potete farlo sia a mano che usando l'utility module-rebuild che ricompila tutti i moduli esterni al kernel che ne hanno bisogno.
NOTA: ogni volta che aggiornate i driver nvidia, senza aggiornare il kernel, affinché tutto funzioni dovete ricaricare nel kernel il nuovo modulo nvidia. Se non lo fate otterrete un errore di mismatch tra la versione caricata dal kernel e quella installata. Quindi o prima o dopo l'installazione dei nuovi driver nvidia, prima di rilanciare una sessione grafica, dovete dare il comando
rmmod nvidia
Quando rilancerete X, il nuovo modulo nvidia verrà caricato automaticamente.
Ora il kernel è adatto ad accettare i driver proprietari Nvidia (nvidia-drivers). Non serve installarli a mano. Bisogna passare a configurare per bene il file make.conf.
VIDEO_CARDS="nvidia" INPUT_DEVICES="evdev"
evdev è un nuovo strato del kernel per gestire gli eventi che vengono dai driver delle periferiche. Li traduce in uno standard intermedio e vengono poi inviati al server grafico.
Controllare le use flag. Attivare xorg, nptl, X, jpeg, png, gif, udev
.
Use flag gtk, tiff, ecc... invece abilitarle di volta in volta?
L'installazione di xorg e la configurazione
Per installare il server grafico dare il comando (2 ore di compilazione circa)
emerge xorg-server
C'è anche l'ebuild xorg-x11 che comprende il server e altre cose, tra cui molti font, ma non è molto utile per un server.
Alla fine dell'installazione eseguire
env-update source /etc/profile etc-update
Caricare il modulo nvidia nel kernel (forse questo step non è necessario perché viene fatto in automatico quando il server grafico si avvia)
modprobe nvidia lsmod update-modules
Aggiungere gli utenti al gruppo video
Selezionare interfaccia glx di nvidia
eselect opengl set nvidia
Per vedere se tutto funziona non basta lanciare startx perché mancano le applicazioni. Quindi o prima si installa twm, xterm e xclock e poi si lancia startx oppure si installa direttamente il desktop manager scelto, nel nostro caso, xfce e si proverà a lanciare quello.
Dopo aver lanciato startx o startxfce o in generale qualcosa di grafico che faccia partire il server X, se tutto funziona abbiamo finito. Se invece qualcosa non va dobbiamo agire a mano sulla configurazione del server grafico. Esistono due modi di configurare X, la configurazione finale è data dalla somma di questi due metodi che quindi possono essere usati insieme. Il file /etc/X11/xorg.conf e la directory /etc/X11/xorg.conf.d/. Nelle prossime sezioni vedremo come avviene la configurazione.
Nel caso si usino driver proprietari come i driver Nvidia usati nel mio caso, spesso il riconoscimento automatico di tutto il sistema da parte del server grafico, non funziona. Quindi si è obbligati a mettere mano alle impostazioni del server grafico, specificando che si vuole caricare il driver nvidia per la nostra scheda video.
10_modules.conf 20_serverflags.conf 30_videocard.conf 40_monitor.conf 50_screen1.conf 60_fonts.conf 70_mouse.conf 80_keyboard.conf
Per abilitare la sequenza CTRL_ALT_BACKSPACE per killare X scrivere nel file 80_keyboard.conf
Section "InputClass" Identifier "keyboard" MatchIsKeyboard "true" Driver "evdev" Option "XkbLayout" "it" Option "XkbOptions" "terminate:ctrl_alt_bksp" #Option "XkbOptions" "grp:alt_shift_toggle,grp:switch,compose:rwin,terminate:c EndSection
La riga importante è Option "XkbOptions" "terminate:ctrl_alt_bksp"
.
Le periferiche video e di input
Quali periferiche devono essere usate nel server grafico una volta veniva specificato nel file xorg.conf e doveva essere usato il driver kbd. Poi si è passati ad hal e evdev. In questo modo si abbandonava l'uso di xorg.conf e si dovevano usare le "policy": un gran casino. Con la versione 1.8 di Xorg e obbligatoriamente dalla 1.9 si è abbandonato hal e si è passati a udev. Con udev si è tornati a specificare i dispositivi di input all'interno di xorg.conf
udev è il gestore dei "device" in un sistema linux. Si occupa di creare i file di dispositivo nella direcotory /dev e di caricare i file necessari al loro funzionamento.
In realtà ora, oltre al classico xorg.conf si può usare anche la directory xorg.conf.d all'interno della quale si possono mettere tanti file di impostazione diversi che verranno caricati in ordine alfabetico.
Per specificare una tastiera diversa da quella americana (per guardare quali si hanno a disposizione guardare in /usr/share/X11/xkb/symbols.) o per impostare particolari opzioni per il mouse bisogna creare delle sezioni specifiche nel file xorg.conf oppure due file separati nella cartella xorg.conf.d.
Section "InputClass" Identifier "keyboard" Driver "evdev" Option "XkbLayout" "it" #Option "XkbVariant" "qwerty" #Option "XkbOptions" "grp:alt_shift_toggle,grp:switch,compose:rwin,terminate:ctrl_alt_bksp" MatchIsKeyboard "true" EndSection Section "InputClass" Identifier "mouse" Driver "evdev" MatchIsPointer "true" EndSection
I file li potremo chiamare 10-keyboard.conf e 20-mouse.conf. Le configurazioni appena viste sono molto semplici e non si fa nessun match specifico. In pratica stiamo dicendo che tutti i mouse e tutte le tastiere (abbiamo usato solo la regola MatchIs...) hanno le stesse caratteristiche. Per avere impostazioni diverse per tastiere diverse bisogna fare un match più specifico con altre opzioni apposite (cercare guide in rete).
Per quanto riguarda le opzioni specifiche per la tastiera o il mouse, sono le stesse che si usavano con xkb (quindi basta cercare su internet xkb per sapere tutte le opzioni a disposizione). E infatti i layout di tastiera si trovano in /usr/share/X11/xkb/symbols.
Da notare infine che queste impostazioni possono anche essere regolate facilmente all'interno del vostro Desktop Manager con interfacce grafiche apposite. Le opzioni scelte saranno salvate a livello del singolo utente e non a livello globale.
I font
Font: use flag: truetype-font, type1, truetype. Installare freetype, ttf-beatstream-vera, adobe-75 e adobe-100 (installati di default). Inoltre corefonts (i font truetype microsoft). Si consiglia anche terminus-font (ottimi font unicode fissi per la console/terminale). Modificare xorg.conf in maniera opportuna per caricare questi font. (aggiungere :unscaled a 75 e a 100).
Esecuzione del server grafico
startx? Impostazioni
~/.xinitrc variabile XSESSION /etc/X11/xinit/xinitrc
echo XSESSION="Xfce4" > /etc/env.d/90xsession
Le sessioni disponibili sono in
/etc/X11/Sessions
Server
~/.xserverrc /etc/X11/xinit/xserverrc
Soprattutto in un server è meglio lanciare l'interfaccia grafica manualmente con startx dopo aver settato in env.d la variabile d'ambiente XSESSION. Xfce si può far partire anche smeplicemente lanciando startxfce4 anziché startx. In questo modo non c'è neanche bisogno di settare XSESSION.
Altro
xorg.conf: logo, ram, ...
Side Band Addressing (SBA), Write ...
emerge mesa-progs (?)