Logitech Marble Mouse – Update

A recent update of the xerver-xorg package (1:7.4+1) changed the way X configures input devices – they are now handled by hal or evdev, and their sections of the xorg.conf are ignored.

I filed a bug report, and was informed that it’s not a bug. I disagree, in that if you break things in an upgrade, it is a bug.

Never-the-less, I had to figure out how to get my EmulateWheel behaviour back since the upgrade.

The evdev man page is nigh on useless, but this blog entry helped a lot.  It has lead to the following as my /etc/hal/fdi/policy/marble_mouse.fdi:

<match key="info.product" string="Logitech USB Trackball">
 <merge key="input.x11_options.EmulateWheel" type="string">true</merge>
 <merge key="input.x11_options.EmulateWheelButton" type="string">8</merge>
 <merge key="input.x11_options.ZAxsisMapping" type="string">4 5</merge>
</match>

I got the info.product part by looking at /dev/input/by-id/, and
guessing. I logged out, and restarted hal for good measure. One or the
other may not be necessary.

MATLAB on Headless Linux

I am trying to install MATLAB on a headless Linux server at work, and it is ridiculously miserable. I can’t believe that this is the industry standard. It is no wonder that people are switching to Python, Octave and Maxima. Between free, gratis systems and expensive with horrible installation, there is little to recommend MATLAB.

Logitech Marble Mouse

I wanted to use the scroll buttons on my Logitech Marble Mouse. After a bit of poking, I got it to work as I wished. Here’s my xorg.conf file:

# /etc/X11/xorg.conf (xorg X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the /etc/X11/xorg.conf manual page.
# (Type "man /etc/X11/xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
#   sudo dpkg-reconfigure -phigh xserver-xorg

Section "Files"
  FontPath  "unix/:7101"
  FontPath  "/usr/share/fonts/truetype"
  FontPath  "/usr/share/fonts/X11/misc"
  FontPath  "/usr/X11R6/lib/X11/fonts/misc"
  FontPath  "/usr/share/fonts/X11/cyrillic"
  FontPath  "/usr/X11R6/lib/X11/fonts/cyrillic"
  FontPath  "/usr/share/fonts/X11/100dpi/:unscaled"
  FontPath  "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
  FontPath  "/usr/share/fonts/X11/75dpi/:unscaled"
  FontPath  "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
  FontPath  "/usr/share/fonts/X11/Type1"
  FontPath  "/usr/X11R6/lib/X11/fonts/Type1"
  FontPath  "/usr/share/fonts/X11/100dpi"
  FontPath  "/usr/X11R6/lib/X11/fonts/100dpi"
  FontPath  "/usr/share/fonts/X11/75dpi"
  FontPath  "/usr/X11R6/lib/X11/fonts/75dpi"
  # path to defoma fonts
  FontPath  "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection

Section "Module"
  Load  "i2c"
  Load  "bitmap"
  Load  "ddc"
  #Load "dri"
  Load  "extmod"
  Load  "freetype"
  Load  "glx"
  Load  "int10"
  Load  "vbe"
EndSection

Section "InputDevice"
  Identifier  "Generic Keyboard"
  Driver    "kbd"
  Option    "CoreKeyboard"
  Option    "XkbRules"  "xorg"
  Option    "XkbModel"  "pc104"
  Option    "XkbLayout" "us"
EndSection

Section "InputDevice"
  Identifier  "Configured Mouse"
  Driver    "mouse"
  Option    "CorePointer"
  Option    "Device"    "/dev/input/mice"
  Option    "Protocol"    "Auto"
  Option    "Buttons" "4"
  Option    "EmulateWheel" "true"
  Option    "EmulateWheelButton" "8"  #Option   "Emulate3Buttons" "true"
EndSection

Section "Device"
  Identifier  "nVidia Corporation C51 [GeForce 6150 LE]"
  Driver "nvidia"
  #Driver   "nv"
  BusID   "PCI:0:5:0"
  Option "SWcursor"
EndSection

Section "Monitor"
  Identifier  "Generic Monitor"
  Option    "DPMS"
  HorizSync 28-84
  VertRefresh 43-60
EndSection

Section "Screen"
  Identifier  "Default Screen"
  Device    "nVidia Corporation C51 [GeForce 6150 LE]"
  Monitor   "Generic Monitor"
  DefaultDepth  24
  SubSection "Display"
    Depth   1
    Modes   "1680x1050" "1024x768" "800x600" "640x480"
  EndSubSection
  SubSection "Display"
    Depth   4
    Modes   "1680x1050" "1024x768" "800x600" "640x480"
  EndSubSection
  SubSection "Display"
    Depth   8
    Modes   "1680x1050" "1024x768" "800x600" "640x480"
  EndSubSection
  SubSection "Display"
    Depth   15
    Modes   "1680x1050" "1024x768" "800x600" "640x480"
  EndSubSection
  SubSection "Display"
    Depth   16
    Modes   "1680x1050" "1024x768" "800x600" "640x480"
  EndSubSection
  SubSection "Display"
    Depth   24
    Modes   "1680x1050" "1024x768" "800x600" "640x480"
  EndSubSection
EndSection

Section "ServerLayout"
  Identifier  "Default Layout"
  Screen    "Default Screen"
  InputDevice "Generic Keyboard"
  InputDevice "Configured Mouse"
EndSection

Section "DRI"
  Mode  0666
EndSection