Mark H Weaver <m...@netris.org> skribis: > I've pushed a new branch 'xorg-updates' which updates almost every > package in xorg.scm, as well as mesa, dbus, glib, pixman, cairo, > poppler, inkscape, and a few others. > > My original purpose was to apply security fixes mentioned here: > > http://www.x.org/wiki/Development/Security/Advisory-2014-12-09/ > > but I decided it was a better use of my time to upgrade xorg-server to > the latest pre-release (which contains the fixes) than to try to > backport them to our old xorg-server. This required updating the *proto > packages, which in turn forced a rebuild of the X libraries and > everything built on them, so I decided I might as well update most of > xorg.scm while I was at it.
Excellent! > I've been running with these patches on my own system for the last day > or so, and it's working very well so far. The X server now uses > xf86-input-evdev, which among other things enables hotplugging of input > devices. xf86-video-modesetting also now works. I was also able to > resurrect xf86-video-geode, thanks to a new upstream release. > > Two drivers no longer compile: xf86-video-ast and xf86-video-newport. > They both try to include xaa.h, which has apparently been removed from > the server, although I confess I didn't look too deeply into it. OK. > Most of the commits are fairly straightforward, but I wanted to call > attention to a few points: > > * Wherever possible, I changed the source URIs to > mirror://xorg/individual/. For most of the package updates this was > required, and then for consistency, in the final commit I changed all > of the URIs for the packages I didn't update. I made it the last > commit so it will be easy to remove if there are objections :) This is a good initiative IMO. > * Many video drivers needed patches. Most of the patches are for two > recurrent problems: > > * mibstore.h has been removed in the X server, and 10 of the video > drivers haven't yet been updated. Fixing this requires patches > like this: > > > http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/xf86-video-nv-remove-mibstore.patch?h=xorg-updates > > * There's an incompatibility between glibc-2.20 and the os.h header > in the xorg-server package. Until they fix this properly, a > simple workaround is to include <xorg-server.h> before including > the headers for the internal X driver API, as done here: > > > http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/xf86-video-intel-glibc-2.20.patch?h=xorg-updates > > * Related to the problem above, some video drivers checked for the > exa.h header in their configure scripts, and the test compilation > fails for the same reason as above. My workaround was to hack the > configure script to include <xorg-server.h> in the test program, > using patches like this: > > > http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch?h=xorg-updates Woow, congratulations for handling all those glitches! > I've asked Hydra to build this new branch, and when it's done building > (or close to it) I plan to merge it into master. > > In the meantime, if anyone feels inspired to review these 116 commits, > your comments and suggestions are welcome. Testing would also be very > helpful, as I was only able to test on my Libreboot X60 laptop with > intel graphics. I’ve been meaning to test it on my laptop (“intel” driver), but that’s a lot of rebuild, and I have gotten there yet. Thanks a lot for taking care of this. I hope we’ll find out what’s going on with Hydra so it can start building it for good. Ludo’.