Introduction
As the time flows, any component of a distribution inevitably become outdated, even the more fundamental ones. This is particularly true for the packages forming the "graphical stack" of a distro, i.e. the various pieces needed to have a working Xserver install: they range from the low-level kernel bits (AKA DRM) to the xorg Xserver with its drivers and libraries and also include other things as libdrm, Mesa, libvdpau, libva, pixman and so on...
All these components usually "grow" as the time passes, receiving bug-fixes, new features or - more interesting - some optimizations; alas, this happens at different paces and times and not always without troubles (e.g.: when the kernel 3.2 introduced a new DRM interface for the nouveau driver, the existing libdrm and Mesa suddenly not only did not build anymore because they still supported the old one, but also completely stopped working). Such situation makes the maintainers of a distribution a little wary when considering an update to the graphic stack packages because they are critical ones and some troubles here can easily break an otherwise working system: so usually they don't do any upgrade at all until the next distro release; however, in this way also the best graphical stack at the distro release time is doomed to become, sooner or later, less interesting or with less performance, while its packages become older and older.
Enters here the MIB: we would like to have for our beloved distro the latest-and-greatest graphical stack components as soon as they are available, to enjoy the new features and improvements they sports, without the need to wait for the next distro release (where usually such changes happen).
So, for all the braves, here is a complete build of all the user-space components of the Rosa 2012.1/x86_64 graphic stack: libdrm, Mesa and related libraries, pixman, xorg with its libraries and drivers; all conveniently placed in a repository for an easy upgrade.
To do it, add the repository and do an upgrade.
ROSA Desktop.Fresh 2012 - 64bit
Code: Select all
urpmi.addmedia MIB-X13 http://mib.pianetalinux.org/MIB/rosa2012.1/64/testing/mesa-xorg/
urpmi --auto-select --auto
Code: Select all
urpmi.addmedia MIB-X13 http://mib.pianetalinux.org/MIB/rosa2012.1/32/testing/mesa-xorg/
urpmi --auto-select --auto
After that , if all did go well, you will need to reload the Xserver (if you are booting in text mode) or to reboot the PC (if you are booting directly in graphical mode).
MIB build features
Generally speaking, a "MIB build" tries for any package in it to enable as many features as it is possible and useful. Here is a detailed list of major changes from the packages present on a "standard" Rosa Desktop Fresh 2012.1 install:
* Libdrm-2.4.42-69.1:
- dropped useless (and potentially dangerous) old patches causing nouveau to be built against the older DRM interface rather than the new one present in kernels >= 3.2;
- enabled experimental drivers (exynos, omap) and added packages for them;
- added means to build man pages (disabled ATM).
* Libvdpau-0.6-69.1:
- updated to new release 0.6.
* Libva-1.1.0-69.2:
- added option to build wayland support and enabled it.
* Libwayland-1.0.4-69-1:
- updated to new release 1.0.4.
* Mesa-9.0.2-69.1:
- added provision to build: osmesa library packages (enabled because it is needed by Wine 1.5.10+); wayland packages (enabled as in the standard packaging); radeonsi gallium driver (disabled for now because it needs the glamor library, not yet provided on Rosa 2012.1 and not buildable against xserver 1.13.x); opencl support for radeon (disabled for now because it needs llvm > 3.2 and libclc, not yet provided); support for the new glsl compiler for radeons (disabled for now because it needs llvm > 3.2);
- built also the drivers needed for VmWare (xa state tracker);
- built XvMC support and added a config file needed to having it actually work (but you will have to edit it according to your video card type: for instructions see the included README.XvMC file);
- removed vaapi build support and relevant patch and packages, because it was removed upstream;
- enabled, for testing purpose, some performance patches for r600g, taken from upstream: "make use of VRAM rather than GTT memory" and "re-enable discard_range handling";
- enabled the support of the texture-float feature, and hence the support for OpenGL 3.0 (3.1 on intel drivers).
* Mesa-libGLU-9.0.0-69.1:
- updated from git snapshot to the final 9.0.0 release (no functional changes, though).
* Freeglut-2.8.0-69.1:
- Added a couple of patches from upstream.
* LibGLw-8.0.0-69.1:
- updated to official release (no functional changes, though).
* Mesa-demos-8.0.2-0.20121218:
- updated sources to a recent git snapshot (at 28/12/2012);
- installed more programs than in the standard install;
- kept disabled wayland support due to building failures, related to the changes from wayland pre-1.0 to 1.0 and not yet resolved upstream.
* Pixman 0.29.2-69.1:
- updated to new release 0.29.2.
* Updated Xorg libraries:
- x11-proto-devel (7.7-69.1: why in the standard packaging xorg is 7.7, while the relative proto package is still 7.6?);
- Xwa3d (1.6.2);
- x11-data-xkbdata (2.8);
- libXdamage (1.1.4);
- libXcomposite 0.4.4);
- libxi (1.6.2);
- libXtrap (1.0.1).
* Xorg 1.13.2-69.1:
- provided a dedicated build for users of Nvidia proprietary drivers to avoid troubles with the pixman glyph cache (see below);
- updated input drivers: wacom (0.19.0) , synaptics (1.6.99: git snapshot at 02/01/2013), joystick (1.6.2) and vmmouse (13.0.0);
- updated video drivers: nouveau (1.0.6), cirrus (1.5.2), modesetting (0.6.0), openchrome (0.3.1), mach64 (6.9.4), intel (2.21.2), ati (7.1.0) and vmware (13.0.0);
- added some patches from upstream to the current ati video driver and enabled SNA acceleration mode support in the current intel video driver;
- dropped obsolete video drivers: ast, newport, radeonhd, xgixp...
- built proprietary drivers against the new server: fglrx-9.010.11, fglrx-9.012 (first official support for xserver 1.13.x) and fglrx-legacy-8.097.100.7; nvidia-173.14.36, nvidia-long-lived-295.71, nvidia-long-lived-304.64, nvidia-current-304.60, nvidia-current-319.10 and nvidia-current-319.32.
* updated utilities:
bdftopcf (1.0.4), beforelight (1.0.5), editres (1.0.6), ico (1.0.4), rgb (1.0.5), viewres (1.0.4), xcalc (1.0.5), xconsole (1.0.5), xedit (1.2.1), xev (1.2.1), xgc (1.0.4), xmag (1.0.5), xmessage (1.0.4), xsetroot (1.1.1), sessreg (1.0.8), xstdcmap (1.0.3), xvinfo (1.1.2) and xvidtune (1.0.3).
Please do a test and report your results (and remember to specify your video hw and video drivers loaded: the output of the command "inxi -F" is usually enough).
Advices to do an effective testing
1) The usual warnings apply here: this is a test repository, so every type of bad things can happen... please make sure to have a good backup before doing the upgrade and be prepared to restore it if needed.
2) Please also notice that, when toying with the graphical stack and the Xserver, is also useful to temporarily set your SO to do a textual boot rather than a graphical one: in this way you will near always have the chance to reach a working command prompt even if something goes wrong with the update, thus preventing X to work properly; this happens because (at least with the open drivers) a textual boot only involves the kernel DRM and its user-space interface (i.e. libdrm), leaving out all the other graphic stack layers.
ONLY IF YOU SUFFER TEXT CORRUPTION ISSUE!
and only if this happens to You even after the second reboot
viewtopic.php?f=53&t=3681
NOTE FOR THE USERS OF THE PROPRIETARY NVIDIA DRIVERS
To let also to nvidia users to test this MIB port, we built also a package for Xserver without the above patch: it has a release number > than the one for the package in our repo, so allowing to install the former package over the latter one. You only have to add also this repo:
Code: Select all
urpmi.addmedia MIB-X13-nvidia http://mib.pianetalinux.org/MIB/rosa2012.1/64/testing/mesa-xorg/no-new-pixman/
urpmi --auto-select --auto
Code: Select all
urpmi.addmedia MIB-X13-nvidia http://mib.pianetalinux.org/MIB/rosa2012.1/32/testing/mesa-xorg/no-new-pixman/
urpmi --auto-select --auto
GvM