Gentoo and Xorg 7.4

(EDIT 1 [10-03-08]: I was able to find a way to get the synaptics touchpad to work :). So I changed the section where I talked about the touchpad.)

(EDIT 2 [12-19-08]: Updated package.keywords for xorg-server-1.5.2 and added a small section talking about a small problem I encountered.)

So today I was trying to get dual monitor support to work with my laptop and an external CRT I have laying around my house. Sadly though… somewhere between xorg-xserver-1.2.0.0 and xorg-xserver-1.3.0.0 support for mergedfb was dropped. This was particularly problematic for me since that is what I use to do dual screens. I accidentally received the upgrade when installing OpenOffice a week or so ago. Apparently versions of xserver less than 1.3.0.0 are no longer in portage.  So… I figured if I was going to run an “unstable” version of X I might as well try out Xorg 7.4. To do this I had to add the following to package.keywords

/etc/portage/package.keywords:

########## Xorg 7.4 #################
=x11-base/xorg-x11-7.4
=x11-apps/x11perf-1.5
=x11-apps/mkfontdir-1.0.4
=x11-libs/libXrender-0.9.4
=x11-proto/renderproto-0.9.3
=x11-apps/xprop-1.0.4
=x11-libs/libXau-1.0.4
=x11-libs/libXrandr-1.2.3
=media-fonts/font-xfree86-type1-1.0.1
=x11-libs/libXxf86vm-1.0.2
=x11-libs/libpciaccess-0.10.3
=x11-apps/xkbcomp-1.0.5
=x11-apps/sessreg-1.0.4
=x11-apps/xset-1.0.4
=x11-apps/mkfontscale-1.0.5
=x11-libs/libX11-1.1.5
=x11-apps/xdpyinfo-1.0.3
=x11-libs/xtrans-1.2.2
=x11-libs/libXinerama-1.0.3
=x11-libs/libXmu-1.0.4
=x11-apps/xrdb-1.0.5
=x11-libs/libFS-1.0.1
=x11-apps/xwininfo-1.0.4
=x11-apps/xauth-1.0.3
=x11-apps/luit-1.0.3
=x11-misc/util-macros-1.1.6-r1
=x11-misc/xinput-1.3.0
=x11-libs/libSM-1.1.0
=x11-libs/libXfont-1.3.3
=x11-libs/libXv-1.0.4
=x11-apps/xrandr-1.2.3
=x11-libs/libXScrnSaver-1.1.3
=x11-libs/libxkbfile-1.0.5
=x11-libs/libXft-2.1.13
=x11-libs/libXext-1.0.4
=x11-base/xorg-server-1.5.2
=x11-proto/xproto-7.0.13
=x11-proto/xextproto-7.0.3
=media-libs/mesa-7.1
=x11-libs/libdrm-2.3.1
=x11-proto/inputproto-1.4.4
=x11-proto/xf86driproto-2.0.4
=x11-proto/dri2proto-1.1
=x11-apps/mesa-progs-7.1
=x11-misc/xkeyboard-config-1.3
=x11-apps/rgb-1.0.3
=x11-apps/xinit-1.0.8-r3
=x11-proto/randrproto-1.2.2
=x11-drivers/xf86-input-keyboard-1.3.1
=x11-drivers/xf86-video-ati-6.9.0
=x11-drivers/xf86-input-mouse-1.3.0
=x11-apps/xwd-1.0.2
=x11-drivers/xf86-input-synaptics-0.15.2-r2
=x11-libs/pixman-0.12.0
=x11-apps/xev-1.0.3

Then I simply ran:

emerge -av xorg-x11

Then I let the magic begin. This will probably not work for everyone and certainly if you aren’t running at least modular X already you will have many issues because you need to follow the modular X migration guide.

Anyway so far it has been running very well, and I love having the use of xrandr. Especially on my laptop where I do a lot of moving around and switching of external monitors. I had several problems this week getting my laptop to work with projectors and I am hoping that this will help solve some of those problems as well. It really is quite amazing how far along X has come since I first started running Linux about 4 years ago.The one problem is that the synaptics driver does not compile against Xorg 7.4. I can still use the touchpad and as long as I can disable tap to click all will be well 🙂 . However I did find a synaptics driver. To install it I had to add the follow to /etc/portage/package.keywords:

/etc/portage/package.keywords
=x11-drivers/xf86-input-synaptics-0.15.2-r2

Then I emerged it:

emerge -av xf86-input-synaptics

Another problem I encountered was that during the upgrade has to do with an ABI change that occurred. If you read those friendly messages at the end of the emerge there is one that goes like this:

You must rebuild all drivers if upgrading from xorg-server 1.4.1
or earlier, because the ABI changed. If you cannot start X because
of module version mismatch errors, this is your problem.
You can generate a list of all installed packages in the x11-drivers
category using this command:

emerge portage-utils; qlist -I -C x11-drivers/

That happened to me, but in a more subtle way. Everything was working except for a USB mouse I had hooked up. All I had to do was re-emerge the mouse driver. If you are not sure which driver to re-compile the quick and dirty way to compile them all at once is:

qlist -C -I x11-drivers/ | xargs emerge -v 

At this point you should be all set to restart X and hope that it works right :).

On another note, I am starting to think my “only update every 6 months” policy needs some refining. Once I am done with college hopefully I will be able to afford updating more often. At present I don’t enjoy dealing with the potential breakages that can occur with upgrades when I need to get work done. Luckily this problem occurred at the beginning of my fall break so I had some extra time to mess around with it 🙂 . Hopefully I can get in another blog entry or two in this time as well!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: