xorg.conf.d - InputClass feature request

Peter Hutterer peter.hutterer at who-t.net
Sun Jan 3 03:42:19 PST 2010


On Sat, Jan 02, 2010 at 12:03:24PM +0100, Alberto Milone wrote:
> I have noticed that "the ability to set the Xorg driver, or arbitrary driver 
> options, directly through udev has been removed".
> 
> This is a bit of a problem for me (and for Canonical's OEM team) as, after 
> dropping hal, I was relying on udev to apply my quirks for touchpads.
> 
> For example, here's an extract from a udev rule that we're using in Ubuntu:
> ATTR{[dmi/id]product_name}=="Inspiron 1011|Inspiron 1012", \
>   ENV{x11_options.JumpyCursorThreshold}="90", \
>   ENV{x11_options.AreaBottomEdge}="4100"
> 
> ATTR{[dmi/id]product_name}=="HP MiniNote 1000", \
>   ENV{x11_options.JumpyCursorThreshold}="20"

this is the wrong approach. we should _not_ have xorg configuration outside
of xorg, if we've learned anything from the HAL debacel.

> Touchpads don't expose enough information about themselves in the kernel (i.e. 
> vendor, product and name are still too generic for quirks), therefore I use 
> udev to get the system name from /sys/class/dmi/id/product_name and apply the 
> quirks only for certain laptop/netbook models.
> 
> Now that this feature is going away I would like to be able to do the same in 
> the InputClass by adding an option such as "MatchDmiProductName" or whatever 
> name you prefer.
> 
> For example, the following configuration would be applied only on the Dell 
> Mini 10v:
> 
> Section "InputClass"
>         Identifier "synaptics"
>         MatchIsTouchpad "true"
>         MatchDmiProductName "Inspiron 1011"
>         Driver "synaptics"
>         Option "AreaBottomEdge" 4100
> EndSection
> 
> Would you consider accepting a patch to implement this feature? If so, I would 
> work on it.

this is too specific to the particular product and its quirks. It would be
better to use a tagging system or something similar. udev assigns a tag
based on whatever condition and that tag may be used by specific xorg.conf
sections. this way, you can tag your device as "need_touchpad_quirk" or
simply "inspiron" or whatever but the actual _configuration_ is in
xorg.conf.d.
 
I think this should fit into the current design and it is not bound to a
specific backend and splits configuration from quirk detection. Plus, how a
tag is assigned doesn't matter to us and what happens with the tags doesn't
matter for the tagger. How does that sound?

Cheers,
  Peter


More information about the xorg-devel mailing list