Linux/Xorg
xorg-server
Autoconfig mit xorg-server 1.5-1.7
Ab Version 1.5 ermittelt xorg-server wegen der im Standard aktivierten Autoconfig die Konfiguration für Eingabegeräte von hald, statt von /etc/X11/xorg.conf. Damit das funktioniert, muss hald automatisch starten beim Booten:
rc-update add hald default
Falls noch nicht geschehen, muss man evdev bei INPUT_DEVICES in /etc/make.conf hinzufügen, z.B.:
INPUT_DEVICES="keyboard mouse synaptics evdev"
Und danach:
emerge --ask --update --newuse --deep world
Damit man trotz Autoconfig noch eine deutsche Tastatur und eine angepasste Touchpad-Konfiguration hat, muss man die Geräte woanders konfigurieren.
Die Standardkonfiguration kann man sich als Vorlage für die angepasste Konfiguration anschauen in /usr/share/hal/fdi/policy/10osvendor/<Datei>, falls vorhanden.
Anpassungen macht man in /etc/hal/fdi/policy/<Datei>. Dabei müssen nur die Keys eingetragen werden, die man überschreiben will.
Nach einer Änderung müssen hald und xdm neu gestartet werden:
/etc/init.d/hald restart /etc/init.d/xdm restart
Man kann die Autoconfig in /etc/X11/xorg.conf auch deaktivieren, um doch dort die Eingabegeräte wie gehabt konfigurieren zu können:
Section "ServerLayout" Option "AutoAddDevices" "False" EndSection
Dies kann aber unter Umständen Probleme machen, z.B. mit KDE 4.
Tastatur
/etc/hal/fdi/policy/10-keymap.fdi:
<?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="info.capabilities" contains="input.keys"> <merge key="input.xkb.layout" type="string">de</merge> <merge key="input.xkb.variant" type="string">nodeadkeys</merge> <merge key="input.xkb.options" type="string">terminate:ctrl_alt_bksp</merge> </match> </device> </deviceinfo>
In diesem Beispiel wird folgendes angepasst:
- Layout: de
- Variante: nodeadkeys
- ctrl-alt-backspace erlauben (notwendig ab 1.6)
Synaptics Touchpad
/etc/hal/fdi/policy/11-x11-synaptics.fdi:
<?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="input.x11_driver" contains="synaptics"> <merge key="input.x11_options.SHMConfig" type="string">On</merge> <merge key="input.x11_options.TapButton1" type="string">1</merge> <merge key="input.x11_options.TapButton2" type="string">2</merge> <merge key="input.x11_options.VertEdgeScroll" type="string">1</merge> <merge key="input.x11_options.VertTwoFingerScroll" type="string">0</merge> <merge key="input.x11_options.HorizTwoFingerScroll" type="string">0</merge> </match> </device> </deviceinfo>
In diesem Beispiel wird folgendes angepasst:
- man kann mit synclient die Optionen im laufenden Betrieb ändern
- mit einem Finger tippen = linke Maustaste
- mit 2 Fingern tippen = mittlere Maustaste
- vertikal scrollen mit einem Finger am rechten Rand
- scrollen mit 2 Fingern vertikal und horizontal deaktivieren
Autoconfig mit xorg-server ab 1.8
Ab Version 1.8 ermittelt xorg-server die verfügbaren Eingabegeräte von udev, konfiguriert werden sie in /etc/X11/xorg.conf mit der neuen Section InputClass. Auf diese wird nicht in der Section ServerLayout verwiesen.
Falls noch nicht geschehen, muss man evdev bei INPUT_DEVICES in /etc/make.conf hinzufügen, z.B.:
INPUT_DEVICES="keyboard mouse synaptics evdev"
Und danach:
emerge --ask --update --newuse --deep world
Damit man eine deutsche Tastatur und eine angepasste Touchpad-Konfiguration hat, muss man die Geräte in /etc/X11/xorg.conf konfigurieren.
Man kann die Autoconfig in /etc/X11/xorg.conf auch deaktivieren, wenn man kein Hotplug will oder braucht:
Section "ServerLayout" Option "AutoAddDevices" "False" EndSection
Dies kann aber unter Umständen Probleme machen, z.B. mit KDE 4.
Tastatur
Section "InputClass" Identifier "keyboard-all" Driver "evdev" Option "XkbLayout" "de" Option "XkbVariant" "nodeadkeys" Option "XkbOptions" "grp:alt_shift_toggle,grp:switch,compose:rwin,terminate:ctrl_alt_bksp" MatchIsKeyboard "on" EndSection
In diesem Beispiel wird folgendes angepasst:
- Layout: de
- Variante: nodeadkeys
- ctrl-alt-backspace erlauben (notwendig ab 1.6)
Synaptics Touchpad
Section "InputClass" Identifier "synaptics-all" Driver "synaptics" Option "SHMConfig" "On" Option "TapButton1" "1" Option "TapButton2" "2" Option "VertEdgeScroll" "1" Option "VertTwoFingerScroll" "0" Option "HorizTwoFingerScroll" "0" MatchIsTouchpad "on" EndSection
In diesem Beispiel wird folgendes angepasst:
- man kann mit synclient die Optionen im laufenden Betrieb ändern
- mit einem Finger tippen = linke Maustaste
- mit 2 Fingern tippen = mittlere Maustaste
- vertikal scrollen mit einem Finger am rechten Rand
- scrollen mit 2 Fingern vertikal und horizontal deaktivieren
NX
Bei einer NX Session mit xorg-server 1.5 als Client muss man dafür sorgen, dass der richtige Keyboard-Treiber (bei 1.5 normalerweise evdev) verwendet wird. Ansonsten fuktionieren beispielsweise Umlaute oder Cursortasten nicht.
Beispielsweise kann man folgendes Script beim Autostart von KDE ausführen lassen:
if [ ${DISPLAY:1:2} == "11" ] ; then setxkbmap -model evdev -layout de -variant nodeadkeys fi
Da NX Sessions als Displaynummer normalerweise ab 1100 verwenden, sollte das nur auf NX Sessions wirken.
Schwarze Console auf vt1
Wenn nach dem Start von X ein CTRL-ALT-F1 zu einem schwarzen Bildschirm statt zu tty1 führt, muss in /boot/grub/menu.lst als Kernelbootparameter vga=791 (oder eine andere Zahl für eine andere Auflösung) hinzugefügt werden.
Upgrade auf 1.6
Siehe http://www.gentoo.org/proj/en/desktop/x/x11/libxcb-1.4-upgrade-guide.xml und http://www.gentoo.org/proj/en/desktop/x/x11/xorg-server-1.6-upgrade-guide.xml.
Upgrade auf 1.8/1.9
Siehe http://www.gentoo.org/proj/en/desktop/x/x11/xorg-server-1.8-upgrade-guide.xml.
Installation von xorg-server 1.7 verhindern
Momentan gibt es noch keine stable NVidia-Treiber, die mit xorg-server 1.7 zusammenarbeiten. Daher macht es Sinn, die Installation von 1.7 zu verhindern.
/etc/portage/package.mask:
>=x11-base/xorg-server-1.6.9 >=x11-libs/libX11-1.3.2 >=x11-libs/libXinerama-1.1 >=x11-proto/xextproto-7.1.1 >=x11-libs/libXext-1.1.1 >=x11-libs/libXi-1.3 >=x11-proto/xcmiscproto-1.2.0 >=x11-proto/xf86bigfontproto-1.2.0 >=x11-proto/bigreqsproto-1.1.0 >=x11-proto/xineramaproto-1.2 >=x11-proto/xextproto-7.1.1 >=x11-proto/fixesproto-4.1.1 >=x11-proto/inputproto-2.0 >=x11-libs/libXinerama-1.1 >=x11-proto/recordproto-1.14 >=x11-libs/libXtst-1.1.0 >=x11-proto/scrnsaverproto-1.2.0 >=x11-libs/libXScrnSaver-1.2.0 >=x11-proto/xf86vidmodeproto-2.3 >=x11-libs/libXxf86vm-1.1.0 >=x11-apps/xinput-1.5.0 >=media-libs/mesa-7.7.1