Proposed plans

If one forgets about libraries and clients, a whole X stack boils down to: the server itself, input and video drivers, libdrm, and mesa.

Since upgrading the server means upgrading all input and video drivers (more than 50 source packages), that’s certainly too much to backport, since we’re already trying to support stable (through stable updates), testing/unstable, and experimental. For example, in February 2011, that means xorg-server 1.7 in stable, 1.9 in unstable (and “soon” in testing), and 1.10 in experimental.

So the plan is to keep xorg-server as it is in squeeze (possibly preparing/testing targeted fix if appropriate), and backporting drivers when possible. With API/ABI updates, the minimal server version required tend to get raised from time to time, but usually drivers can be built against a rather large range of server versions. In case a driver stop building against the server available in stable, we’ll likely stick to the highest version still building against it, and then tell people to upgrade the whole stack if they need something more recent (unless some trivial cherry-picking is possible, of course).

The plan is to backport a few drivers on a possibly regular fashion, and other drivers upon request.

Input drivers

  • evdev: Linux-only keyboard & mouse/pointer driver.

  • keyboard and mouse: Needed for non-Linux ports.

  • synaptics: Better touchpad support than evdev.

Video drivers

  • ati, mach64, r128: Drivers for ATI cards.

  • intel: Driver for Intel cards.

  • nouveau: Driver for NVidia cards.

  • fbdev and vesa: Generic drivers.

  • dummy: Dummy driver, suitable when there’s no monitor connected.

Libraries

The important libraries are libdrm and mesa. The former will likely get pulled at some point by a driver, so a backport will be needed for this library. The latter is under very heavy development, so one may want to try a new release or a snapshot without having to upgrade everything to unstable. It’s a huge package to build, so we documented how to build it locally. But there’s some hope to make some weekly or daily builds available at some point.

Kernel

Some of those drivers might need a more recent kernel version than the one in squeeze, but hopefully it’ll be available through squeeze-backports as well.