Custom xorg input device configurations are not honored
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xorg (Ubuntu) |
Expired
|
Undecided
|
Unassigned |
Bug Description
Ubuntu release: Ubuntu 14.04.3 LTS
xorg package version: 1:7.7+1ubuntu8.1
No matter where I put my custom mouse input device xorg config, I cannot get the settings to be used. I tried putting my file (90-razer-
The custom config seems to be picked up by by Xorg, as can be found in the /var/log/Xorg.0.log file, but nonetheless the configuration defined in the config is not respected.
Here's the config file (90-razer-
Section "InputClass"
Identifier "Razer Lachesis Mouse"
MatchUSBID "1532:000c"
Option "ButtonMapping" "3 2 1"
EndSection
Here's the log from Xorg when I plug the mouse in:
[ 1455.588] (II) config/udev: Adding input device Razer Razer Lachesis (/dev/input/mouse0)
[ 1455.588] (**) Razer Razer Lachesis: Applying InputClass "Razer Lachesis Mouse"
[ 1455.588] (II) No input driver specified, ignoring this device.
[ 1455.588] (II) This device may have been added with another device file.
[ 1455.590] (II) config/udev: Adding input device Razer Razer Lachesis (/dev/input/event2)
[ 1455.590] (**) Razer Razer Lachesis: Applying InputClass "evdev pointer catchall"
[ 1455.590] (**) Razer Razer Lachesis: Applying InputClass "Razer Lachesis Mouse"
[ 1455.590] (II) Using input driver 'evdev' for 'Razer Razer Lachesis'
[ 1455.590] (**) Razer Razer Lachesis: always reports core events
[ 1455.590] (**) evdev: Razer Razer Lachesis: Device: "/dev/input/event2"
[ 1455.652] (**) evdev: Razer Razer Lachesis: ButtonMapping '3 2 1'
[ 1455.652] (--) evdev: Razer Razer Lachesis: Vendor 0x1532 Product 0xc
[ 1455.652] (--) evdev: Razer Razer Lachesis: Found 12 mouse buttons
[ 1455.652] (--) evdev: Razer Razer Lachesis: Found scroll wheel(s)
[ 1455.652] (--) evdev: Razer Razer Lachesis: Found relative axes
[ 1455.652] (--) evdev: Razer Razer Lachesis: Found x and y relative axes
[ 1455.652] (II) evdev: Razer Razer Lachesis: Configuring as mouse
[ 1455.652] (II) evdev: Razer Razer Lachesis: Adding scrollwheel support
[ 1455.652] (**) evdev: Razer Razer Lachesis: YAxisMapping: buttons 4 and 5
[ 1455.652] (**) evdev: Razer Razer Lachesis: EmulateWheelButton: 4, EmulateWheelIne
[ 1455.652] (**) Option "config_info" "udev:/
[ 1455.652] (II) XINPUT: Adding extended input device "Razer Razer Lachesis" (type: MOUSE, id 8)
[ 1455.652] (II) evdev: Razer Razer Lachesis: initialized for relative axes.
[ 1455.652] (**) Razer Razer Lachesis: (accel) keeping acceleration scheme 1
[ 1455.652] (**) Razer Razer Lachesis: (accel) acceleration profile 0
[ 1455.652] (**) Razer Razer Lachesis: (accel) acceleration factor: 2.000
[ 1455.652] (**) Razer Razer Lachesis: (accel) acceleration threshold: 4
[ 1455.652] (II) config/udev: Adding input device Razer Razer Lachesis (/dev/input/event3)
[ 1455.652] (**) Razer Razer Lachesis: Applying InputClass "evdev keyboard catchall"
[ 1455.652] (II) Using input driver 'evdev' for 'Razer Razer Lachesis'
[ 1455.652] (**) Razer Razer Lachesis: always reports core events
[ 1455.652] (**) evdev: Razer Razer Lachesis: Device: "/dev/input/event3"
[ 1455.652] (--) evdev: Razer Razer Lachesis: Vendor 0x1532 Product 0xc
[ 1455.652] (--) evdev: Razer Razer Lachesis: Found keys
[ 1455.652] (II) evdev: Razer Razer Lachesis: Configuring as keyboard
[ 1455.652] (**) Option "config_info" "udev:/
[ 1455.652] (II) XINPUT: Adding extended input device "Razer Razer Lachesis" (type: KEYBOARD, id 9)
[ 1455.652] (**) Option "xkb_rules" "evdev"
[ 1455.652] (**) Option "xkb_model" "pc105"
[ 1455.652] (**) Option "xkb_layout" "us"
[ 1455.661] (II) XKB: reuse xkmfile /var/lib/
ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: xorg 1:7.7+1ubuntu8.1
ProcVersionSign
Uname: Linux 3.19.0-33-generic x86_64
.tmp.unity.
ApportVersion: 2.14.1-0ubuntu3.19
Architecture: amd64
CompizPlugins: No value set for `/apps/
CompositorRunning: compiz
CompositorUnred
CompositorUnred
CurrentDesktop: Unity
Date: Sat Nov 21 17:55:00 2015
DistUpgraded: Fresh install
DistroCodename: trusty
DistroVariant: ubuntu
DkmsStatus:
rtl8812AU_
rtl8812AU_
ExtraDebuggingI
GraphicsCard:
Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller [8086:0412] (rev 06) (prog-if 00 [VGA controller])
Subsystem: ASUSTeK Computer Inc. Device [1043:8534]
InstallationDate: Installed on 2015-11-17 (4 days ago)
InstallationMedia: Ubuntu 14.04.3 LTS "Trusty Tahr" - Beta amd64 (20150805)
MachineType: ASUS All Series
ProcKernelCmdLine: BOOT_IMAGE=
SourcePackage: xorg
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 09/30/2014
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 2012
dmi.board.
dmi.board.name: Z97-PRO
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: Rev 1.xx
dmi.chassis.
dmi.chassis.type: 3
dmi.chassis.vendor: To Be Filled By O.E.M.
dmi.chassis.
dmi.modalias: dmi:bvnAmerican
dmi.product.name: All Series
dmi.product.
dmi.sys.vendor: ASUS
version.compiz: compiz 1:0.9.11.
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.60-
version.
version.
version.
version.
version.
version.
version.
version.
xserver.bootTime: Sat Nov 21 17:47:50 2015
xserver.configfile: /etc/xorg.conf
xserver.errors:
xserver.logfile: /var/log/Xorg.0.log
xserver.outputs:
xserver.version: 2:1.17.
Workaround (copied from my own post here: http:// superuser. com/a/1003494/ 261244):
An xinput set-button-map alternative can be used, but is less dynamic (it will not be applied automatically when your device is detected). The following script can be configured to run at startup (in Ubuntu there is a Startup Applications GUI to set it up). For some reasons it won't work if you simply call the script from your ~/.profile file. The MOUSE_NAME variable corresponds to whatever name is given to your mouse in the output of the xinput list command.
#!/bin/bash
MOUSE_NAME="Razer Razer Lachesis"
BUTTONS_MAP="3 2 1"
while read -r line; do
mouse_ id=$(echo "$raw_line" | cut -d '=' -f2 | sed 's/\t.*//g')
raw_line=$(grep "$MOUSE_NAME" | grep "pointer")
if [ ! -z "$raw_line" ]; then
echo "Found ${MOUSE_NAME}'s id: $mouse_id"
xinput set-button-map $mouse_id $BUTTONS_MAP
break
fi
done < <(xinput list)