Configurer sa souris Logitech MX Master sous Linux (Ubuntu)
Depuis très récemment, je suis l'heureux propriétaire d'une souris Logitech MX Master. Logitech n'ayant pas pris la peine de fournir des outils de configuration pour linux, il m'a fallu bidouiller pour tout faire fonctionner correctement.
Au moment ou j'écris ces lignes, j'utilise une Ubuntu 16.10 avec gnome shell (pas unity) sous Xorg (pas Wayland).
Ce qui fonctionne
En branchant le petit dongle usb fourni par Logitech, ma souris se connecte immédiatement et fonctionne parfaitement.
Les clics gauche et droit fonctionnent correctement. Le petit bouton sous la molette qui sert à la débrayer est également fonctionnel.
En revanche, ni la molette latérale, ni les boutons qui l'accompagnent ne sont reconnus. Le bouton sous le pouce ne fonctionne pas non plus. Les possibilités de configuration sont minimales.
Installer Solaar
Solaar est une application
open-source qui se destine à
remplacer les outils propriétaires Logitech. Il existe des packets solaar
et
solaar-gnome3
dans les dépôts Ubuntu récents, mais pas pour la dernière
version au moment ou j'écris ces lignes. Nous allons donc l'installer à la
main.
sudo aptitude install git python-pyudev
cd /tmp
git clone https://github.com/pwr/Solaar.git
cd Solaar
sudo ./setup.py install
Il faudra probablement débrancher et rebrancher le dongle pour que tout fonctionne correctement.
En lançant Solaar, vous obtiendrez la possibilité d'afficher l'état de la batterie dans la barre des tâches de gnome. Vous pourrez également régler la sensibilité de la souris (DPI) et la précision du débrayage automatique de la molette centrale.
Faire fonctionner les boutons latéraux
Pour rendre les boutons latéraux utilisables, nous utiliserons deux petits programmes : xbindkeys et xte. xbindkeys écoute les événements clavier et souris et leur associe le lancement de commandes shell. xte permet de simuler des entrées souris / clavier. En combinant les deux, il est possible de faire à peu près n'importe quoi (source).
sudo aptitude install xbindkeys xautomation
J'ai choisi d'utiliser ces contrôles pour gérer la musique. La molette contrôle
le volume, tandis que les deux boutons permettent de passer à la piste suivante
ou précédente. Pour ce faire, créer le fichier ~/.xbindkeysrc
:
# thumb wheel up => increase volume
"xte 'key XF86AudioRaiseVolume'"
b:6
# thumb wheel down => lower volume
"xte 'key XF86AudioLowerVolume'"
b:7
# backward button => previous song
"xte 'key XF86AudioPrev'"
b:8
# forward button => next song
"xte 'key XF86AudioNext'"
b:9
(note : pour trouver les valeurs numériques associées aux différents boutons,
vous pouvez utiliser la commande xev
.)
Vous pouvez tester le fonctionnement correct de cette configuration en
utilisant la commande xbindkeys -v
. Une fois satisfait, vous pouvez lancer
xbindkeys
en arrière-plan. Normalement, xbindkeys devrait se lancer
automatiquement au démarrage.
Le bouton du pouce
Sur la MX Master, le repose-pouce est en fait un bouton supplémentaire, assez dur par ailleurs (du moins sur mon modèle). Sous Windows et MacOS, Logitech offre des outils qui permettent de configurer des actions spécifiques sur les déplacements. Ex : bouton du pouce + déplacement sur la droite = lancer le navigateur.
Je n'ai malheureusement pas trouvé de solution pour reproduire ce fonctionnement sous linux. En revanche, il est possible de mapper le simple clic. Ce bouton émet en fait la combinaison de touches Alt gauche + Ctrl gauche + Tab. Il suffit donc de configurer ce raccourci et le tour est joué.
Dans .xbindkeysrc :
"sleep 0.1 && xte 'key XF86AudioPlay'"
Control+Alt+Tab
Relancez xbindkeys :
pkill xbindkeys && xbindkeys
Petite précision : il existe un raccourci déjà défini dans Gnome qui perturbe le fonctionne de xbindkeys, il faut le changer. Allez dans Paramètres > Clavier, puis dans « Navigation » et modifiez le raccourci « Changez les contrôles système » pour mettre n'importe quoi d'autre, e.g Ctrl + Super + Tab.
Le scrolling avec Firefox
Je trouve que la molette principale de la souris manque un peu de peps. Heureusement, Firefox propose une option pour adapter la vitesse du scroll.
Dans about:config, passez l'option
mousewheel.system_scroll_override_on_root_content.enabled
à true, et adaptez
l'option mousewheel.system_scroll_override_on_root_content.vertical.factor
.
Conclusion
Linux conserve certes une part de marché dérisoire sur le marché desktop, mais il est toujours décevant que les fabricants ne prennent même pas la peine d'essayer de fournir des outils basiques pour leurs matériels. Si vous trouvez comment faire fonctionner les gestures, je suis preneur.