The xorg.conf.d Patches Emerge

Posted by Michael Larabel on December 17, 2009

One of the features being worked on for X Server 1.8 is the removal of HAL support. The FreeDesktop.org Hardware Abstraction Layer project is nice in that is multi-platform, but the HAL project has largely been abandoned and is being replaced by UDisks and similar projects.

HAL is currently being used by the X Server for input device detection with hot-plugging support, mapping, and device option handling, but all of that is in the process of being gutted. Instead the X Server will revert to using platform-specific libraries and code for handling these responsibilities. To replace the device option handling that was previously done through HAL FDI files, the X Server is picking up support for reading configuration files from a directory rather than just the conventional /etc/X11/xorg.conf.

Being worked on right now (with the patches already having gone through multiple iterations) is support for storing .conf files within /etc/X11/xorg.conf.d. The X Server will continue to support reading options from the traditional xorg.conf and these options will take precedent over any values set within xorg.conf.d, where the other options can be stored. Within the xorg.conf.d directory could be a file for your mouse, a file for your input tablet, joystick, and any other devices. If there is no xorg.conf or any configuration files within this new directory, the X Server will fall-back to its usual auto-detection routines.

The latest version of the xorg.conf.d patch can be found on xorg-devel, but it should end up being merged into the X Server shortly.

HAL FDIs support matching a configuration file to a specific device that's installed or to not load the configuration at all if the device isn't found. This works by matching the FDI file to either the manufacturer/product ID, device path, or a string. Through other patches, the xorg.conf.d files will gain similar support. Dan Nicholson (who also wrote the xorg.conf.d support) has submitted patches that introduce InputAttributes and InputClass configuration options.

InputAttributes stores the product/vendor name, device path, and also some device attributes -- such as whether the device has a pointer and/or input keys. The InputClass support then exposes this to the X configuration options so that configuration options can be set for specific vendors/products, a path-name pattern, or specific types of devices (keyboard, pointer, joystick, tablet, touch-pad, or touch-screen). This then allows X.Org input drivers to install their own configuration file within /etc/X11/xorg.conf.d, but these options will only be applied by the X Server if the actual device is present.

The InputAttributes and InputClass patches can be found here and here, respectively.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. Mir's GPLv3 License Is Now Raising Concerns
  2. NVIDIA Driver Soon Likely To Support EGL, Mir
  3. OpenMandriva Goes Into Alpha Form, Russian-Based
  4. NVIDIA Brings Their Linux Driver To ARM
  5. D Language Still Showing Promise, Advancements
  6. Planetary Annihilation Released For Linux Gamers
  7. Gentoo Starts Work On KDE-Wayland Support
  8. NVIDIA To License Its Kepler GPU Technology
  9. KDE's KWin Made Lots Of Progress In 4.11
  10. Ubuntu Announces Carrier Advisory Group
  11. Qt 5.1 Release Candidate 1 Has Arrived
Latest Forum Talk
  1. Mir's GPLv3 License Is Now Raising Concerns
  2. D Language Still Showing Promise, Advancements
  3. Radeon UVD Support Merged Into Mesa
  4. Ubuntu Touch/Tablet Is Using SurfaceFlinger
  5. VP9 Codec Now Enabled By Default In Chrome
  6. NVIDIA Driver Soon Likely To Support EGL, Mir
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite