Difference between revisions of "Xorg (Italiano)"

From ArchWiki
Jump to: navigation, search
m (revisionato tolto tag translateme)
m (update link)
(28 intermediate revisions by 10 users not shown)
Line 1: Line 1:
 
[[Category:X Server (Italiano)]]
 
[[Category:X Server (Italiano)]]
[[Category:Tutorials (Italiano)]]
+
[[cs:Xorg]]
{{i18n|Xorg}}
+
[[da:Xorg]]
 +
[[de:X]]
 +
[[el:Xorg]]
 +
[[en:Xorg]]
 +
[[es:Xorg]]
 +
[[fr:Xorg]]
 +
[[nl:Xorg]]
 +
[[pl:Xorg]]
 +
[[pt:Xorg]]
 +
[[ro:Xorg]]
 +
[[ru:Xorg]]
 +
[[tr:X_Sunucusu]]
 +
[[zh-CN:Xorg]]
 +
[[zh-TW:Xorg]]
 +
{{out_of_date}} {{Attenzione|Questa pagina è in fase di revisione e potrebbe non essere aggiornata. Seguite per ora le istruzioni della versione inglese.}}  
  
 +
{{Article summary start|Sommario}}
 +
{{Article summary text|An all-inclusive overview about installing and managing Xorg}}
 +
{{Article summary heading|Panoramica}}
 +
{{Article summary text|{{Graphical user interface overview (Italiano)}}}}
 +
{{Article summary heading|Articoli correlati}}
 +
{{Article summary wiki|ATI}}
 +
{{Article summary wiki|Intel}}
 +
{{Article summary wiki|NVIDIA}}
 +
{{Article summary end}}
  
 
'''Xorg''' è un'applicazione pubblica e open-source del sistema X-window versione 11. Dal momento che Xorg è la scelta più popolare tra gli utenti Linux, la sua ubiquità ha portato a renderlo un requisito sempre presente per le applicazioni GUI, con conseguente adozione massiccia dalla maggior parte delle distribuzioni. Consultare l'articolo di Wikipedia [[Wikipedia:X.Org Server|Xorg]] o visitare [http://www.x.org/wiki/ Xorg website] per ulteriori informazioni.
 
'''Xorg''' è un'applicazione pubblica e open-source del sistema X-window versione 11. Dal momento che Xorg è la scelta più popolare tra gli utenti Linux, la sua ubiquità ha portato a renderlo un requisito sempre presente per le applicazioni GUI, con conseguente adozione massiccia dalla maggior parte delle distribuzioni. Consultare l'articolo di Wikipedia [[Wikipedia:X.Org Server|Xorg]] o visitare [http://www.x.org/wiki/ Xorg website] per ulteriori informazioni.
Line 8: Line 31:
 
==Installazione==
 
==Installazione==
  
Prima di iniziare, assicurati di fare tutto questo:
+
Per prima cosa installare l'X server:
Assicurati che [[pacman]] sia configurato e aggiornato.
+
  # pacman -Syu xorg-server
  pacman -Syu
+
  
Per prima cosa dobbiamo installare l'intero gruppo "xorg":
+
Installare il pacchetto xorg-xinit se si preferisce avviare X senza un display manager:
  # pacman -S xorg
+
  # pacman -S xorg-xinit
  
Nella nuova modalità Xorg 1.8, non è necessario installare Hal. Udev rileva l'hardware in maniera autonoma. Ma non dimenticare di installare [[evdev]].
+
Facoltativamente, installare twm, xclock e xterm per l'ambiente predefinito di xorg-xinit:
  # pacman -S xf86-input-evdev
+
  # pacman -S xorg-twm xorg-xclock xterm
Dalla versione 1.8, Xorg non ha bisogno di Hal per rilevare l'hardware e i plugin, quindi si può rimuovere il demone hal dal file {{filename|/etc/rc.conf}} senza nessun problema.
+
Inoltre, {{filename|/etc/X11/xorg.conf}} diventa {{filename|/etc/X11/xorg.conf.d/*}}.
+
  
Usare {{codeline|X -configure}}, creando un file {{filename|xorg.conf}}, è sconsigliato per due motivi:
+
Sono inoltre disponibili le comode utilità di Xorg:
 +
# pacman -S xorg-utils xorg-server-utils.
  
- Xorg 1.8 propone una configurazione più specifica in file separati, quindi generare un unico file va in contrapposizione alle modalità operative del 1.8.
+
Udev dovrebbe essere in grado di rilevare tutto l'hardware senza problemi e evdev (xf86-input-evdev) è il moderno driver di input hotplugging per quasi tutti i dispositivi.
  
- {{filename|xorg.conf}} è parzialmente ignorato quando viene avviato Xorg.
+
Se evdev non supporta il proprio dispositivo, installare i driver necessari dal gruppo '''xorg-drivers''' (visualizzare una lista con {{Ic|pacman -Sg xorg-drivers}}).
  
Quindi, si cerchi di non usare {{codeline|xorg.conf}}.
+
Xorg-server può essere avviato col comando '''startx'''. (dal pacchetto xorg-xinit). Per impostazione predefinita, il comando avvia un ambiente di base con twm, xclock e xterm. È possibile passare ad un ambiente personalizzato modificando {{ic|~/.xinitrc}}.
  
Grazie a Udev e {{filename|/etc/X11/xorg.conf.d/10-evdev.conf}}, la tastiera, il mouse, il touchpad e il touchscreen dovrebbero funzionare bene. Provare:
+
{{Note|Si può anche iniziare X utilizzando un display manager come KDM. Consultare [[Display Manager]] per maggiori informazioni.}}
$ startx
+
+
{{keypress|Ctrl}}+{{keypress|Alt}}+{{keypress|←}} è stato rimosso da (default) Xorg. Per uscire, usare {{keypress|Ctrl}}+{{keypress|Alt}}+{{keypress|F1}} e terminare Xorg.
+
  
 
==Configurazione==
 
==Configurazione==
I file di configurazione si trovano in {{filename|/etc/X11/xorg.conf.d/}}.
 
  
Si dovrebbe avere {{filename|10-evdev.conf}} che gestisce la tastiera, il mouse, il touchpad e il touchscreen.
+
Xorg può essere configurato tramite {{ic|/etc/xorg.conf}} o {{ic|/etc/X11/xorg.conf}} e con i file di configurazione in {{ic|/etc/X11/xorg.conf.d/}}. Arch fornisce di default dei file di configurazione in {{ic|/etc/xorg.conf.d}}, e nella maggior parte dei casi non sono necessarie ulteriori configurazioni.
Si è liberi di creare nuovi file di configurazione, che devono però iniziare da XX- e terminare con .conf (per esempio 10 prima di 20).
+
 
 +
Si dovrebbe avere {{ic|10-evdev.conf}} che gestisce la tastiera, il mouse, il touchpad e il touchscreen.
 +
 
 +
Si è liberi di creare nuovi file di configurazione, che devono però iniziare da '''XX-''' e terminare con il suffisso '''.conf''' (per esempio 10 prima di 20).
  
 
===Touchpad//Synaptics===
 
===Touchpad//Synaptics===
Se si ha un laptop, si potrebbe anche voler installare il driver Synaptic.
+
 
# pacman -S xf86-input-synaptics
+
Se si ha un laptop, si potrebbe anche voler installare il pacchetto {{Pkg|xf86-input-synaptics}}.
 
   
 
   
Dopo l'installazione, si troverà {{filename|10-synaptics.conf}} nella cartella {{filename|/etc/X11/xorg.conf.d}}. Si potrà quindi commentare, o eliminare, la "InputClass" del touchpad in {{filename|10-evdev.conf}}.
+
Dopo l'installazione, si troverà {{ic|10-synaptics.conf}} nella cartella {{ic|/etc/X11/xorg.conf.d}}. Si potrà quindi commentare, o eliminare, la riga {{Ic|InputClass}} del touchpad in {{ic|10-evdev.conf}}.
  
 
===Schede Grafiche e Driver===
 
===Schede Grafiche e Driver===
Il driver 'vesa' non è un driver ottimale (non attiva l'accellerazione 3D e non supporta alcune risoluzioni), potrebbe essere necessario installare il driver adatto alla scheda video. Si può avere una lista di tutti i driver con il comando:
+
Il driver ({{Pkg|xf86-video-vesa}}) non è un driver ottimale (non attiva l'accellerazione 3D e non supporta alcune risoluzioni), potrebbe essere necessario installare il driver adatto alla scheda video.
  
 +
Per conoscere il nome della scheda installata sul proprio sistema
 +
$ lspci | grep "VGA"
 +
 +
Si può ottenere una lista di tutti i driver con il comando:
 
  # pacman -Ss xf86-video
 
  # pacman -Ss xf86-video
  
Verificare quale sia il driver appropriato per la propria scheda video, ed installarlo con
+
Driver comuni (open source):
 +
*nvidia: xf86-video-nouveau (vedere [[Nouveau]])
 +
*intel: xf86-video-intel (vedere [[Intel]])
 +
*ati: xf86-video-ati (vedere [[ATI]])
 +
<!--add more drivers with links to wiki pages here-->
  
# pacman -S xf86-video-NomePropriaScheda
+
====Driver proprietari====
  
Per conoscere il nome della scheda installata sul proprio sistema
+
Xorg dovrebbe funzionare senza problemi senza i driver "closed source", che in genere sono necessari solo per funzioni avanzate come il fast rendering con accelerazione 3D per i giochi, configurazioni dual-screen e TV-out. Consultare [[NVIDIA]] e [[Catalyst]].
  
$ lspci | grep "VGA"
+
=====Nvidia=====
  
====Utenti Nvidia====
+
Durante l'installazione, verrà creato un file di configurazione ({{ic|20-nvidia.conf}}) nella cartella {{ic|/etc/X11/xorg.conf.d}}. Permette a Xorg di utilizzare i driver NVIDIA all'avvio.
Durante l'installazione, verrà creato un file di configurazione in {{filename|/etc/X11/xorg.conf.D}} .  
+
Permette a Xorg di utilizzare i driver NVIDIA all'avvio.
+
{{warning|Non c'è più bisogno di {{codeline|nvidia-xconfig}},  questa riga di comando è deprecata perché crea {{filename|xorg.conf}}.
+
Se non si ha più il file di configurazione nvidia in {{filename|/etc/X11/xorg.conf.D}}, basta reinstallare il driver.}}
+
  
 
===Impostazioni del monitor===
 
===Impostazioni del monitor===
====Nvidia card====
 
{{codeline|nvidia-settings}} non aggiornerà il file {{filename|/etc/X11/xorg.conf.d/*}} e verrà creato {{filename|xorg.conf}}.
 
Quindi il consiglio è quello di imparare a creare un file di configurazione pulito invece di affidarsi alla ai sistemi di generazione automatica.
 
  
====Come fare====
+
==== Come iniziare ====
Per prima cosa, creare un nuovo file di configurazione, {{filename|/etc/X11/xorg.conf.d/10-monitor.conf}} per esempio.
+
# nano /etc/X11/xorg.conf.d/10-monitor.conf
+
Fare un "Copia e Incolla" con il seguente codice.
+
  
Section "Monitor"
+
{{Note|Questo passo è OPZIONALE e non dovrebbe essere fatto se non si sa cosa si sta facendo.}}
 +
{{Note|Questo passaggio è'''OBBLIGATORIO''' se si usano due monitor o i driver nouveau. Consultare [[Nouveau#Configuration]].}}
 +
 
 +
Per prima cosa, creare un nuovo file di configurazione, {{ic|/etc/X11/xorg.conf.d/10-monitor.conf}} per esempio.
 +
 
 +
Aggiungerci il seguente codice il seguente codice:
 +
 
 +
{{bc|<nowiki>
 +
Section "Monitor"
 
     Identifier    "Monitor0"
 
     Identifier    "Monitor0"
EndSection
+
EndSection
+
 
Section "Device"
+
Section "Device"
 
     Identifier    "Device0"
 
     Identifier    "Device0"
 
     Driver        "vesa" #Choose the driver used for this monitor
 
     Driver        "vesa" #Choose the driver used for this monitor
EndSection
+
EndSection
+
 
Section "Screen"
+
Section "Screen"
 
     Identifier    "Screen0"  #Collapse Monitor and Device section to Screen section
 
     Identifier    "Screen0"  #Collapse Monitor and Device section to Screen section
 
     Device        "Device0"
 
     Device        "Device0"
Line 92: Line 118:
 
         Modes    "1024x768_75.00" #Choose the resolution
 
         Modes    "1024x768_75.00" #Choose the resolution
 
     EndSubSection
 
     EndSubSection
EndSection
+
EndSection
+
</nowiki>}}
====Multi monitor/Schermo Dual====
+
 
{{warning|{{codeline|nvidia-settings}} e {{codeline|xrandr}} sono facili da eseguire MA creano il file di configurazione {{filename|xorg.conf}}.
+
====Multiple monitors/Dual screen====
Questi comandi non saranno spiegati.}}
+
 
 +
=====Nvidia=====
 +
Per ottenere un doppio schermo, è sufficiente modificare il file {{ic|/etc/X11/xorg.conf.d/10-monitor.conf}} fatto prima.
  
Per ottenere un doppio schermo, è sufficiente modificare il file {{filename|10-monitor.conf}} fatto prima.
+
Per ogni monitor "fisico", aggiungere un Monitor, Device, e una voce Screen Section, ed  aggiungere anche una sezione ServerLayout per gestirlo.  Occorre considerare che quando Xinerama è attivato, i driver proprietari nVidia disattivano automaticamente il compositing. Se si desidera il compositing, si dovrebbe commentare la linea Xinerama in "ServerLayout" e utilizzare Twinview (vedi sotto).
Ad un Monitor, Device e Screen Section per monitor, aggiungere un ServerLayout Section per gestirlo.
+
  
Section "ServerLayout"
+
{{bc|
 +
Section "ServerLayout"
 
     Identifier    "DualSreen"
 
     Identifier    "DualSreen"
 
     Screen      0 "Screen0"
 
     Screen      0 "Screen0"
 
     Screen      1 "Screen1" RightOf "Screen0" #Screen1 at the right of Screen0
 
     Screen      1 "Screen1" RightOf "Screen0" #Screen1 at the right of Screen0
 
     Option        "Xinerama" "1" #To move windows between screens
 
     Option        "Xinerama" "1" #To move windows between screens
EndSection
+
EndSection
+
 
Section "Monitor"
+
Section "Monitor"
 
     Identifier    "Monitor0"
 
     Identifier    "Monitor0"
     Option        "Enable" "true"  
+
     Option        "Enable" "true"
EndSection
+
EndSection
+
 
Section "Monitor"
+
Section "Monitor"
 
     Identifier    "Monitor1"
 
     Identifier    "Monitor1"
 
     Option        "Enable" "true"
 
     Option        "Enable" "true"
EndSection
+
EndSection
+
 
Section "Device"
+
Section "Device"
 
     Identifier    "Device0"
 
     Identifier    "Device0"
 
     Driver        "nvidia"
 
     Driver        "nvidia"
 
     Screen        0
 
     Screen        0
EndSection
+
EndSection
+
 
Section "Device"
+
Section "Device"
 
     Identifier    "Device1"
 
     Identifier    "Device1"
 
     Driver        "nvidia"
 
     Driver        "nvidia"
 
     Screen        1
 
     Screen        1
EndSection
+
EndSection
+
 
Section "Screen"
+
Section "Screen"
 
     Identifier    "Screen0"
 
     Identifier    "Screen0"
 
     Device        "Device0"
 
     Device        "Device0"
Line 140: Line 168:
 
         Modes          "1280x800_75.00"
 
         Modes          "1280x800_75.00"
 
     EndSubSection
 
     EndSubSection
EndSection
+
EndSection
+
 
Section "Screen"
+
Section "Screen"
 
     Identifier    "Screen1"
 
     Identifier    "Screen1"
 
     Device        "Device1"
 
     Device        "Device1"
Line 151: Line 179:
 
         Depth          24
 
         Depth          24
 
     EndSubSection
 
     EndSubSection
EndSection
+
EndSection
 +
}}
  
Come si può vedere, è di facile comprensione.
+
======TwinView======
 +
Se si desidera un solo grande schermo invece di due, cambiare l'argomento TwinView a 1.  Questa opzione deve essere usato al posto di Xinerama (vedi sopra), se si desidera il compositing.
 +
Option "TwinView" "1"
  
Ora si può proseguire.
+
======Utilizzo delle impostazioni Nvidia======
 
+
È inoltre possibile utilizzare lo strumento Nvidia-settings-tool. Con questo metodo verrà utilizzato il software proprietario che Nvidia mette a disposizione con il proprio driver. Basta accedere alle impostazioni come root, configurare come si desidera, e quindi salvare la configurazione in /etc/X11/xorg.conf.d/10-monitor.conf.
====TwinView====
+
Se si desidera un solo grande schermo invece di due, cambiare l'argomento TwinView a 1.
+
Option "TwinView" "1"
+
  
=====Più di una scheda grafica=====
+
=====Più schede grafiche=====
 
È necessario definire il driver da utilizzare ed aggiungere l'ID bus della scheda grafica.
 
È necessario definire il driver da utilizzare ed aggiungere l'ID bus della scheda grafica.
Section "Device"
+
{{bc|
 +
Section "Device"
 
     Identifier      "Screen0"
 
     Identifier      "Screen0"
     Driver          "nvidia"
+
     Driver          "nouveau"
 
     BusID          "PCI:0:12:0"
 
     BusID          "PCI:0:12:0"
EndSection
+
EndSection
+
 
Section "Device"
+
Section "Device"
 
     Identifier      "Screen1"
 
     Identifier      "Screen1"
 
     Driver          "radeon"
 
     Driver          "radeon"
 
     BusID          "PCI:1:0:0"
 
     BusID          "PCI:1:0:0"
EndSection
+
EndSection
+
}}
 +
 
 
Per ottenere l'ID bus :
 
Per ottenere l'ID bus :
 
  $ lspci | grep VGA
 
  $ lspci | grep VGA
  01:00.0 VGA compatible controller: nVidia Corporation G96 [GeForce 9600M GT] (rev a1)  
+
  01:00.0 VGA compatible controller: nVidia Corporation G96 [GeForce 9600M GT] (rev a1)
 +
 
 
Nell'esempio, l'ID bus è 1:0:0.
 
Nell'esempio, l'ID bus è 1:0:0.
 +
 +
=====Script per passare dal display interno/esterno nei portatili=====
 +
Lo script può essere utilizzato per la scorciatoia da tastiera.
 +
{{bc|<nowiki>
 +
#!/bin/bash
 +
 +
IN="LVDS1"
 +
EXT="VGA1"
 +
 +
if (xrandr | grep "$EXT" | grep "+")
 +
    then
 +
    xrandr --output $EXT --off --output $IN --auto
 +
    else
 +
        if (xrandr | grep "$EXT" | grep " connected")
 +
            then
 +
            xrandr --output $IN --off --output $EXT --auto
 +
        fi
 +
fi
 +
</nowiki>}}
 +
 +
Per controllare i nomi dei display interno ed esterno:
 +
{{bc|
 +
# xrandr -q
 +
}}
 +
 +
In caso {{ic|xrandr}} non sia installato:
 +
{{bc|
 +
# pacman -S xorg-xrandr
 +
}}
 +
 +
====Dimensione dello schermo e DPI====
 +
 +
'''D:''' Come fa l'Xorg server a calcolare il DPI? <br />
 +
'''R:''' Il DPI dell'X server è determinato nel modo seguente:
 +
 +
# L'opzione riga di comando dpi ha la massima priorità.
 +
# Se questa non viene utilizzata, l'impostazione della dimensione dello schermo nel file di configurazione di X, è utilizzata per determinare il DPI, data la risoluzione dello schermo.
 +
# Se non viene fornita la dimensione schermo, i valori di dimensione del monitor DDC vengono utilizzati per ricavare la DPI, data la risoluzione dello schermo.
 +
# Se il DDC non specifica una dimensione, il valore DPI 75 viene utilizzato di default.
 +
 +
Per ottenere una corretta impostazione dei "punti per pollice" (DPI), la dimensione del display deve essere conosciuta oppure impostata.  Impostare correttamente il DPI è necessario soprattutto quando è richiesta una risoluzione fine (come per il rendering dei font).  In precedenza i produttori cercavano di creare uno standard per 96 DPI (un monitor 10.3 " in diagonale sarebbe 800x600, un monitor 13,2" 1024x768).  I monitor attuali possono essere di un qualsiasi numero di DPI e questo non può corrispondere orizzontalmente e verticalmente. Ad esempio, un LCD 19" widescreen 1440x900 può avere un DPI di 89x87. Per essere in grado di impostare il DPI, il server Xorg tenta di rilevare automaticamente la dimensione fisica dello schermo del monitor tramite la scheda grafica con [http://en.wikipedia.org/wiki/Display_Data_Channel DDC].  Quando il server Xorg sarà a conoscenza della dimensione fisica dello schermo, sarà anche in grado di impostare il corretto DPI a seconda delle dimensioni di risoluzione.
 +
 +
Per verificare se le dimensioni del display e DPI sono rilevati e calcolati correttamente:
 +
 +
$ xdpyinfo | grep dimensions
 +
$ xdpyinfo | grep "dots per inch"
 +
 +
Verificare che le dimensioni corrispondano alla dimensione di visualizzazione. Se il server Xorg non è in grado di calcolare correttamente le dimensioni dello schermo, il valore verrà predefinito a 75x75 DPI e si dovrà calcolarlo ed impostarlo manualmente.
 +
 +
Se si dispone di indicazioni sulla dimensione fisica dello schermo, possono essere inserite nel file di configurazione di Xorg, in modo che il DPI  corretto venga calcolato come segue:
 +
 +
{{bc|
 +
Section "Monitor"
 +
    Identifier "Monitor0"
 +
    DisplaySize 286 179    # In millimeters
 +
EndSection
 +
}}
 +
 +
Se si desidera inserire solamente le specifiche del monitor senza creare un file xorg.conf completo, in primo luogo creare un nuovo file di configurazione, per esempio, {{ic|/etc/X11/xorg.conf.d/90-monitor.conf}}.
 +
# nano /etc/X11/xorg.conf.d/10-monitor.conf
 +
Copiare e incollare il seguente codice:
 +
 +
{{bc|
 +
Section "Monitor"
 +
    Identifier "<default monitor>"
 +
    DisplaySize 286 179    # In millimeters
 +
EndSection
 +
}}
 +
 +
Se non si dispone di specifiche per la larghezza e l'altezza dello schermo orizzontale e fisico (attualmente la maggior parte delle specifiche sono elencate solo per dimensione diagonale), è possibile utilizzare la risoluzione nativa del monitor (o rapporto di aspetto) e di lunghezza diagonale per calcolare le dimensioni fisiche orizzontali e verticali. Utilizzando il teorema di Pitagora in uno schermo con diagonale 13,3", con risoluzione nativa 1280x800 (o aspect ratio 16:10):
 +
 +
echo 'scale=5;sqrt(1280^2+800^2)' | bc  # 1509.43698
 +
 +
Questo darà la lunghezza della diagonale in pixel e con questo valore si possono ottenere le lunghezze fisiche orizzontali e verticali (e convertirle in millimetri):
 +
 +
{{bc|<nowiki>
 +
echo 'scale=5;(13.3/1509)*1280*25.4' | bc  # 286.43072
 +
echo 'scale=5;(13.3/1509)*800*25.4' | bc  # 179.01920
 +
</nowiki>}}
 +
 +
{{Note|Questo calcolo funziona per le dimensioni di più tipi di monitor, tuttavia vi sono monitor più economici che di rado possono comprimere il rapporto di aspetto (per esempio la risoluzione 16:10 a 16:9) in tal caso si dovrebbe misurare la dimensione dello schermo manualmente.}}
 +
 +
===== Impostazione manuale DPI =====
 +
 +
Il DPI può essere impostato manualmente solo se si prevede di utilizzare una risoluzione:
 +
 +
{{bc|
 +
Section "Monitor"
 +
    Identifier "Monitor0"
 +
    Option  "DPI" "96 x 96"
 +
EndSection
 +
}}
 +
 +
Se si utilizza una scheda Nvidia, è possibile impostare manualmente il DPI aggiungendo le seguenti opzioni su ''/etc/X11/xorg.conf.d/20-nvidia.conf'' (nella sezione '''Device'''):
 +
 +
Option "UseEdidDpi" "False"
 +
Option  "DPI" "96 x 96"
 +
 +
Per i driver compatibili con RandR, è possibile impostare:
 +
 +
xrandr --dpi 96
 +
 +
Consultare [[Execute commands after X start]] per salvare le modifiche.
 +
 +
====DPMS====
 +
 +
Il DPMS (Display Power Management Signaling) è una tecnologia che permette il risparmio energetico dei monitor quando il computer non è in uso. Ciò permetterà di avere monitor che vanno automaticamente in standby dopo un determinato periodo .
 +
Si veda: [[DPMS]]
  
 
===Disabilitare Input Hot-plugging===
 
===Disabilitare Input Hot-plugging===
Line 186: Line 325:
 
     Option "AutoAddDevices" "False"
 
     Option "AutoAddDevices" "False"
 
  EndSection
 
  EndSection
{{Note|Questa operazione disabiliterà l'hot-plugging di Xorg per '''tutti''' i dispositivi di input e si riavranno le caratteristiche proprie di xorg-server 1.4. È molto più conveniente configurare i dispositivi con udev che con xorg.conf. Per tanto , disabilitare  Hot-plugging, '''non è consigliato!''' Consultare: [[Xorg Input Hotplugging]]}}
+
{{Attenzione|Questa operazione disabiliterà l'hot-plugging di Xorg per '''tutti''' i dispositivi di input e si riavranno le caratteristiche proprie di xorg-server 1.4. È molto più conveniente configurare i dispositivi con udev che con xorg.conf. Per tanto , disabilitare  Hot-plugging, '''non è consigliato!''' Consultare: [[Xorg Input Hotplugging]]}}
  
===InputClasses===
+
===InputClasses ===
 
'''Preso da: https://fedoraproject.org/wiki/Input_device_configuration'''
 
'''Preso da: https://fedoraproject.org/wiki/Input_device_configuration'''
  
 
Gli inputClasses sono una nuova sezione di configurazione che non si applica ad un singolo dispositivo ma piuttosto ad una classe di dispositivi, compresi i dispositivi dinamici. Una sezione InputClass è limitata dalle ''parti'' specificate da applicare ad un dispositivo di input: tutte le parti saranno applicate a un dispositivo. Un esempio viene riportato di seguito:
 
Gli inputClasses sono una nuova sezione di configurazione che non si applica ad un singolo dispositivo ma piuttosto ad una classe di dispositivi, compresi i dispositivi dinamici. Una sezione InputClass è limitata dalle ''parti'' specificate da applicare ad un dispositivo di input: tutte le parti saranno applicate a un dispositivo. Un esempio viene riportato di seguito:
  
<pre>
+
{{bc|
 
Section "InputClass"
 
Section "InputClass"
  Identifier      "touchpad catchall"
+
    Identifier      "touchpad catchall"
  MatchIsTouchpad "on"
+
    MatchIsTouchpad "on"
  Driver          "synaptics"
+
    Driver          "synaptics"
 
EndSection
 
EndSection
</pre>
+
}}
  
Se questo frammento è presente nel file {{Filename|xorg.conf}} o xorg.conf.d, ad ogni touchpad eventualmente presente nel sistema verrà assegnato il driver Synaptics. Si noti che a causa dell'ordine di precedenza (ordinamento alfanumerico dei frammenti xorg.conf.d) l'impostazione del driver sovrascrive le opzioni del driver precedentemente impostato, il più generico della classe, quello che dovrebbe essere elencato per primo. Il frammento di default fornito con il pacchetto xorg-x11-drv-00-Xorg è {{Filename|00-evdev.conf}} e applica il driver evdev a tutti i dispositivi di input.
+
Il prossimo frammento potrebbe anche essere utile:
 +
{{bc|
 +
Section "InputClass"
 +
        Identifier "evdev touchpad catchall"
 +
        MatchIsTouchpad "on"
 +
        MatchDevicePath "/dev/input/event*"
 +
        Driver "evdev"
 +
EndSection
 +
}}
 +
 
 +
Se questo frammento è presente nel file {{ic|xorg.conf}} o xorg.conf.d, ad ogni touchpad eventualmente presente nel sistema verrà assegnato il driver Synaptics. Si noti che a causa dell'ordine di precedenza (ordinamento alfanumerico dei frammenti xorg.conf.d) l'impostazione del driver sovrascrive le opzioni del driver precedentemente impostato, il più generico della classe, quello che dovrebbe essere elencato per primo. Il frammento di default fornito con il pacchetto xorg-x11-drv-00-Xorg è {{ic|00-evdev.conf}} e applica il driver evdev a tutti i dispositivi di input.
  
 
Le opzioni di abbinamento specificano a quali dispositivi può essere applicata una sezione. Per abbinare un dispositivo, tutte le righe devono essere applicate. Le righe seguenti sono supportate (con esempi):
 
Le opzioni di abbinamento specificano a quali dispositivi può essere applicata una sezione. Per abbinare un dispositivo, tutte le righe devono essere applicate. Le righe seguenti sono supportate (con esempi):
* {{Codeline|MatchIsPointer}}, {{Codeline|MatchIsKeyboard}}, {{Codeline|MatchIsTouchpad}}, {{Codeline|MatchIsTouchscreen}}, {{Codeline|MatchIsJoystick}} &ndash; opzioni booleane da applicare ad un gruppo di dispositivi.
+
* {{Ic|MatchIsPointer}}, {{Ic|MatchIsKeyboard}}, {{Ic|MatchIsTouchpad}}, {{Ic|MatchIsTouchscreen}}, {{Ic|MatchIsJoystick}} &ndash; opzioni booleane da applicare ad un gruppo di dispositivi.
* {{Codeline|MatchProduct "foo&#124;bar"}}: abbina ogni dispositivo con il nome di un prodotto contenente sia "foo" che "bar"
+
* {{Ic|MatchProduct "foo&#124;bar"}}: abbina ogni dispositivo con il nome di un prodotto contenente sia "foo" che "bar"
* {{Codeline|MatchVendor "foo&#124;bar&#124;baz"}}: abbina ogni dispositivo la cui stringa del vendor contenga "foo", "bar", o "baz"
+
* {{Ic|MatchVendor "foo&#124;bar&#124;baz"}}: abbina ogni dispositivo la cui stringa del vendor contenga "foo", "bar", o "baz"
* {{Codeline|MatchDevicePath "/dev/input/event*"}}: abbina con qualsiasi dispositivo con un percorso di dispositivo corrispondente alla patch data (vedi fnmatch (3) per il modello di permesso)
+
* {{Ic|MatchDevicePath "/dev/input/event*"}}: abbina con qualsiasi dispositivo con un percorso di dispositivo corrispondente alla patch data (vedi fnmatch (3) per il modello di permesso)
* {{Codeline|MatchTag "foo&#124;bar"}}: abbina con qualsiasi dispositivo il cui tag sia "foo" o "bar". I tag possono essere assegnati dal backend config, udev nel nostro caso, per etichettare i dispositivi che hanno bisogno di configurazioni particolari.
+
* {{Ic|MatchTag "foo&#124;bar"}}: abbina con qualsiasi dispositivo il cui tag sia "foo" o "bar". I tag possono essere assegnati dal backend config, udev nel nostro caso, per etichettare i dispositivi che hanno bisogno di configurazioni particolari.
  
 
Una sezione d'esempio per configurazioni specifiche è la seguente:
 
Una sezione d'esempio per configurazioni specifiche è la seguente:
  
<pre>
+
{{bc|
 
Section "InputClass"
 
Section "InputClass"
  Identifier    "lasermouse slowdown"
+
    Identifier    "lasermouse slowdown"
  MatchIsPointer "on"
+
    MatchIsPointer "on"
  MatchProduct  "Lasermouse"
+
    MatchProduct  "Lasermouse"
  MatchVendor    "LaserMouse Inc."
+
    MatchVendor    "LaserMouse Inc."
  Option        "ConstantDeceleration" 20
+
    Option        "ConstantDeceleration" 20
 
EndSection
 
EndSection
</pre>
+
}}
  
 
Questa sezione dovrebbe corrispondere a un dispositivo di puntamento contenente "Lasermouse", da "Lasermouse Inc", e applicare una decelerazione costante di 20 su questo dispositivo.
 
Questa sezione dovrebbe corrispondere a un dispositivo di puntamento contenente "Lasermouse", da "Lasermouse Inc", e applicare una decelerazione costante di 20 su questo dispositivo.
 
  
 
Alcuni dispositivi possono venire abilitati dal server X, quando in realtà non lo dovrebbero essere. Questi dispositivi possono essere configurati per essere ignorati:
 
Alcuni dispositivi possono venire abilitati dal server X, quando in realtà non lo dovrebbero essere. Questi dispositivi possono essere configurati per essere ignorati:
<pre>
+
 
 +
{{bc|
 
Section "InputClass"
 
Section "InputClass"
  Identifier    "no need for accelerometers in X"
+
    Identifier    "no need for accelerometers in X"
  MatchProduct  "accelerometer"
+
    MatchProduct  "accelerometer"
  Option        "Ignore" "on"
+
    Option        "Ignore" "on"
 
EndSection
 
EndSection
</pre>
+
}}
  
 
====Esempio di configurazioni====
 
====Esempio di configurazioni====
Line 241: Line 390:
  
 
Se possedete un computer con un Trackpoint (un Thinkpad per esempio) si può aggiungere quanto segue al file xorg.conf per usare il tasto centrale emulando la rotellina del mouse:
 
Se possedete un computer con un Trackpoint (un Thinkpad per esempio) si può aggiungere quanto segue al file xorg.conf per usare il tasto centrale emulando la rotellina del mouse:
<pre>
+
 
 +
{{bc|
 
Section "InputClass"
 
Section "InputClass"
  Identifier    "Wheel Emulation"
+
    Identifier    "Wheel Emulation"
  MatchIsPointer "on"
+
    MatchIsPointer "on"
  MatchProduct  "TrackPoint"
+
    MatchProduct  "TrackPoint"
  Option        "EmulateWheelButton" "2"
+
    Option        "EmulateWheelButton" "2"
  Option "EmulateWheel" "on"
+
    Option "EmulateWheel" "on"
 
EndSection
 
EndSection
</pre>
+
}}
  
 
Per il supporto completo al trackpoint (compreso lo scorrimento orizzontale), è possibile utilizzare il seguente:
 
Per il supporto completo al trackpoint (compreso lo scorrimento orizzontale), è possibile utilizzare il seguente:
<pre>
+
{{bc|<nowiki>
 
Section "InputClass"
 
Section "InputClass"
Identifier "Trackpoint Wheel Emulation"
+
    Identifier "Trackpoint Wheel Emulation"
MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device"
+
    MatchProduct "TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device"
MatchDevicePath "/dev/input/event*"
+
    MatchDevicePath "/dev/input/event*"
Option "EmulateWheel" "true"
+
    Option "EmulateWheel" "true"
Option "EmulateWheelButton" "2"
+
    Option "EmulateWheelButton" "2"
Option "Emulate3Buttons" "false"
+
    Option "Emulate3Buttons" "false"
Option "XAxisMapping" "6 7"
+
    Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
+
    Option "YAxisMapping" "4 5"
 
EndSection
 
EndSection
</pre>
+
</nowiki>}}
  
 
=====Esempio: Tap-to-click=====
 
=====Esempio: Tap-to-click=====
 
Il tap-to-click può essere attivato nella finestra di configurazione del mouse (nella scheda touchpad), ma se si ha bisogno di questa funzionalità già abilitata al gdm, la specifica seguente è quella più adatta:
 
Il tap-to-click può essere attivato nella finestra di configurazione del mouse (nella scheda touchpad), ma se si ha bisogno di questa funzionalità già abilitata al gdm, la specifica seguente è quella più adatta:
<pre>
+
{{bc|
 
Section "InputClass"
 
Section "InputClass"
      Identifier "tap-by-default"
+
    Identifier "tap-by-default"
      MatchIsTouchpad "on"
+
    MatchIsTouchpad "on"
      Option "TapButton1" "1"
+
    Option "TapButton1" "1"
 
EndSection
 
EndSection
</pre>
+
}}
  
 
=====Esempio: la tastiera ed il modello su Acer 5920G Laptop=====
 
=====Esempio: la tastiera ed il modello su Acer 5920G Laptop=====
  
Il modello e il layout della tastiera può essere impostato nel file {{filename|/etc/X11/xorg.conf.d/keyboard.conf}} o qualsiasi altro file .conf nella stessa directory.
+
Il modello e il layout della tastiera può essere impostato nel file {{ic|/etc/X11/xorg.conf.d/keyboard.conf}} o qualsiasi altro file .conf nella stessa directory.
  
* {{Codeline|MatchIsKeyboard "yes"}}: impostare il dispositivo di input per una tastiera
+
* {{Ic|MatchIsKeyboard "yes"}}: imposta il dispositivo di input per una tastiera
* {{Codeline|Option "XkbLayout" "be"}}: impostare il layout di tastiera alla lingua belga. Si può sostituire {{Codeline|be}} con qualsiasi altro layout.
+
* {{Ic|Option "XkbLayout" "it"}}: imposta il layout di tastiera alla lingua italiana. Si può sostituire {{Ic|it}} con qualsiasi altro layout.
* {{Codeline|Option "XkbModel" "acer_laptop"}}: impostare il modello di tastiera per una tastiera di computer portatile Acer. Si può sostituire {{Codeline|acer_laptop}} con il proprio layout.
+
* {{Ic|Option "XkbModel" "acer_laptop"}}: imposta il modello di tastiera per una tastiera di computer portatile Acer. Si può sostituire {{Ic|acer_laptop}} con il proprio layout.
 +
* {{Ic|Option "XkbVariant" "sundeadkeys"}}: imposta la variante layout ai Sun dead keys. Si può omettere l'opzione {{Ic|XkbVariant}} utilizzando la variante predefinita.
 +
laptop keyboard.  Si può sostituire {{Ic|acer_laptop}} con il layout di tastiera attuale.
  
Si noti che un elenco di layout di tastiera e modelli possono essere trovati in {{filename|/usr/share/X11/xkb/rules/base.lst}}
+
Si noti che un elenco di layout di tastiera e modelli possono essere trovati in {{ic|/usr/share/X11/xkb/rules/base.lst}}
  
<pre>
+
{{bc|
 
Section "InputClass"
 
Section "InputClass"
 
     Identifier            "Keyboard Defaults"
 
     Identifier            "Keyboard Defaults"
 
     MatchIsKeyboard        "yes"
 
     MatchIsKeyboard        "yes"
    Option                "XkbLayout" "be"
 
 
     Option                "XkbModel" "acer_laptop"
 
     Option                "XkbModel" "acer_laptop"
 +
    Option                "XkbLayout" "it"
 +
    Option                "XkbVariant" "sundeadkeys"
 
EndSection
 
EndSection
</pre>
+
}}
 
+
=== Dimensione dello schermo e DPI ===
+
 
+
'''D:''' Come fa l'Xorg server a calcolare il DPI? <br />
+
'''R:''' Il DPI dell'X server è determinato nel modo seguente:
+
 
+
# L'opzione riga di comando dpi ha la massima priorità.
+
# Se questa non viene utilizzata, l'impostazione della dimensione dello schermo nel file di configurazione di X, è utilizzata per determinare il DPI, data la risoluzione dello schermo.
+
# Se non viene fornita la dimensione schermo, i valori di dimensione del monitor DDC vengono utilizzati per ricavare la DPI, data la risoluzione dello schermo.
+
# Se il DDC non specifica una dimensione, il valore DPI 75 viene utilizzato di default.
+
 
+
Per ottenere una corretta impostazione dei "punti per pollice" (DPI), la dimensione del display deve essere conosciuta oppure impostata.  Impostare correttamente il DPI è necessario soprattutto quando è richiesta una risoluzione fine (come per il rendering dei font).  In precedenza i produttori cercavano di creare uno standard per 96 DPI (un monitor 10.3 " in diagonale sarebbe 800x600, un monitor 13,2" 1024x768).  I monitor attuali possono essere di un qualsiasi numero di DPI e questo non può corrispondere orizzontalmente e verticalmente.  Per essere in grado di impostare il DPI, il server Xorg tenta di rilevare automaticamente la dimensione fisica dello schermo del monitor tramite la scheda grafica con [http://en.wikipedia.org/wiki/Display_Data_Channel DDC].  Quando il server Xorg sarà a conoscenza della dimensione fisica dello schermo, sarà anche in grado di impostare il corretto DPI a seconda delle dimensioni di risoluzione.
+
 
+
Per verificare se le dimensioni del display e DPI sono rilevati e calcolati correttamente:
+
 
+
$ xdpyinfo | grep dimensions
+
$ xdpyinfo | grep "dots per inch"
+
 
+
Verificare che le dimensioni corrispondano alla dimensione di visualizzazione. Se il server Xorg non è in grado di calcolare correttamente le dimensioni dello schermo, il valore verrà predefinito a 75x75 DPI e si dovrà calcolarlo ed impostarlo manualmente.
+
 
+
Se si dispone di indicazioni sulla dimensione fisica dello schermo, possono essere inserite nel file di configurazione di Xorg, in modo che il DPI  corretto venga calcolato come segue:
+
<pre>
+
Section "Monitor"
+
    Identifier "Monitor0"
+
    DisplaySize 286 179    # In millimeters
+
EndSection
+
</pre>
+
 
+
Se non si dispone di specifiche per la larghezza e l'altezza dello schermo orizzontale e fisico (attualmente la maggior parte delle specifiche sono elencate solo per dimensione diagonale), è possibile utilizzare la risoluzione nativa del monitor (o rapporto di aspetto) e di lunghezza diagonale per calcolare le dimensioni fisiche orizzontali e verticali. Utilizzando il teorema di Pitagora in uno schermo con diagonale 13,3", con risoluzione nativa 1280x800 (o aspect ratio 16:10):
+
 
+
echo 'scale=5;sqrt(1280^2+800^2)' | bc  # 1509.43698
+
 
+
Questo darà la lunghezza della diagonale in pixel e con questo valore si possono ottenere le lunghezze fisiche orizzontali e verticali (e convertirle in millimetri):
+
 
+
<pre>
+
echo 'scale=5;(13.3/1509)*1280*25.4' | bc  # 286.43072
+
echo 'scale=5;(13.3/1509)*800*25.4' | bc  # 179.01920
+
</pre>
+
 
+
{{Note|Questo calcolo funziona per le dimensioni di più tipi di monitor, tuttavia vi sono monitor più economici che di rado possono comprimere il rapporto di aspetto (per esempio la risoluzione 16:10 a 16:9) in tal caso si dovrebbe misurare la dimensione dello schermo manualmente.}}
+
 
+
Il DPI può essere impostato anche se si prevede di utilizzare solo una risoluzione:
+
 
+
<pre>
+
Section "Monitor"
+
    Identifier "Monitor0"
+
    Option  "DPI" "96 x 96"
+
EndSection
+
</pre>
+
 
+
Se per qualche strano motivo i driver nvidia non impostano il DPI corretto, è possibile disattivare il rilevamento automatico:
+
 
+
  Option  "UseEdidDpi" "false"
+
 
+
Per i driver RandR compatibili, è possibile impostare con:
+
 
+
xrandr --dpi 96
+
 
+
Si può aggiungere il comando al proprio {{Filename|.xinitrc}} per applicare le impostazioni DPI quando si avvia X manualmente.
+
  
 
===Impostazioni della tastiera===
 
===Impostazioni della tastiera===
Line 357: Line 451:
 
Xorg potrebbe fallire nel riconoscere correttamente la tastiera. Ciò potrebbe dare problemi con il layout della tastiera o con il modello, non essendo impostata correttamente.
 
Xorg potrebbe fallire nel riconoscere correttamente la tastiera. Ciò potrebbe dare problemi con il layout della tastiera o con il modello, non essendo impostata correttamente.
  
Per trovare una lista completa di modelli di tastiera, layout, varianti e opzioni, si apra:
+
Per trovare una lista completa di modelli di tastiera, layout, varianti e opzioni, si apra {{ic|/usr/share/X11/xkb/rules/xorg.lst}}.
 
+
/usr/share/X11/xkb/rules/xorg.lst
+
  
 
Per impostare la mappatura della tastiera per la sessione corrente di Xorg
 
Per impostare la mappatura della tastiera per la sessione corrente di Xorg
Line 365: Line 457:
 
  # setxkbmap dvorak
 
  # setxkbmap dvorak
  
=====Impostare la mappatura della tastiera con  Hot-Plugging=====
+
====Ritardo di ripetizione e frequenza dei tasti====
Per rendere le modifiche permanenti, si aggiunga a {{filename|xorg.conf}}:
+
 
<pre>
+
Usare {{Ic|xset r rate DELAY RATE}} per modificarli, e [[xinitrc]] per salvare i cambiamenti.
 +
 
 +
====Visualizzazione delle impostazioni della tastiera====
 +
  $ setxkbmap -print -verbose 10
 +
{{bc|
 +
Setting verbose level to 10
 +
locale is C
 +
Applied rules from evdev:
 +
model:      evdev
 +
layout:    us
 +
options:    terminate:ctrl_alt_bksp
 +
Trying to build keymap using the following components:
 +
keycodes:  evdev+aliases(qwerty)
 +
types:      complete
 +
compat:    complete
 +
symbols:    pc+us+inet(evdev)+terminate(ctrl_alt_bksp)
 +
geometry:  pc(pc104)
 +
xkb_keymap {
 +
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
 +
        xkb_types    { include "complete"      };
 +
        xkb_compat    { include "complete"      };
 +
        xkb_symbols  { include "pc+us+inet(evdev)+terminate(ctrl_alt_bksp)"    };
 +
        xkb_geometry  { include "pc(pc104)"    };
 +
};
 +
}}
 +
 
 +
====Impostare la mappatura della tastiera con  Hot-Plugging====
 +
Per rendere le modifiche permanenti, si aggiunga a {{ic|xorg.conf}}:
 +
{{bc|
 
Section "InputClass"
 
Section "InputClass"
 
     Identifier            "Keyboard Defaults"
 
     Identifier            "Keyboard Defaults"
Line 373: Line 493:
 
     Option           "XkbLayout" "dvorak"
 
     Option           "XkbLayout" "dvorak"
 
EndSection
 
EndSection
</pre>
+
}}
  
 
Si noti che questo è in una sezione InputClass e non la sezione InputDevice per la tastiera.
 
Si noti che questo è in una sezione InputClass e non la sezione InputDevice per la tastiera.
  
===== Impostare la mappatura della tastiera senza Hot-Plugging (deprecato) =====
+
====Impostare la mappatura della tastiera senza Hot-Plugging (deprecato)====
 
{{Note|Cambiare il layout di tastiera con questo metodo richiede la disabilitazione dell'inserimento hot-plugging.}}
 
{{Note|Cambiare il layout di tastiera con questo metodo richiede la disabilitazione dell'inserimento hot-plugging.}}
 +
 
Per cambiare il layout della tastiera, si usi l'opzione XkbLayout nella sezione InputDevice keyboard. Per esempio, se si possiede una tastiera con layout italiano:
 
Per cambiare il layout della tastiera, si usi l'opzione XkbLayout nella sezione InputDevice keyboard. Per esempio, se si possiede una tastiera con layout italiano:
  
<pre>
+
{{bc|
 
Section "InputDevice"
 
Section "InputDevice"
 
     Identifier    "Keyboard0"
 
     Identifier    "Keyboard0"
Line 387: Line 508:
 
     Option "XkbLayout" "it"
 
     Option "XkbLayout" "it"
 
EndSection
 
EndSection
</pre>
+
}}
  
 
Per cambiare il modello della tastiera, si usi l'opzione XkbModel nella sezione InputDevice keyboard. per esempio, nel caso di una tastiera Microsoft Wireless Multimedia:
 
Per cambiare il modello della tastiera, si usi l'opzione XkbModel nella sezione InputDevice keyboard. per esempio, nel caso di una tastiera Microsoft Wireless Multimedia:
Line 393: Line 514:
 
  Option "XkbModel" "microsoftmult"
 
  Option "XkbModel" "microsoftmult"
  
====Scambiare tra diversi layout della tastiera====
+
====Cambio tra diversi layout della tastiera====
 +
''Note: Bisognerà installare {{Pkg|xorg-xkbevd}} e aggiungere {{ic|xkbevd}} alla stringa DAEMONS in {{ic|/etc/rc.conf}}.''
  
Per facilitare il cambiamento dei layout della tastiera, per esempio tra un layout americano e uno svedese si usi invece:
+
Per facilitare il cambiamento dei layout della tastiera, modificare le Options usate in entrambi i metodi descritti sopra. Per esempio, per passare tra un layout americano e uno svedese e con il tasto Blocco Maiuscole attivato, creare un file {{ic|/etc/X11/xorg.conf.d/01-keyboard-layout.conf}} ed aggiungerci il contenuto seguente:
 +
Section "InputClass"
 +
        Identifier "keyboard-layout"
 +
        Driver "evdev"
 +
        MatchIsKeyboard "yes"
 +
        Option "XkbLayout"  "us, se"
 +
        Option "XkbOptions" "grp:caps_toggle"
 +
EndSection
  
Option "XkbLayout" "us, se"
+
È possibile ottenere un elenco di possibili opzioni di {{ic|grp:}} in {{ic|/usr/share/X11/xkb/rules/xorg.lst}} (localizzabili all'incirca a metà del file).
Option "XkbOptions" "grp:caps_toggle"
+
  
Questo fa sì che il tasto Blocco Maiuscole cambi i differenti layout. Ciò è particolarmente utile se non si sta usando un DE che si occupa dei layout della tastiera.
+
In alternativa, è possibile aggiungere quanto segue in {{ic|.xinitrc}}:
  
====Disabilitare permanentemente i tasti del mouse====
+
setxkbmap -layout "us, se" -option "grp:caps_toggle"
  
Per disabilitare permanentemente i tasti del mouse e prevenire la loro abilitazione tramite Shift+NumLock o Shift+Alt+NumLock, si editi:
+
Ciò è particolarmente utile se non si sta usando un DE che si occupa dei layout della tastiera.
/usr/share/X11/xkb/compat/complete
+
e si commenti:
+
augment "mousekeys"
+
augment "accessx(full)"
+
  
===DPMS===
+
====Abilitare i pointerkeys====
Il DPMS (Display Power Management Signaling) è una tecnologia che permette il risparmio energetico dei monitor quando il computer non è in uso. Ciò permetterà di avere monitor che vanno automaticamente in standby dopo un determinato periodo .
+
I [[Wikipedia:Mouse keys|mouse keys]] ora sono disabilitati per default e devono essere attivati manualmente:
Si veda: [[DPMS]]
+
{{hc|/etc/X11/xorg.conf.d/20-enable-pointerkeys.conf|<nowiki>Section "InputClass"
 +
    Identifier      "Keyboard Defaults"
 +
    MatchIsKeyboard "yes"
 +
    Option          "XkbOptions" "keypad:pointerkeys"
 +
EndSection</nowiki>}}
  
===Driver proprietari===
+
Si può anche eseguire:
 +
$ setxkbmap -option keypad:pointerkeys
 +
Entrambi i metodi abiliteranno la scorciatoia Shift+NumLock.
 +
===Fonts===
 +
Su [[Font Configuration]] ci sono alcuni suggerimenti riguardo la configurazione dei font.
  
Se si vuole usare driver grafici di terze parti, controllare innanzitutto che il server X funzioni correttamente. Xorg dovrebbe essere fluido anche senza driver ufficiali, che sono necessari solo per funzioni avanzate come l'accelerazione 3D, il supporto al dual-screen, e l'uscita TV. Si veda [[NVIDIA]] per aiuto con i driver nVidia o [[ATI | ATI wiki]] per i driver ATI.
+
===Mouse Cursors===
 
+
See [[X11 Cursors]].
===Font===
+
 
+
Ci sono alcuni suggerimenti sui font in [[Xorg Font Configuration]].
+
  
 
===Modello di file xorg.conf===
 
===Modello di file xorg.conf===
Chiunque abbia redatto un file Xorg.conf funzionante, vada avanti e condivida qui un link ad esso per permettere ad altri di consultarlo. Per piacere non si inserisca tutto il file di configurazione; lo si carichi da qualche altra parte e si incolli il link.<br />
+
Chiunque abbia redatto un file {{ic|xorg.conf}} funzionante, vada avanti e condivida qui un link ad esso per permettere ad altri di consultarlo. Non si inserisca tutto il file di configurazione; lo si carichi da qualche altra parte e si incolli il link.<br />
 
'''Si inseriscano solo configurazioni di hotplugging, altrimenti si avvisi che la propria configurazione non usa l'input hotplugging.''' (Xorg 1.8 = udev)
 
'''Si inseriscano solo configurazioni di hotplugging, altrimenti si avvisi che la propria configurazione non usa l'input hotplugging.''' (Xorg 1.8 = udev)
  
===== - Un Esempio: xorg.conf & xorg.conf.d/10-evdev.conf =====
+
===== - Un Esempio: {{ic|xorg.conf}} & {{ic|/etc/X11/xorg.conf.d/10-evdev.conf}} =====
Questo è un esempio di file di configurazione che utilizza {{filename|xorg.conf.d/10-evdev.conf}} per il layout della tastiera:<br />
+
Questo è un esempio di file di configurazione che utilizza {{ic|xorg.conf.d/10-evdev.conf}} per il layout della tastiera:<br />
 
+
''Note: le sezioni "InputDevice" cono commentate, questo perchè ora sarà {{ic|/etc/X11/xorg.conf.d/10-evdev.conf}} a farsi carico delle configurazioni.''
{{Note| le sezioni "InputDevice" cono commentate, questo perchè ora sarà 10-evdev.conf a prendersi carico delle configurazioni.}}
+
  {{ic|xorg.conf}}: http://pastebin.com/raw.php?i=EuSKahkn
  xorg.conf: http://pastebin.com/raw.php?i=EuSKahkn
+
  {{ic|/etc/X11/xorg.conf.d/10-evdev.conf}}: http://pastebin.com/raw.php?i=4mPY35Mw>
  xorg.conf.d/10-evdev.conf: http://pastebin.com/raw.php?i=4mPY35Mw>
+
{{ic|/etc/X11/xorg.conf.d/10-monitor.conf}} (VMware): http://pastebin.com/raw.php?i=fJv8EXGb
 +
{{ic|/etc/X11/xorg.conf.d/10-monitor.conf}} (KVM): http://pastebin.com/raw.php?i=NRz7v0Kn
  
 
==Eseguire Xorg==
 
==Eseguire Xorg==
  
Se si sta utilizzando Xorg 1.8  o più recente, non è necessario aggiungere HAL alla lista DAEMONS o avviare hal per far si che funzioni correttamente Xorg'''. HAL potrebbe anche essere richiesto da altre applicazioni. Lanciare il comando
+
[[Daemon (Italiano)#Avvio e blocco manuale|Avviare il demone dbus]] ed aggiungerlo alla [[Rc.conf#Daemons|stringa demoni]] in modo da avviarlo automaticamente insieme al sistema.
  
  pacman -Qi hal | grep Required
+
Infine, avviare Xorg:
 +
  $ startx
 +
o
 +
$ xinit -- /usr/bin/X -nolisten tcp
  
per controllare quali applicazioni ancora necessitino che HAL sia avviato.
+
{{Note|Se Xorg è appena stato installato, ci sarà un file vuoto chiamato .xinitrc nella $HOME, e bisogna, o cancellarlo o compilarlo per avviare correttamente X. Nel caso in cui non lo si faccia, X mostrerà una schermata vuota e non compariranno errori in Xorg.0.log. Semplicemente cancellandolo si otterrà un ambiente X di base.}}
  
{{Nota| Se non si sta utilizzando un linguaggio locale Inglese, è probabile che dovreste sostituire la parola "Required" con la sua traduzione locale. Per l'italiano utilizzare "Richiesto".}}
+
L'ambiente base di X è piuttosto semplice, e solitamente si cerca di installare un window manager o un desktop environments per completare X. Una lista d'opzioni utili è presente in [[Common Applications#Window Managers (WM)]].
  
{{warning|La stampante potrebbe non funzionare senza hal nella lista dei demoni in {{filename|/etc/rc.conf}} per Xorg 1.8.}}
+
Se si dovesse presentare qualche problema, allora si consulti il log in {{ic|/var/log/Xorg.0.log}}. Si cerchi qualsiasi riga che cominci per {{Ic|(EE)}} che sta ad indicare gli errori, ed anche {{Ic|(WW)}} che avvisa di possibili altre conseguenze.
  
Si aggiunga [[HAL|hal]] alla lista [[DAEMONS]] del file {{Filename|/etc/[[rc.conf]]}}:
+
===Metodi per l'avvio dell'ambiente grafico===
 +
Seguono un paio di metodi per l'avvio di un ambiente grafico dalla riga di comando.
 +
{{Note|Se si utilizza un ambiente desktop completo (Gnome, KDE, ecc), potrebbe essere più utile leggere la relativa pagina wiki.}}
  
DAEMONS=(syslog-ng '''hal''' network netfs crond)
+
====Utilizzo dei runlevel====
 +
Per impostazione predefinita, Linux è configurato per avere diversi [[runlevels]]. Arch viene avviato per default al runlevel 3. Il runlevel 5 è in genere utilizzato in per il caricamento del server X.
 +
Editare il file {{ic|/etc/inittab}}. Nell'ultima sezione alla fine del file, decommentare la riga appropriata per il display manager del proprio ambiente desktop. Per esempio, per XDM (X Display manager) dovrebbe essere simile a questo:
 +
# Example lines for starting a login manager
 +
x:5:respawn:/usr/bin/xdm -nodaemon
 +
#x:5:respawn:/usr/sbin/gdm -nodaemon
 +
#x:5:respawn:/usr/bin/kdm -nodaemon
 +
#x:5:respawn:/usr/bin/slim >/dev/null 2>&1
  
Se si vuole avviare HAL manualmente:
+
Ora, è sufficiente avviare il proprio ambiente desktop:
 +
# init 5
  
# /etc/rc.d/hal start
+
====Utilizzo di {{ic|~/.xinitrc}}====
 +
Questo metodo implica ulteriori configurazioni.
  
HAL avvia automaticamente dbus, ma se avete rimosso HAL dalla lista dei DAEMONS, allora dovrete aggiungere dbus:
+
Prima di tutto bisogna configurare {{ic|~/.xinitrc}}
  
  DAEMONS=(syslog-ng '''dbus''' network netfs crond)
+
Una delle funzioni principali di questo file è quello di dettare a '''X''' ciò che è invocato con {{ic|/usr/bin/startx}} a livello globale e/o con {{ic|/usr/bin/xinit}} a livello utente. (Lo script '''startx''' è solo un front-end per il più versatile comando '''xinit'''.) Ci sono moltissimi altri tipi di specifiche configurazioni e comandi che possono essere aggiunte a {{ic|~/.xinitrc}} come  ulteriore personalizzazione del sistema. Consultare [[xinitrc]] per ulteriori informazioni.
   
+
 
Avviare hal:
+
{{Note | {{ic|~/.xinitrc}} è un così chiamato "dot" (.) file. I file che sono preceduti da un punto (.) in un filesystem *nix are "nascosti", e non verranno mostrati con una normale comando "ls", solitamente per la buona abitudine di mantenere in ordine le directory. I dot file sono visibili tramite il comando '''ls -a'''. Il suffisso "rc" significa ''Run Commands'' e indica semplicemente che si tratta di un file di configurazione. Dal momento che controlla come un programma viene eseguito, è anche chiamato (ma storicamente non corretto!) &quot;Run Control&quot;.}}
 +
 
 +
I comandi '''startx''' e '''xinit''' avviano il server '''X''' ed i client. Per determinare il client da eseguire, '''startx/xinit''' cercherà di analizzare prima un file {{ic|~/.xinitrc}} nella home directory dell'utente. Se il file {{ic|~/.xinitrc}} non esistesse, si rivolgerà di default al file globale {{ic|xinitrc}}, nella cartella xinit; {{ic|/etc/X11/xinit/xinitrc}}, usa di default il window manager TWM, quindi, se si richiama startx senza il file {{ic|~/.xinitrc}}, si avvierà una sessione TWM. Ulteriori approfondimenti nella pagina wiki [[.xinitrc]].
 +
 
 +
Passare all'utente '''''normale, non-root''''':
 +
 
 +
  # su - ''yourusername''
 +
 
 +
* {{ic|/etc/skel/}} contiene i file e le directory necessarie a fornire valori predefiniti corretti agli account utente appena creati. Il nome '''skel''' è derivato dalla parola '''skeleton''', perché i file in esso contenuti costituiscono la struttura di base per le home directory degli utenti.
 +
{{Note | Un modello di file {{ic|~/.xinitrc}} sarà reperibile in {{ic|/etc/skel}} una volta installato il pacchetto '''xorg-xinit'''.}}
 +
 
 +
* Un file {{ic|~/.xinitrc}} d'esempio è reperibile [[Xinitrc#A_standard_.xinitrc | qui]]
 +
Copiare il file d'esempio {{ic|xinitrc}} da {{ic|/etc/skel/}} alla propria cartella home:
 +
 
 +
$ cp /etc/skel/.xinitrc ~/
 +
Editare il file {{ic|~/.xinitrc}} e decommentare la riga corrispondente al proprio Desktop Environment. Per esempio, se si usa Xterm, dovrebbe essere un qualcosa di simile:
 +
 
 +
{{bc|
 +
#!/bin/sh
 +
#
 +
# ~/.xinitrc
 +
#
 +
# Executed by startx (run your window manager from here)
 +
 
 +
# exec gnome-session
 +
# exec startkde
 +
# exec startxfce4
 +
# exec wmaker
 +
# exec icewm
 +
# exec blackbox
 +
# exec fluxbox
 +
# exec openbox-session
 +
# ...or the Window Manager of your choice
 +
exec xterm
 +
}}
  
# /etc/rc.d/hal start
+
{{Note | ''Assicurarsi di avere '''una sola''' riga '''exec''' decommentata in {{ic|~/.xinitrc}}''.}}
  
Alla fine, avviare Xorg:
+
Ora siamo pronti per lanciare X. Avviare '''X''' da utente '''normale, non-root''' con:
  
 
  $ startx
 
  $ startx
Line 467: Line 645:
 
  $ xinit
 
  $ xinit
  
{{Note|Se si ha appena installato Xorg, ci sarà un file vuoto chiamato .xinitrc nella $HOME che occorre o cancellare o compilare per avviare correttamente X. Nel caso in cui non lo si faccia, X mostrerà una schermata vuota e non compariranno errori in Xorg.0.log. Semplicemente cancellandolo si otterrà un'istanza di X di base.}}
+
Il desktop dovrebbe ora avviarsi. È possibile verificare la tastiera e il suo layout, come anche usare il mouse.
  
L'ambiente base di X è piuttosto semplice, e solitamente si cerca di installare un window manager o un desktop environments per completare X. Una lista d'opzioni utili è presente in [[Common Applications#Window Managers (WM)]].
+
In caso di problemi con l'automount, provare a utilizzare il seguente comando in {{ic|~/.xinitrc}}.  (Sostituire "startxfce4" con il comando appropriato per il proprio window manager/DE.)
 +
exec ck-launch-session startxfce4
 +
Ciò garantirà che le differenti variabili d'ambiente siano impostate correttamente avviando una sessione consolekit pulita. ConsoleKit è un framework per tenere traccia dei vari utenti, delle sessioni, e delle sedi presenti in un sistema. Fornisce un meccanismo software che reagisce ai cambiamenti di qualsiasi di questi elementi o dei metadati ad essi associati. Lavora in parallelo con dbus, e altri strumenti.
  
Se si dovesse presentare qualche problema, allora si consulti il log in {{Filename|/var/log/Xorg.0.log}}. Si cerchi qualsiasi riga che cominci per {{Codeline|(EE)}} che sta ad indicare gli errori, ed anche {{Codeline|(WW)}} che avvisa di possibili altre conseguenze.
+
{{note|Assicurarsi di aver installato il pacchetto {{Pkg|consolekit}}.}}
  
==Trucchi e consigli==
+
==Suggerimenti==
  
===Modifiche allo script di avvio di X (/usr/bin/startx)===
+
===Modifiche allo script di avvio di X ({{ic|/usr/bin/startx}})===
Per le opzioni di X si consulti
+
Per le opzioni di X si consulti:
 
  $ man Xserver
 
  $ man Xserver
  
Le seguenti opzioni devono essere aggiunte alla variabile {{Codeline|"defaultserverargs"}} nel file {{Filename|/usr/bin/startx}}.
+
Le seguenti opzioni devono essere aggiunte alla variabile {{Ic|"defaultserverargs"}} nel file {{ic|/usr/bin/startx}}.
  
 
* abilitare il caricamento ritardato dei glyph per i font a 16 bit:
 
* abilitare il caricamento ritardato dei glyph per i font a 16 bit:
 
  -deferglyphs 16
 
  -deferglyphs 16
  
Nota: Se si avvia X con kdm, sembra che lo script startx non venga eseguito. Queste opzioni devono essere aggiunte alla variabile {{Codeline|"ServerArgsLocal"}} o {{Codeline|"ServerCmd"}} nel file {{Filename|/usr/share/config/kdm/kdmrc}}.
+
Nota: Se si avvia X con kdm, sembra che lo script startx non venga eseguito. Queste opzioni devono essere aggiunte alla variabile {{Ic|"ServerArgsLocal"}} o {{Ic|"ServerCmd"}} nel file {{ic|/usr/share/config/kdm/kdmrc}}.
  
 
Le opzioni di kdm predefinite sono:
 
Le opzioni di kdm predefinite sono:
Line 502: Line 682:
 
Questo lancerà una sessione Window Maker in una finestra 1024x768 dentro la sessione corrente di X.
 
Questo lancerà una sessione Window Maker in una finestra 1024x768 dentro la sessione corrente di X.
  
==Troubleshooting==
+
Richiede l'installazione del pacchetto {{Pkg|xorg-server-xnest}}.
 +
 
 +
==Risoluzione dei problemi==
 
===Problemi comuni===
 
===Problemi comuni===
 
Se Xorg non dovesse avviarsi, o lo schermo fosse completamente nero, non funzionassero tastiera e mouse, ecc., innanzitutto si effettuino questi semplici passaggi:
 
Se Xorg non dovesse avviarsi, o lo schermo fosse completamente nero, non funzionassero tastiera e mouse, ecc., innanzitutto si effettuino questi semplici passaggi:
*Controllare il file di log: {{codeline|cat /var/log/Xorg.0.log}}
+
*Controllare il file di log: {{Ic|cat /var/log/Xorg.0.log}}
 
*Installare i driver di input (tastiera, mouse, joystick, tablet, ecc...):
 
*Installare i driver di input (tastiera, mouse, joystick, tablet, ecc...):
  # pacman -S xf86-input-evdev
 
 
*Alla fine, cercare i problemi più comuni negli articoli riguardanti [[ATI]], [[Intel]] e [[NVIDIA]].
 
*Alla fine, cercare i problemi più comuni negli articoli riguardanti [[ATI]], [[Intel]] e [[NVIDIA]].
  
Line 514: Line 695:
  
 
====Con input hot-plugging====
 
====Con input hot-plugging====
Nella maggior parte delle situazioni, usare configurazioni specifiche per l'utente è meglio di quelle generali per il sistema.
+
=====Configurazione globale di sistema=====
  
{{Note|In GNOME, queste impostazioni generali del sistema non hanno effetto. Ogni utente deve andare in Sistema-> Preferenze -> Tastiera -> Layouts -> [tasto] Opzioni -> Sequenza di tasti per uccidere il server X [espandere con il triangolo a sinistra]. Quindi si controlli l'opzione Ctrl + Alt + Backspace.}}
+
Aggiungere in {{ic|/etc/X11/xorg.conf.d/10-evdev.conf}} la seguente sezione:
 +
{{bc|
 +
Section "InputClass"
 +
    Identifier          "Keyboard Defaults"
 +
    MatchIsKeyboard "yes"
 +
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
 +
EndSection
 +
}}
  
=====Configurazioni per tutto il sistema=====
+
{{Note|In KDE, questa impostazione a livello di sistema non ha effetto. Per ripristinare, andare su Impostazioni di sistema e cliccare su 'Input Devices'. In questa nuova finestra fare clic sulla scheda Tastiera e quindi selezionare la casella "Enable Keyboard layouts". Questo vi permetterà di fare clic sulla scheda Avanzate. In questa nuova finestra, espandere la voce relativa "Sequenza di tasti per terminare il server X" e assicurarsi che Control + Alt + Backspace sia selezionato. Fare clic su Applica e chiudere la finestra Impostazioni di sistema. Ora si riavrà la funzionalità CTRL-ALT-Backspace su KDE.}}
 
+
Si aggiunga
+
Option  "XkbOptions" "terminate:ctrl_alt_bksp"
+
a InputClass in questo modo:
+
Section "InputClass"
+
    Identifier            "Keyboard Defaults"
+
    MatchIsKeyboard "yes"
+
    Option         "XkbLayout"  "dvorak"
+
    Option                "XkbOptions" "terminate:ctrl_alt_bksp"
+
  EndSection
+
  
=====Specifiche dell'utente=====
+
=====Configurazione specifica dell'utente=====
Un altro modo consiste nell'aggiungere questa linea a {{Filename|~/.xinitrc}}
+
Un altro modo consiste nell'aggiungere questa linea a [[xinitrc]]:
 
  setxkbmap -option terminate:ctrl_alt_bksp
 
  setxkbmap -option terminate:ctrl_alt_bksp
  
{{Note|Nel caso si utilizzi un manager grafico di login come (K/G/X)DM o Slim, sarà necessario avviare il comando setxkbmap sopra indicato assieme al tempo di login del WM/DE. ~/.config/autostart di solito è usato a questo scopo (usando i file .desktop). Funziona anche con ~/.bashrc.}}
+
{{Note|Questa configurazione non funziona su Gnome 3.}}
  
 
====Senza input hot-plugging====
 
====Senza input hot-plugging====
Il nuovo Xorg disabilita di base la sua uccisione con {{Keypress|Ctrl}}+{{Keypress|Alt}}+{{Keypress|Backspace}}. Si può riabilitarla aggiungendo la seguente linea in {{Filename|/etc/X11/xorg.conf}},
+
Il nuovo Xorg disabilita di default il metodo di venire terminato con {{Keypress|Ctrl}}+{{Keypress|Alt}}+{{Keypress|Backspace}}. Si può riabilitarla aggiungendo la seguente linea in {{ic|/etc/X11/xorg.conf}},
 
  Option  "XkbOptions" "terminate:ctrl_alt_bksp"  
 
  Option  "XkbOptions" "terminate:ctrl_alt_bksp"  
alla sezione {{codeline|InputDevice}} per la tastiera.
+
alla sezione {{Ic|InputDevice}} per la tastiera.
  
 
===Problemi con tastiere Apple===
 
===Problemi con tastiere Apple===
Line 553: Line 731:
 
Se ottenete il messaggio di errore "Client is not authorized to connect to server" (il client non è autorizzato a connettersi al server), provate ad aggiungere la seguente stringa:
 
Se ottenete il messaggio di errore "Client is not authorized to connect to server" (il client non è autorizzato a connettersi al server), provate ad aggiungere la seguente stringa:
 
  session        optional        pam_xauth.so
 
  session        optional        pam_xauth.so
al file {{filename|/etc/pam.d/su}}. {{codeline|pam_xauth}} sarà quindi impostato per gestire le chiavi di {{codeline|xauth}} e le variabili d'ambiente.
+
al file {{ic|/etc/pam.d/su}}. {{Ic|pam_xauth}} sarà quindi impostato per gestire le chiavi di {{Ic|xauth}} e le variabili d'ambiente.
 
+
=== Librerie mancanti ===
+
* '''Messaggio di errore eseguendo il mio programma preferito, il quale dice che la libreria "libXqualcosa" non esiste!'''<br>
+
Nella maggior parte dei casi, tutto ciò che è necessario fare è prendere il nome della libreria (es. {{filename|libXau.so.1}}), considerarla tutta in minuscolo, rimuovere l'estensione e dire a pacman di installarla con:
+
# pacman -S libxau
+
 
+
===Fallisce la compilazione dei pacchetti; missing X11 includes===
+
Reinstallare i pacchetti xproto e libx11:
+
# pacman -S xproto libx11
+
  
 
===Programmi che richiedono "font '(null)'"===
 
===Programmi che richiedono "font '(null)'"===
 
*Messaggio di errore: "''unable to load font `(null)'.''" (Impossibile caricare il tipo di carattere (null))
 
*Messaggio di errore: "''unable to load font `(null)'.''" (Impossibile caricare il tipo di carattere (null))
Alcuni programmi funzionano solo con i font bitmap. Sono disponibili due pacchetti principali con i font bitmap, xorg-fonts-75dpi e xorg-fonts-100dpi. Non vi è la necessità di installarli entrambi: uno solo di essi dovrebbe essere sufficiente. Per scoprire quale dei due pacchetti è più indicato per le vostre esigenze, lanciate il seguente comando in un terminale:
+
Alcuni programmi funzionano solo con i font bitmap. Sono disponibili due pacchetti principali con i font bitmap, {{Pkg|xorg-fonts-75dpi}} e {{Pkg|xorg-fonts-100dpi}}. Non vi è la necessità di installarli entrambi: uno solo di essi dovrebbe essere sufficiente. Per scoprire quale dei due pacchetti è più indicato per le vostre esigenze, lanciate il seguente comando in un terminale:
 
  $ xdpyinfo | grep resolution
 
  $ xdpyinfo | grep resolution
 
quindi installate il pacchetto che più si avvicina al vostro dato (75 o 100 al posto di XX)
 
quindi installate il pacchetto che più si avvicina al vostro dato (75 o 100 al posto di XX)
Line 572: Line 741:
  
 
===Problemi con la modalità Frame-buffer===
 
===Problemi con la modalità Frame-buffer===
Se il server X fallisce all'avvio e controllando il corrispettivo file log ({{filename |/var/log/Xorg.0.log}}), notate il seguente messaggio:
+
Se il server X fallisce all'avvio e controllando il corrispettivo file log ({{ic|/var/log/Xorg.0.log}}), notate il seguente messaggio:
(WW) Falling back to old probe method for fbdev
+
{{bc|1=
(II) Loading sub module "fbdevhw"
+
(WW) Falling back to old probe method for fbdev
(II) LoadModule: "fbdevhw"
+
(II) Loading sub module "fbdevhw"
(II) Loading /usr/lib/xorg/modules/linux//libfbdevhw.so
+
(II) LoadModule: "fbdevhw"
(II) Module fbdevhw: vendor="X.Org Foundation"
+
(II) Loading /usr/lib/xorg/modules/linux//libfbdevhw.so
        compiled for 1.6.1, module version=0.0.2
+
(II) Module fbdevhw: vendor="X.Org Foundation"
        ABI class: X.Org Video Driver, version 5.0
+
      compiled for 1.6.1, module version=0.0.2
(II) FBDEV(1): using default device
+
      ABI class: X.Org Video Driver, version 5.0
+
(II) FBDEV(1): using default device
Fatal server error:
+
 
Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices
+
Fatal server error:
 +
Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices
 +
}}
 
Disinstallate fbdev:
 
Disinstallate fbdev:
 
  # pacman -R xf86-video-fbdev
 
  # pacman -R xf86-video-fbdev
Line 589: Line 760:
 
=== DRI smette di funzionare con le schede Matrox ===
 
=== DRI smette di funzionare con le schede Matrox ===
  
Se usate una scheda Matrox e DRI smette di funzionare dopo aver aggiornato a xorg7, provate ad aggiungere la riga
+
Se usate una scheda Matrox e DRI smette di funzionare dopo aver aggiornato Xorg, provate ad aggiungere la riga:
 
  Option "OldDmaInit" "On"
 
  Option "OldDmaInit" "On"
alla sezione Device che fa riferimento alla vostra scheda video nello xorg.conf.
+
alla sezione Device che fa riferimento alla vostra scheda video nello {{ic|xorg.conf}}.
  
 
===Ripristino: disattivare Xorg prima della schermata di login===
 
===Ripristino: disattivare Xorg prima della schermata di login===
Se Xorg è impostato per avviarsi automaticamente e per qualche motivo è necessario evitare che si avvii prima che si presenti la schermata di login o che si entri nella propria sessione grafica (se ad esempio {{filename|rc.conf}} è erroneamente configurato e Xorg non riconosce il mouse o la tastiera), è possibile disattivare il suo caricamento in due modi.  
+
Se Xorg è impostato per avviarsi automaticamente e per qualche motivo è necessario evitare che si avvii prima che si presenti la schermata di login o che si entri nella propria sessione grafica (se ad esempio {{ic|rc.conf}} è erroneamente configurato e Xorg non riconosce il mouse o la tastiera), è possibile disattivare il suo caricamento in due modi.  
  
 
*Dal menu di GRUB, è possibile specificare il runlevel nella linea del kernel aggiungendo un numero alla fine della riga del kernel specificando il livello di esecuzione che si desidera. L'esempio seguente imposta il livello di esecuzione a 3:  
 
*Dal menu di GRUB, è possibile specificare il runlevel nella linea del kernel aggiungendo un numero alla fine della riga del kernel specificando il livello di esecuzione che si desidera. L'esempio seguente imposta il livello di esecuzione a 3:  
Line 600: Line 771:
 
   kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/..ro 3
 
   kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/..ro 3
  
* Se oltre ad avere problemi con il file {{filename|rc.conf}}, avete anche impostato il tempo di attesa del menu di GRUB a zero, o non potete altrimenti utilizzare grub per impedire l'avvio di Xorg, è possibile utilizzare il CD live di Arch. Avviare il CD live ed effettuate il login come root. A questo punto necessitate di un punto di mount, ad esempio {{filename|/mnt}}, ed è necessario conoscere il nome della partizione che si desidera montare al suo interno.
+
* Se oltre ad avere problemi con il file {{ic|rc.conf}}, avete anche impostato il tempo di attesa del menu di GRUB a zero, o non potete altrimenti utilizzare grub per impedire l'avvio di Xorg, è possibile utilizzare il CD live di Arch. Avviare il CD live ed effettuate il login come root. A questo punto necessitate di un punto di mount, ad esempio {{ic|/mnt}}, ed è necessario conoscere il nome della partizione che si desidera montare al suo interno.
  
 
:Potete utilizzare il comando,
 
:Potete utilizzare il comando,
 
   # fdisk -l
 
   # fdisk -l
:per vedere le vostre partizioni.  Di solito, quello che si desidera sarà simile a {{filename|/dev/sda1}}. Dopodiché montate la vostra partizione in {{filename|/mnt}}, utilizzando il comando  
+
:per vedere le vostre partizioni.  Di solito, quello che si desidera sarà simile a {{ic|/dev/sda1}}. Dopodiché montate la vostra partizione in {{ic|/mnt}}, utilizzando il comando  
 
   # mount /dev/sda1 /mnt
 
   # mount /dev/sda1 /mnt
  
:In questo modo il file-system verrà visualizzato sotto {{filename|/mnt}}. Così facendo il vostro file {{filename|rc.conf}}, per esempio, sarà presente nell'indirizzo  {{filename|/mnt/etc/rc.conf}}. Da qui potate eliminare il modulo {{codeline|gdm}} ( o similare) per impedire l'avvio di Xorg normalmente, o apportare altre modifiche necessarie.
+
:In questo modo il file-system verrà visualizzato sotto {{ic|/mnt}}. Così facendo il vostro file {{ic|rc.conf}}, per esempio, sarà presente nell'indirizzo  {{ic|/mnt/etc/rc.conf}}. Da qui potate eliminare il modulo {{Ic|gdm}} ( o similare) per impedire l'avvio di Xorg normalmente, o apportare altre modifiche necessarie.
 +
 
 +
===Errore di X all'avvio : Inizializzazione della tastiera fallito===
 +
Se il disco rigido è pieno, startx fallisce. La fine di {{ic|/var/log/Xorg.0.log}} sarà:
 +
(EE) Error compiling keymap (server-0)
 +
(EE) XKB: Couldn't compile keymap
 +
(EE) XKB: Failed to load keymap. Loading default keymap instead.
 +
(EE) Error compiling keymap (server-0)
 +
(EE) XKB: Couldn't compile keymap
 +
XKB: Failed to compile keymap
 +
Keyboard initialization failed. This could be a missing or incorrect setup of xkeyboard-config.
 +
Fatal server error:
 +
Failed to activate core devices.
 +
Please consult the The X.Org Foundation support  at http://wiki.x.org
 +
for help.
 +
Please also check the log file at "/var/log/Xorg.0.log" for additional information.
 +
  (II) AIGLX: Suspending AIGLX clients for VT switch
  
==Fare riferimento inoltre a:==
+
Liberare un po' di spazio sulla partizione root e X verrà eseguito.
  
 +
==Fare inoltre riferimento a:==
 
* [[Display Manager]]
 
* [[Display Manager]]
* [[Start X at boot]]
+
* [[Execute commands after X start]]
 +
* [[Start X at Login]]
 
* [[Font Configuration]]
 
* [[Font Configuration]]
* Driver Video Proprietari
+
* Proprietary Video Drivers
 
** [[ATI Catalyst]]
 
** [[ATI Catalyst]]
 
** [[NVIDIA]]
 
** [[NVIDIA]]
 
* [[Desktop Environment]]
 
* [[Desktop Environment]]
** [[KDE (Italiano)|KDE]]
+
* [[Window Manager]]
** [[GNOME (Italiano)|GNOME]]
+
** [[Xfce (Italiano)|Xfce]]
+
** [[Enlightenment]]
+
** [[LXDE]]
+
* Window Managers
+
** [[Awesome3]]
+
** [[Fluxbox]]
+
** [[Openbox]]
+
 
* [[Get All Mouse Buttons Working]]
 
* [[Get All Mouse Buttons Working]]
* [[Compiz]]
 

Revision as of 00:26, 31 October 2012

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:Xorg (Italiano)#)
Attenzione: Questa pagina è in fase di revisione e potrebbe non essere aggiornata. Seguite per ora le istruzioni della versione inglese.

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Xorg è un'applicazione pubblica e open-source del sistema X-window versione 11. Dal momento che Xorg è la scelta più popolare tra gli utenti Linux, la sua ubiquità ha portato a renderlo un requisito sempre presente per le applicazioni GUI, con conseguente adozione massiccia dalla maggior parte delle distribuzioni. Consultare l'articolo di Wikipedia Xorg o visitare Xorg website per ulteriori informazioni.

Contents

Installazione

Per prima cosa installare l'X server:

# pacman -Syu xorg-server

Installare il pacchetto xorg-xinit se si preferisce avviare X senza un display manager:

# pacman -S xorg-xinit

Facoltativamente, installare twm, xclock e xterm per l'ambiente predefinito di xorg-xinit:

# pacman -S xorg-twm xorg-xclock xterm

Sono inoltre disponibili le comode utilità di Xorg:

# pacman -S xorg-utils xorg-server-utils.

Udev dovrebbe essere in grado di rilevare tutto l'hardware senza problemi e evdev (xf86-input-evdev) è il moderno driver di input hotplugging per quasi tutti i dispositivi.

Se evdev non supporta il proprio dispositivo, installare i driver necessari dal gruppo xorg-drivers (visualizzare una lista con pacman -Sg xorg-drivers).

Xorg-server può essere avviato col comando startx. (dal pacchetto xorg-xinit). Per impostazione predefinita, il comando avvia un ambiente di base con twm, xclock e xterm. È possibile passare ad un ambiente personalizzato modificando ~/.xinitrc.

Note: Si può anche iniziare X utilizzando un display manager come KDM. Consultare Display Manager per maggiori informazioni.

Configurazione

Xorg può essere configurato tramite /etc/xorg.conf o /etc/X11/xorg.conf e con i file di configurazione in /etc/X11/xorg.conf.d/. Arch fornisce di default dei file di configurazione in /etc/xorg.conf.d, e nella maggior parte dei casi non sono necessarie ulteriori configurazioni.

Si dovrebbe avere 10-evdev.conf che gestisce la tastiera, il mouse, il touchpad e il touchscreen.

Si è liberi di creare nuovi file di configurazione, che devono però iniziare da XX- e terminare con il suffisso .conf (per esempio 10 prima di 20).

Touchpad//Synaptics

Se si ha un laptop, si potrebbe anche voler installare il pacchetto xf86-input-synaptics.

Dopo l'installazione, si troverà 10-synaptics.conf nella cartella /etc/X11/xorg.conf.d. Si potrà quindi commentare, o eliminare, la riga InputClass del touchpad in 10-evdev.conf.

Schede Grafiche e Driver

Il driver (xf86-video-vesa) non è un driver ottimale (non attiva l'accellerazione 3D e non supporta alcune risoluzioni), potrebbe essere necessario installare il driver adatto alla scheda video.

Per conoscere il nome della scheda installata sul proprio sistema

$ lspci | grep "VGA"

Si può ottenere una lista di tutti i driver con il comando:

# pacman -Ss xf86-video

Driver comuni (open source):

  • nvidia: xf86-video-nouveau (vedere Nouveau)
  • intel: xf86-video-intel (vedere Intel)
  • ati: xf86-video-ati (vedere ATI)

Driver proprietari

Xorg dovrebbe funzionare senza problemi senza i driver "closed source", che in genere sono necessari solo per funzioni avanzate come il fast rendering con accelerazione 3D per i giochi, configurazioni dual-screen e TV-out. Consultare NVIDIA e Catalyst.

Nvidia

Durante l'installazione, verrà creato un file di configurazione (20-nvidia.conf) nella cartella /etc/X11/xorg.conf.d. Permette a Xorg di utilizzare i driver NVIDIA all'avvio.

Impostazioni del monitor

Come iniziare

Note: Questo passo è OPZIONALE e non dovrebbe essere fatto se non si sa cosa si sta facendo.
Note: Questo passaggio èOBBLIGATORIO se si usano due monitor o i driver nouveau. Consultare Nouveau#Configuration.

Per prima cosa, creare un nuovo file di configurazione, /etc/X11/xorg.conf.d/10-monitor.conf per esempio.

Aggiungerci il seguente codice il seguente codice:

Section "Monitor"
    Identifier    "Monitor0"
EndSection

Section "Device"
    Identifier    "Device0"
    Driver        "vesa" #Choose the driver used for this monitor
EndSection

Section "Screen"
    Identifier    "Screen0"  #Collapse Monitor and Device section to Screen section
    Device        "Device0"
    Monitor       "Monitor0"
    DefaultDepth  16 #Choose the depth (16||24)
    SubSection "Display"
        Depth     16
        Modes     "1024x768_75.00" #Choose the resolution
    EndSubSection
EndSection

Multiple monitors/Dual screen

Nvidia

Per ottenere un doppio schermo, è sufficiente modificare il file /etc/X11/xorg.conf.d/10-monitor.conf fatto prima.

Per ogni monitor "fisico", aggiungere un Monitor, Device, e una voce Screen Section, ed aggiungere anche una sezione ServerLayout per gestirlo. Occorre considerare che quando Xinerama è attivato, i driver proprietari nVidia disattivano automaticamente il compositing. Se si desidera il compositing, si dovrebbe commentare la linea Xinerama in "ServerLayout" e utilizzare Twinview (vedi sotto).

Section "ServerLayout"
    Identifier     "DualSreen"
    Screen       0 "Screen0"
    Screen       1 "Screen1" RightOf "Screen0" #Screen1 at the right of Screen0
    Option         "Xinerama" "1" #To move windows between screens
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    Option         "Enable" "true"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    Option         "Enable" "true"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    Screen         0
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    Screen         1
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "0"
    SubSection "Display"
        Depth          24
        Modes          "1280x800_75.00"
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth   24
    Option         "TwinView" "0"
    SubSection "Display"
        Depth          24
    EndSubSection
EndSection
TwinView

Se si desidera un solo grande schermo invece di due, cambiare l'argomento TwinView a 1. Questa opzione deve essere usato al posto di Xinerama (vedi sopra), se si desidera il compositing.

Option "TwinView" "1"
Utilizzo delle impostazioni Nvidia

È inoltre possibile utilizzare lo strumento Nvidia-settings-tool. Con questo metodo verrà utilizzato il software proprietario che Nvidia mette a disposizione con il proprio driver. Basta accedere alle impostazioni come root, configurare come si desidera, e quindi salvare la configurazione in /etc/X11/xorg.conf.d/10-monitor.conf.

Più schede grafiche

È necessario definire il driver da utilizzare ed aggiungere l'ID bus della scheda grafica.

Section "Device"
    Identifier      "Screen0"
    Driver          "nouveau"
    BusID           "PCI:0:12:0"
EndSection

Section "Device"
    Identifier      "Screen1"
    Driver          "radeon"
    BusID           "PCI:1:0:0"
EndSection

Per ottenere l'ID bus :

$ lspci | grep VGA
01:00.0 VGA compatible controller: nVidia Corporation G96 [GeForce 9600M GT] (rev a1)

Nell'esempio, l'ID bus è 1:0:0.

Script per passare dal display interno/esterno nei portatili

Lo script può essere utilizzato per la scorciatoia da tastiera.

#!/bin/bash

IN="LVDS1"
EXT="VGA1"

if (xrandr | grep "$EXT" | grep "+")
    then
    xrandr --output $EXT --off --output $IN --auto
    else
        if (xrandr | grep "$EXT" | grep " connected")
            then
            xrandr --output $IN --off --output $EXT --auto
        fi
fi

Per controllare i nomi dei display interno ed esterno:

# xrandr -q

In caso xrandr non sia installato:

# pacman -S xorg-xrandr

Dimensione dello schermo e DPI

D: Come fa l'Xorg server a calcolare il DPI?
R: Il DPI dell'X server è determinato nel modo seguente:

  1. L'opzione riga di comando dpi ha la massima priorità.
  2. Se questa non viene utilizzata, l'impostazione della dimensione dello schermo nel file di configurazione di X, è utilizzata per determinare il DPI, data la risoluzione dello schermo.
  3. Se non viene fornita la dimensione schermo, i valori di dimensione del monitor DDC vengono utilizzati per ricavare la DPI, data la risoluzione dello schermo.
  4. Se il DDC non specifica una dimensione, il valore DPI 75 viene utilizzato di default.

Per ottenere una corretta impostazione dei "punti per pollice" (DPI), la dimensione del display deve essere conosciuta oppure impostata. Impostare correttamente il DPI è necessario soprattutto quando è richiesta una risoluzione fine (come per il rendering dei font). In precedenza i produttori cercavano di creare uno standard per 96 DPI (un monitor 10.3 " in diagonale sarebbe 800x600, un monitor 13,2" 1024x768). I monitor attuali possono essere di un qualsiasi numero di DPI e questo non può corrispondere orizzontalmente e verticalmente. Ad esempio, un LCD 19" widescreen 1440x900 può avere un DPI di 89x87. Per essere in grado di impostare il DPI, il server Xorg tenta di rilevare automaticamente la dimensione fisica dello schermo del monitor tramite la scheda grafica con DDC. Quando il server Xorg sarà a conoscenza della dimensione fisica dello schermo, sarà anche in grado di impostare il corretto DPI a seconda delle dimensioni di risoluzione.

Per verificare se le dimensioni del display e DPI sono rilevati e calcolati correttamente:

$ xdpyinfo | grep dimensions
$ xdpyinfo | grep "dots per inch"

Verificare che le dimensioni corrispondano alla dimensione di visualizzazione. Se il server Xorg non è in grado di calcolare correttamente le dimensioni dello schermo, il valore verrà predefinito a 75x75 DPI e si dovrà calcolarlo ed impostarlo manualmente.

Se si dispone di indicazioni sulla dimensione fisica dello schermo, possono essere inserite nel file di configurazione di Xorg, in modo che il DPI corretto venga calcolato come segue:

Section "Monitor"
    Identifier "Monitor0"
    DisplaySize 286 179    # In millimeters
EndSection

Se si desidera inserire solamente le specifiche del monitor senza creare un file xorg.conf completo, in primo luogo creare un nuovo file di configurazione, per esempio, /etc/X11/xorg.conf.d/90-monitor.conf.

# nano /etc/X11/xorg.conf.d/10-monitor.conf

Copiare e incollare il seguente codice:

Section "Monitor"
    Identifier "<default monitor>"
    DisplaySize 286 179    # In millimeters
EndSection

Se non si dispone di specifiche per la larghezza e l'altezza dello schermo orizzontale e fisico (attualmente la maggior parte delle specifiche sono elencate solo per dimensione diagonale), è possibile utilizzare la risoluzione nativa del monitor (o rapporto di aspetto) e di lunghezza diagonale per calcolare le dimensioni fisiche orizzontali e verticali. Utilizzando il teorema di Pitagora in uno schermo con diagonale 13,3", con risoluzione nativa 1280x800 (o aspect ratio 16:10):

echo 'scale=5;sqrt(1280^2+800^2)' | bc  # 1509.43698

Questo darà la lunghezza della diagonale in pixel e con questo valore si possono ottenere le lunghezze fisiche orizzontali e verticali (e convertirle in millimetri):

echo 'scale=5;(13.3/1509)*1280*25.4' | bc  # 286.43072
echo 'scale=5;(13.3/1509)*800*25.4' | bc   # 179.01920
Note: Questo calcolo funziona per le dimensioni di più tipi di monitor, tuttavia vi sono monitor più economici che di rado possono comprimere il rapporto di aspetto (per esempio la risoluzione 16:10 a 16:9) in tal caso si dovrebbe misurare la dimensione dello schermo manualmente.
Impostazione manuale DPI

Il DPI può essere impostato manualmente solo se si prevede di utilizzare una risoluzione:

Section "Monitor"
    Identifier "Monitor0"
    Option   "DPI" "96 x 96"
EndSection

Se si utilizza una scheda Nvidia, è possibile impostare manualmente il DPI aggiungendo le seguenti opzioni su /etc/X11/xorg.conf.d/20-nvidia.conf (nella sezione Device):

Option "UseEdidDpi" "False"
Option  "DPI" "96 x 96"

Per i driver compatibili con RandR, è possibile impostare:

xrandr --dpi 96

Consultare Execute commands after X start per salvare le modifiche.

DPMS

Il DPMS (Display Power Management Signaling) è una tecnologia che permette il risparmio energetico dei monitor quando il computer non è in uso. Ciò permetterà di avere monitor che vanno automaticamente in standby dopo un determinato periodo . Si veda: DPMS

Disabilitare Input Hot-plugging

Dalla versione 1.8 Xorg-server usa udev per il rilevamento dei dispositivi. Ciò che segue disabiliterà udev.

Section "ServerFlags"
    Option "AutoAddDevices" "False"
EndSection
Attenzione: Questa operazione disabiliterà l'hot-plugging di Xorg per tutti i dispositivi di input e si riavranno le caratteristiche proprie di xorg-server 1.4. È molto più conveniente configurare i dispositivi con udev che con xorg.conf. Per tanto , disabilitare Hot-plugging, non è consigliato! Consultare: Xorg Input Hotplugging

InputClasses

Preso da: https://fedoraproject.org/wiki/Input_device_configuration

Gli inputClasses sono una nuova sezione di configurazione che non si applica ad un singolo dispositivo ma piuttosto ad una classe di dispositivi, compresi i dispositivi dinamici. Una sezione InputClass è limitata dalle parti specificate da applicare ad un dispositivo di input: tutte le parti saranno applicate a un dispositivo. Un esempio viene riportato di seguito:

Section "InputClass"
    Identifier      "touchpad catchall"
    MatchIsTouchpad "on"
    Driver           "synaptics"
EndSection

Il prossimo frammento potrebbe anche essere utile:

Section "InputClass"
        Identifier "evdev touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
EndSection

Se questo frammento è presente nel file xorg.conf o xorg.conf.d, ad ogni touchpad eventualmente presente nel sistema verrà assegnato il driver Synaptics. Si noti che a causa dell'ordine di precedenza (ordinamento alfanumerico dei frammenti xorg.conf.d) l'impostazione del driver sovrascrive le opzioni del driver precedentemente impostato, il più generico della classe, quello che dovrebbe essere elencato per primo. Il frammento di default fornito con il pacchetto xorg-x11-drv-00-Xorg è 00-evdev.conf e applica il driver evdev a tutti i dispositivi di input.

Le opzioni di abbinamento specificano a quali dispositivi può essere applicata una sezione. Per abbinare un dispositivo, tutte le righe devono essere applicate. Le righe seguenti sono supportate (con esempi):

  • MatchIsPointer, MatchIsKeyboard, MatchIsTouchpad, MatchIsTouchscreen, MatchIsJoystick – opzioni booleane da applicare ad un gruppo di dispositivi.
  • MatchProduct "foo|bar": abbina ogni dispositivo con il nome di un prodotto contenente sia "foo" che "bar"
  • MatchVendor "foo|bar|baz": abbina ogni dispositivo la cui stringa del vendor contenga "foo", "bar", o "baz"
  • MatchDevicePath "/dev/input/event*": abbina con qualsiasi dispositivo con un percorso di dispositivo corrispondente alla patch data (vedi fnmatch (3) per il modello di permesso)
  • MatchTag "foo|bar": abbina con qualsiasi dispositivo il cui tag sia "foo" o "bar". I tag possono essere assegnati dal backend config, udev nel nostro caso, per etichettare i dispositivi che hanno bisogno di configurazioni particolari.

Una sezione d'esempio per configurazioni specifiche è la seguente:

Section "InputClass"
    Identifier     "lasermouse slowdown"
    MatchIsPointer "on"
    MatchProduct   "Lasermouse"
    MatchVendor    "LaserMouse Inc."
    Option         "ConstantDeceleration" 20
EndSection

Questa sezione dovrebbe corrispondere a un dispositivo di puntamento contenente "Lasermouse", da "Lasermouse Inc", e applicare una decelerazione costante di 20 su questo dispositivo.

Alcuni dispositivi possono venire abilitati dal server X, quando in realtà non lo dovrebbero essere. Questi dispositivi possono essere configurati per essere ignorati:

Section "InputClass"
    Identifier     "no need for accelerometers in X"
    MatchProduct   "accelerometer"
    Option         "Ignore" "on"
EndSection

Esempio di configurazioni

La sezione seguente descrive alcune configurazioni d'esempio riguardo opzioni di configurazione di uso comune. Si noti che se si utilizza un ambiente desktop come GNOME o KDE, le opzioni impostate nel file xorg.conf possono essere sovrascritte con opzioni specifiche per l'utente al login.

Esempio: emulazione rotellina (per un trackpoint)

Se possedete un computer con un Trackpoint (un Thinkpad per esempio) si può aggiungere quanto segue al file xorg.conf per usare il tasto centrale emulando la rotellina del mouse:

Section "InputClass"
    Identifier     "Wheel Emulation"
    MatchIsPointer "on"
    MatchProduct   "TrackPoint"
    Option         "EmulateWheelButton" "2"
    Option "EmulateWheel" "on"
EndSection

Per il supporto completo al trackpoint (compreso lo scorrimento orizzontale), è possibile utilizzare il seguente:

Section "InputClass"
    Identifier	"Trackpoint Wheel Emulation"
    MatchProduct	"TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device"
    MatchDevicePath	"/dev/input/event*"
    Option		"EmulateWheel"		"true"
    Option		"EmulateWheelButton"	"2"
    Option		"Emulate3Buttons"	"false"
    Option		"XAxisMapping"		"6 7"
    Option		"YAxisMapping"		"4 5"
EndSection
Esempio: Tap-to-click

Il tap-to-click può essere attivato nella finestra di configurazione del mouse (nella scheda touchpad), ma se si ha bisogno di questa funzionalità già abilitata al gdm, la specifica seguente è quella più adatta:

Section "InputClass"
    Identifier "tap-by-default"
    MatchIsTouchpad "on"
    Option "TapButton1" "1"
EndSection
Esempio: la tastiera ed il modello su Acer 5920G Laptop

Il modello e il layout della tastiera può essere impostato nel file /etc/X11/xorg.conf.d/keyboard.conf o qualsiasi altro file .conf nella stessa directory.

  • MatchIsKeyboard "yes": imposta il dispositivo di input per una tastiera
  • Option "XkbLayout" "it": imposta il layout di tastiera alla lingua italiana. Si può sostituire it con qualsiasi altro layout.
  • Option "XkbModel" "acer_laptop": imposta il modello di tastiera per una tastiera di computer portatile Acer. Si può sostituire acer_laptop con il proprio layout.
  • Option "XkbVariant" "sundeadkeys": imposta la variante layout ai Sun dead keys. Si può omettere l'opzione XkbVariant utilizzando la variante predefinita.

laptop keyboard. Si può sostituire acer_laptop con il layout di tastiera attuale.

Si noti che un elenco di layout di tastiera e modelli possono essere trovati in /usr/share/X11/xkb/rules/base.lst

Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard        "yes"
    Option                 "XkbModel" "acer_laptop"
    Option                 "XkbLayout" "it"
    Option                 "XkbVariant" "sundeadkeys"
EndSection

Impostazioni della tastiera

Xorg potrebbe fallire nel riconoscere correttamente la tastiera. Ciò potrebbe dare problemi con il layout della tastiera o con il modello, non essendo impostata correttamente.

Per trovare una lista completa di modelli di tastiera, layout, varianti e opzioni, si apra /usr/share/X11/xkb/rules/xorg.lst.

Per impostare la mappatura della tastiera per la sessione corrente di Xorg

# setxkbmap dvorak

Ritardo di ripetizione e frequenza dei tasti

Usare xset r rate DELAY RATE per modificarli, e xinitrc per salvare i cambiamenti.

Visualizzazione delle impostazioni della tastiera

 $ setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Applied rules from evdev:
model:      evdev
layout:     us
options:    terminate:ctrl_alt_bksp
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us+inet(evdev)+terminate(ctrl_alt_bksp)
geometry:   pc(pc104)
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc+us+inet(evdev)+terminate(ctrl_alt_bksp)"    };
        xkb_geometry  { include "pc(pc104)"     };
};

Impostare la mappatura della tastiera con Hot-Plugging

Per rendere le modifiche permanenti, si aggiunga a xorg.conf:

Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard	   "yes"
    Option	           "XkbLayout" "dvorak"
EndSection

Si noti che questo è in una sezione InputClass e non la sezione InputDevice per la tastiera.

Impostare la mappatura della tastiera senza Hot-Plugging (deprecato)

Note: Cambiare il layout di tastiera con questo metodo richiede la disabilitazione dell'inserimento hot-plugging.

Per cambiare il layout della tastiera, si usi l'opzione XkbLayout nella sezione InputDevice keyboard. Per esempio, se si possiede una tastiera con layout italiano:

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option "XkbLayout" "it"
EndSection

Per cambiare il modello della tastiera, si usi l'opzione XkbModel nella sezione InputDevice keyboard. per esempio, nel caso di una tastiera Microsoft Wireless Multimedia:

Option "XkbModel" "microsoftmult"

Cambio tra diversi layout della tastiera

Note: Bisognerà installare xorg-xkbevd e aggiungere xkbevd alla stringa DAEMONS in /etc/rc.conf.

Per facilitare il cambiamento dei layout della tastiera, modificare le Options usate in entrambi i metodi descritti sopra. Per esempio, per passare tra un layout americano e uno svedese e con il tasto Blocco Maiuscole attivato, creare un file /etc/X11/xorg.conf.d/01-keyboard-layout.conf ed aggiungerci il contenuto seguente:

Section "InputClass"
        Identifier "keyboard-layout"
        Driver "evdev"
        MatchIsKeyboard "yes"
        Option "XkbLayout"  "us, se"
        Option "XkbOptions" "grp:caps_toggle"
EndSection

È possibile ottenere un elenco di possibili opzioni di grp: in /usr/share/X11/xkb/rules/xorg.lst (localizzabili all'incirca a metà del file).

In alternativa, è possibile aggiungere quanto segue in .xinitrc:

setxkbmap -layout "us, se" -option "grp:caps_toggle"

Ciò è particolarmente utile se non si sta usando un DE che si occupa dei layout della tastiera.

Abilitare i pointerkeys

I mouse keys ora sono disabilitati per default e devono essere attivati manualmente:

/etc/X11/xorg.conf.d/20-enable-pointerkeys.conf
Section "InputClass"
    Identifier      "Keyboard Defaults"
    MatchIsKeyboard "yes"
    Option          "XkbOptions" "keypad:pointerkeys"
EndSection

Si può anche eseguire:

$ setxkbmap -option keypad:pointerkeys

Entrambi i metodi abiliteranno la scorciatoia Shift+NumLock.

Fonts

Su Font Configuration ci sono alcuni suggerimenti riguardo la configurazione dei font.

Mouse Cursors

See X11 Cursors.

Modello di file xorg.conf

Chiunque abbia redatto un file xorg.conf funzionante, vada avanti e condivida qui un link ad esso per permettere ad altri di consultarlo. Non si inserisca tutto il file di configurazione; lo si carichi da qualche altra parte e si incolli il link.
Si inseriscano solo configurazioni di hotplugging, altrimenti si avvisi che la propria configurazione non usa l'input hotplugging. (Xorg 1.8 = udev)

- Un Esempio: xorg.conf & /etc/X11/xorg.conf.d/10-evdev.conf

Questo è un esempio di file di configurazione che utilizza xorg.conf.d/10-evdev.conf per il layout della tastiera:
Note: le sezioni "InputDevice" cono commentate, questo perchè ora sarà /etc/X11/xorg.conf.d/10-evdev.conf a farsi carico delle configurazioni.

xorg.conf: http://pastebin.com/raw.php?i=EuSKahkn
/etc/X11/xorg.conf.d/10-evdev.conf: http://pastebin.com/raw.php?i=4mPY35Mw>
/etc/X11/xorg.conf.d/10-monitor.conf (VMware): http://pastebin.com/raw.php?i=fJv8EXGb
/etc/X11/xorg.conf.d/10-monitor.conf (KVM): http://pastebin.com/raw.php?i=NRz7v0Kn

Eseguire Xorg

Avviare il demone dbus ed aggiungerlo alla stringa demoni in modo da avviarlo automaticamente insieme al sistema.

Infine, avviare Xorg:

$ startx

o

$ xinit -- /usr/bin/X -nolisten tcp
Note: Se Xorg è appena stato installato, ci sarà un file vuoto chiamato .xinitrc nella $HOME, e bisogna, o cancellarlo o compilarlo per avviare correttamente X. Nel caso in cui non lo si faccia, X mostrerà una schermata vuota e non compariranno errori in Xorg.0.log. Semplicemente cancellandolo si otterrà un ambiente X di base.

L'ambiente base di X è piuttosto semplice, e solitamente si cerca di installare un window manager o un desktop environments per completare X. Una lista d'opzioni utili è presente in Common Applications#Window Managers (WM).

Se si dovesse presentare qualche problema, allora si consulti il log in /var/log/Xorg.0.log. Si cerchi qualsiasi riga che cominci per (EE) che sta ad indicare gli errori, ed anche (WW) che avvisa di possibili altre conseguenze.

Metodi per l'avvio dell'ambiente grafico

Seguono un paio di metodi per l'avvio di un ambiente grafico dalla riga di comando.

Note: Se si utilizza un ambiente desktop completo (Gnome, KDE, ecc), potrebbe essere più utile leggere la relativa pagina wiki.

Utilizzo dei runlevel

Per impostazione predefinita, Linux è configurato per avere diversi runlevels. Arch viene avviato per default al runlevel 3. Il runlevel 5 è in genere utilizzato in per il caricamento del server X. Editare il file /etc/inittab. Nell'ultima sezione alla fine del file, decommentare la riga appropriata per il display manager del proprio ambiente desktop. Per esempio, per XDM (X Display manager) dovrebbe essere simile a questo:

# Example lines for starting a login manager
x:5:respawn:/usr/bin/xdm -nodaemon
#x:5:respawn:/usr/sbin/gdm -nodaemon
#x:5:respawn:/usr/bin/kdm -nodaemon
#x:5:respawn:/usr/bin/slim >/dev/null 2>&1

Ora, è sufficiente avviare il proprio ambiente desktop:

# init 5

Utilizzo di ~/.xinitrc

Questo metodo implica ulteriori configurazioni.

Prima di tutto bisogna configurare ~/.xinitrc

Una delle funzioni principali di questo file è quello di dettare a X ciò che è invocato con /usr/bin/startx a livello globale e/o con /usr/bin/xinit a livello utente. (Lo script startx è solo un front-end per il più versatile comando xinit.) Ci sono moltissimi altri tipi di specifiche configurazioni e comandi che possono essere aggiunte a ~/.xinitrc come ulteriore personalizzazione del sistema. Consultare xinitrc per ulteriori informazioni.

Note: ~/.xinitrc è un così chiamato "dot" (.) file. I file che sono preceduti da un punto (.) in un filesystem *nix are "nascosti", e non verranno mostrati con una normale comando "ls", solitamente per la buona abitudine di mantenere in ordine le directory. I dot file sono visibili tramite il comando ls -a. Il suffisso "rc" significa Run Commands e indica semplicemente che si tratta di un file di configurazione. Dal momento che controlla come un programma viene eseguito, è anche chiamato (ma storicamente non corretto!) "Run Control".

I comandi startx e xinit avviano il server X ed i client. Per determinare il client da eseguire, startx/xinit cercherà di analizzare prima un file ~/.xinitrc nella home directory dell'utente. Se il file ~/.xinitrc non esistesse, si rivolgerà di default al file globale xinitrc, nella cartella xinit; /etc/X11/xinit/xinitrc, usa di default il window manager TWM, quindi, se si richiama startx senza il file ~/.xinitrc, si avvierà una sessione TWM. Ulteriori approfondimenti nella pagina wiki .xinitrc.

Passare all'utente normale, non-root:

# su - yourusername
  • /etc/skel/ contiene i file e le directory necessarie a fornire valori predefiniti corretti agli account utente appena creati. Il nome skel è derivato dalla parola skeleton, perché i file in esso contenuti costituiscono la struttura di base per le home directory degli utenti.
Note: Un modello di file ~/.xinitrc sarà reperibile in /etc/skel una volta installato il pacchetto xorg-xinit.
  • Un file ~/.xinitrc d'esempio è reperibile qui

Copiare il file d'esempio xinitrc da /etc/skel/ alla propria cartella home:

$ cp /etc/skel/.xinitrc ~/

Editare il file ~/.xinitrc e decommentare la riga corrispondente al proprio Desktop Environment. Per esempio, se si usa Xterm, dovrebbe essere un qualcosa di simile:

#!/bin/sh
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)

# exec gnome-session
# exec startkde
# exec startxfce4
# exec wmaker
# exec icewm
# exec blackbox
# exec fluxbox
# exec openbox-session
# ...or the Window Manager of your choice
exec xterm
Note: Assicurarsi di avere una sola riga exec decommentata in ~/.xinitrc.

Ora siamo pronti per lanciare X. Avviare X da utente normale, non-root con:

$ startx

o

$ xinit

Il desktop dovrebbe ora avviarsi. È possibile verificare la tastiera e il suo layout, come anche usare il mouse.

In caso di problemi con l'automount, provare a utilizzare il seguente comando in ~/.xinitrc. (Sostituire "startxfce4" con il comando appropriato per il proprio window manager/DE.)

exec ck-launch-session startxfce4

Ciò garantirà che le differenti variabili d'ambiente siano impostate correttamente avviando una sessione consolekit pulita. ConsoleKit è un framework per tenere traccia dei vari utenti, delle sessioni, e delle sedi presenti in un sistema. Fornisce un meccanismo software che reagisce ai cambiamenti di qualsiasi di questi elementi o dei metadati ad essi associati. Lavora in parallelo con dbus, e altri strumenti.

Note: Assicurarsi di aver installato il pacchetto consolekit.

Suggerimenti

Modifiche allo script di avvio di X (/usr/bin/startx)

Per le opzioni di X si consulti:

$ man Xserver

Le seguenti opzioni devono essere aggiunte alla variabile "defaultserverargs" nel file /usr/bin/startx.

  • abilitare il caricamento ritardato dei glyph per i font a 16 bit:
-deferglyphs 16

Nota: Se si avvia X con kdm, sembra che lo script startx non venga eseguito. Queste opzioni devono essere aggiunte alla variabile "ServerArgsLocal" o "ServerCmd" nel file /usr/share/config/kdm/kdmrc.

Le opzioni di kdm predefinite sono:

  ServerArgsLocal=-nolisten tcp
  ServerCmd=/usr/bin/X

Sessione virtuale di X

Per avviare un'altra sessione di X ad esempio in Template:Keypress + Template:Keypress + Template:Keypress occorre digitare in una console:

xinit /path/to/wm -- :1

Si cambi "/path/to/wm" in relazione al proprio file d'avvio del window manager o del proprio manager di login come gdm, kdm e slim.

Sessioni di X una dentro l'altra

Per avviare una sessione di X di un altro desktop environment dentro la presente:

$ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1

Questo lancerà una sessione Window Maker in una finestra 1024x768 dentro la sessione corrente di X.

Richiede l'installazione del pacchetto xorg-server-xnest.

Risoluzione dei problemi

Problemi comuni

Se Xorg non dovesse avviarsi, o lo schermo fosse completamente nero, non funzionassero tastiera e mouse, ecc., innanzitutto si effettuino questi semplici passaggi:

  • Controllare il file di log: cat /var/log/Xorg.0.log
  • Installare i driver di input (tastiera, mouse, joystick, tablet, ecc...):
  • Alla fine, cercare i problemi più comuni negli articoli riguardanti ATI, Intel e NVIDIA.

Ctrl-Alt-Backspace non funziona

Ci sono due modi per riabilitare Template:Keypress+Template:Keypress+Template:Keypress; con e senza input-hotplugging. Usare l'hot-plugging è la scelta consigliata.

Con input hot-plugging

Configurazione globale di sistema

Aggiungere in /etc/X11/xorg.conf.d/10-evdev.conf la seguente sezione:

Section "InputClass"
    Identifier          "Keyboard Defaults"
    MatchIsKeyboard	"yes"
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection
Note: In KDE, questa impostazione a livello di sistema non ha effetto. Per ripristinare, andare su Impostazioni di sistema e cliccare su 'Input Devices'. In questa nuova finestra fare clic sulla scheda Tastiera e quindi selezionare la casella "Enable Keyboard layouts". Questo vi permetterà di fare clic sulla scheda Avanzate. In questa nuova finestra, espandere la voce relativa "Sequenza di tasti per terminare il server X" e assicurarsi che Control + Alt + Backspace sia selezionato. Fare clic su Applica e chiudere la finestra Impostazioni di sistema. Ora si riavrà la funzionalità CTRL-ALT-Backspace su KDE.
Configurazione specifica dell'utente

Un altro modo consiste nell'aggiungere questa linea a xinitrc:

setxkbmap -option terminate:ctrl_alt_bksp
Note: Questa configurazione non funziona su Gnome 3.

Senza input hot-plugging

Il nuovo Xorg disabilita di default il metodo di venire terminato con Template:Keypress+Template:Keypress+Template:Keypress. Si può riabilitarla aggiungendo la seguente linea in /etc/X11/xorg.conf,

Option  "XkbOptions" "terminate:ctrl_alt_bksp" 

alla sezione InputDevice per la tastiera.

Problemi con tastiere Apple

Consultate il wiki: Apple Keyboard

Problemi con il tap-click del Touchpad

Consultate il wiki Synaptics

Tasti extra del mouse non riconosciuti

Consultare: Get All Mouse Buttons Working

Errore avviando il client X con "su"

Se ottenete il messaggio di errore "Client is not authorized to connect to server" (il client non è autorizzato a connettersi al server), provate ad aggiungere la seguente stringa:

session        optional        pam_xauth.so

al file /etc/pam.d/su. pam_xauth sarà quindi impostato per gestire le chiavi di xauth e le variabili d'ambiente.

Programmi che richiedono "font '(null)'"

  • Messaggio di errore: "unable to load font `(null)'." (Impossibile caricare il tipo di carattere (null))

Alcuni programmi funzionano solo con i font bitmap. Sono disponibili due pacchetti principali con i font bitmap, xorg-fonts-75dpi e xorg-fonts-100dpi. Non vi è la necessità di installarli entrambi: uno solo di essi dovrebbe essere sufficiente. Per scoprire quale dei due pacchetti è più indicato per le vostre esigenze, lanciate il seguente comando in un terminale:

$ xdpyinfo | grep resolution

quindi installate il pacchetto che più si avvicina al vostro dato (75 o 100 al posto di XX)

# pacman -S xorg-fonts-XXdpi

Problemi con la modalità Frame-buffer

Se il server X fallisce all'avvio e controllando il corrispettivo file log (/var/log/Xorg.0.log), notate il seguente messaggio:

(WW) Falling back to old probe method for fbdev
(II) Loading sub module "fbdevhw"
(II) LoadModule: "fbdevhw"
(II) Loading /usr/lib/xorg/modules/linux//libfbdevhw.so
(II) Module fbdevhw: vendor="X.Org Foundation"
       compiled for 1.6.1, module version=0.0.2
       ABI class: X.Org Video Driver, version 5.0
(II) FBDEV(1): using default device

Fatal server error:
Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices

Disinstallate fbdev:

# pacman -R xf86-video-fbdev

DRI smette di funzionare con le schede Matrox

Se usate una scheda Matrox e DRI smette di funzionare dopo aver aggiornato Xorg, provate ad aggiungere la riga:

Option "OldDmaInit" "On"

alla sezione Device che fa riferimento alla vostra scheda video nello xorg.conf.

Ripristino: disattivare Xorg prima della schermata di login

Se Xorg è impostato per avviarsi automaticamente e per qualche motivo è necessario evitare che si avvii prima che si presenti la schermata di login o che si entri nella propria sessione grafica (se ad esempio rc.conf è erroneamente configurato e Xorg non riconosce il mouse o la tastiera), è possibile disattivare il suo caricamento in due modi.

  • Dal menu di GRUB, è possibile specificare il runlevel nella linea del kernel aggiungendo un numero alla fine della riga del kernel specificando il livello di esecuzione che si desidera. L'esempio seguente imposta il livello di esecuzione a 3:
 kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/..ro 3
  • Se oltre ad avere problemi con il file rc.conf, avete anche impostato il tempo di attesa del menu di GRUB a zero, o non potete altrimenti utilizzare grub per impedire l'avvio di Xorg, è possibile utilizzare il CD live di Arch. Avviare il CD live ed effettuate il login come root. A questo punto necessitate di un punto di mount, ad esempio /mnt, ed è necessario conoscere il nome della partizione che si desidera montare al suo interno.
Potete utilizzare il comando,
 # fdisk -l
per vedere le vostre partizioni. Di solito, quello che si desidera sarà simile a /dev/sda1. Dopodiché montate la vostra partizione in /mnt, utilizzando il comando
 # mount /dev/sda1 /mnt
In questo modo il file-system verrà visualizzato sotto /mnt. Così facendo il vostro file rc.conf, per esempio, sarà presente nell'indirizzo /mnt/etc/rc.conf. Da qui potate eliminare il modulo gdm ( o similare) per impedire l'avvio di Xorg normalmente, o apportare altre modifiche necessarie.

Errore di X all'avvio : Inizializzazione della tastiera fallito

Se il disco rigido è pieno, startx fallisce. La fine di /var/log/Xorg.0.log sarà:

(EE) Error compiling keymap (server-0)
(EE) XKB: Couldn't compile keymap
(EE) XKB: Failed to load keymap. Loading default keymap instead.
(EE) Error compiling keymap (server-0)
(EE) XKB: Couldn't compile keymap
XKB: Failed to compile keymap
Keyboard initialization failed. This could be a missing or incorrect setup of xkeyboard-config.
Fatal server error:
Failed to activate core devices.
Please consult the The X.Org Foundation support  at http://wiki.x.org
for help.
Please also check the log file at "/var/log/Xorg.0.log" for additional information.
 (II) AIGLX: Suspending AIGLX clients for VT switch

Liberare un po' di spazio sulla partizione root e X verrà eseguito.

Fare inoltre riferimento a: