Tips For Doing Fun Things With X In Debian

Pinning to Experimental

The XStrikeForce uses the experimental archive to stage work that isn't ready for wider release yet. This can be due to transitional periods or simply that a Debian release is nigh and we're trying not to disrupt things. Because there are so many packages that make up an X installation, it can be a pain to try and run everything from experimental though. A way to make this easier is to use apt's pinning ability. It's described in the "apt_preferences" manpage in detail. You should be able to simply drop preferences in to your "/etc/apt/" directory and it'll prefer packages in experimental to those in unstable. You should customize this file as necessary to make your installation work for you. aptitude's interactive mode can be of great help in massaging a difficult installation.

If you want to regenerate this file you'll need to install the "grep-dctrl" package. Once you have that installed, run this command:

grep-available -F Maintainer -s Package '' | perl -n -e '@p = split ; print qq/Package: $p[1]\nPin: release experimental\nPin-Priority: 995\n\n/'

The above will print out a file similar to the one attached above. You can edit this file as necessary, including adding packages of interest (such as libxcb*) as well as removing old ones (like old input drivers you don't care about) to make your install work nicely.

An alternative command to generate a shorter but functional file is:

for maintainer in; do printf "Package: %s\nPin: release experimental\nPin-Priority: 995\n\n" "$(grep-available -n -F Maintainer -s Package "$maintainer" | tr "\n" " ")"; done

To include the libxcb* packages modify the command by appending to the debian-x... email address the following one, separated by a white space: