Configurer un touchpad Alps sous Ubuntu Breezy
Auteur : Olivier BOYER - oboyer () ajoute ! org
Mots clés
Touchpad, Alps, scrolling, Xorg, Linux, Ubuntu, Breezy Badger, 5.10, Dell Inspiron 6000
Introduction
Ce document décrit comment configurer un Touchpad Alps livré avec les portables Dell Inspiron 6000 sous Ubuntu Breezy (5.10).
Présentation de la maquette
- un portable Dell Inspiron 6000
- OS = Linux Ubuntu Breezy Badger (5.10)
Note
Toutes les commandes présentées ici, sont à executer, sauf mention contraire, en tant qu'administrateur de la machine.
Pré-requis
- le système Ubuntu Breezy doit être installé et fonctionnel
- le server X (ici Xorg) doit être configuré et opérationnel
Vérification du matériel
Vérifiez que me Touchpad est bien un Alps. Procédez comme suit :
# cat /proc/bus/input/devices [...] I: Bus=0011 Vendor=0002 Product=0008 Version=7321 N: Name="AlpsPS/2 ALPS GlidePoint" P: Phys=isa0060/serio1/input0 H: Handlers=mouse2 event3 ts2 B: EV=f B: KEY=420 0 70000 0 0 0 0 0 0 0 0 B: REL=3 B: ABS=1000003 [...]
La ligne significative est N: Name=“AlpsPS/2 ALPS GlidePoint”
Installation des packages
Exécutez la commande suivante :
# apt-get install xorg-driver-synaptics build-essential libxext-dev
Présentation des packages
Le package :
xorg-driver-synapticsest le driver Xorg pour les Touchpad Alpsbuild-essentialest le meta-package qui contient la chaîne de compilation C pour Ubuntu. En effet, la Ubuntu ne livre pas en standard les éléments nécessaire pour compiler du C.libxext-devest nécessaire par la suite.
Apropos de xorg-driver-synaptics
Le package xorg-driver-synaptics est livré en version 0.14.3+revertedto+0.13.6-0ubuntu3. Cette version fonctionne mal : il est impossible de désactiver le tab-and-clic, et d'activer le scrolling. Nous allons donc le remplacer.
Alors pourquoi installer ce package ?
Il nous permet d'avoir les pages de manuel, et de voir sa présence dans la liste des packages installés. Cependant, vous pouvez très bien vous passer de cette installation. La suite de ce document va vous présenter comment compiler le dernier driver xorg-synaptic.
Compilation du dernier driver xorg-synaptic
Sauvegarder l'ancien
Par mesure de précaution, il vaut mieux sauvegarder l'ancien driver :
# cd /usr/X11R6/lib/modules/input # mv synaptics_drv.o synaptics_drv.o.orig
Télécharger les sources
xorg-synaptic
Choisir l'archive la plus récente à l'adresse : http://web.telia.com/~u89404340/touchpad/files/
A l'heure où j'écris ce document, il s'agit de la version 0.14.4
# cd /tmp # wget http://web.telia.com/~u89404340/touchpad/files/synaptics-0.14.4.tar.bz2
Le patch xorg-synaptic pour Ubuntu
Le patch est disponible à l'adresse suivante : http://ubuntuforums.org/attachment.php?attachmentid=3098&d=1129991988 Il est aussi disponible en Annexe.
# cd /tmp # wget http://ubuntuforums.org/attachment.php?attachmentid=3098&d=1129991988 # mv ubuntu-synaptics-0.14.3.patch.txt ubuntu-synaptics-0.14.3.patch
Compiler le driver
Pour compiler le driver xorg-synaptic procédez comme suit :
# cd /tmp # tar jxf synaptics-0.14.4.tar.bz2 # cd synaptics-0.14.4 # patch -p1 < /tmp/ubuntu-synaptics-0.14.3.patch patching file Xincludes/usr/X11R6/include/X11/Xfuncproto.h Hunk #1 succeeded at 69 with fuzz 2. # make [...] # cp synaptics_drv.o /usr/X11R6/lib/modules/input
Modifier le fichier /etc/X11/xorg.conf
Sauver le fichier original
Procédez comme suit :
# cp /etc/X11/xorg.conf /etc/X11/xorg.conf.orig
Modifier le fichier
Charger le driver
Ajouter la ligne suivante à la section :
Section "Module"
[...]
Load "synaptics"
EndSection
Modifier la section InputDevice
Modifier comme suit la section InputDevice :
Section "InputDevice"
Identifier "Synaptics Touchpad"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "SHMConfig" "true"
Option "LeftEdge" "120"
Option "RightEdge" "830"
Option "TopEdge" "120"
Option "BottomEdge" "650"
Option "FingerLow" "14"
Option "FingerHigh" "15"
Option "MaxTapTime" "0"
Option "EmulateMidButtonTime" "75"
Option "VertScrollDelta" "20"
Option "HorizScrollDelta" "20"
Option "MinSpeed" "0.6"
Option "MaxSpeed" "1.5"
Option "AccelFactor" "0.03"
Option "EdgeMotionMinZ" "30"
Option "EdgeMotionMaxZ" "160"
Option "EdgeMotionMinSpeed" "15"
Option "EdgeMotionMaxSpeed" "15"
Option "EdgeMotionUseAlways" "0"
Option "UpDownScrolling" "1"
Option "LeftRightScrolling" "0"
Option "CircularScrolling" "0"
Option "CircScrollDelta" "0.1"
Option "CircScrollTrigger" "0"
EndSection
Puis redémarrez la machine :
# reboot
ANNEXES
Le patch xorg-synaptic pour Ubuntu :
--- orig-synaptics-0.14.3/Xincludes/usr/X11R6/include/X11/Xfuncproto.h 2005-03-29 00:29:50.000000000 +0800 +++ synaptics-0.14.3/Xincludes/usr/X11R6/include/X11/Xfuncproto.h 2005-03-29 00:29:50.000000000 +0800 @@ -69,4 +69,12 @@ #endif #endif /* _XFUNCPROTOBEGIN */ +#if defined(__GNUC__) && (__GNUC__ >= 4) +# define _X_SENTINEL(x) __attribute__ ((__sentinel__(x))) +# define _X_ATTRIBUTE_PRINTF(x,y) __attribute__((__format__(__printf__,x,y))) +#else +# define _X_SENTINEL(x) +# define _X_ATTRIBUTE_PRINTF(x,y) +#endif /* GNUC >= 4 */ + #endif /* _XFUNCPROTO_H_ */