More Fedora 8 Info

I have a Lenovo T60 with ATI Radeon Mobility x1400, and Intel Corporation PRO/Wireless 3945ABG wireless card. I was previously running Fedora 6, and decided that since patches were going to stop soon for that version, I should probably upgrade. :)

Here's what worked out of the ISO:
  • Suspend to Ram/Disk
  • Audio
  • Wireless
  • Wired Ethernet
  • Video
    • Worked with the Vesa driver, but most folks will probably want to use the fglrx driver (see below)
Some things required a little extra work.

Video with the Proprietary ATI fglrx driver

Livna.org repackages the ATI fglrx driver and kernel module as RPMs which make it simpler to install. You can add this yum repository easily by installing the Livna repo RPM using this command:

rpm -ivh http://rpm.livna.org/livna-release-8.rpm

This will add a repo file to /etc/yum.repos.d with the information needed to find the Livna RPMs from yum. Next, you need to issue a yum install xorg-x11-drv-fglrx command to drag down the X.org driver and the kernel module for fglrx. After that has finished, then you should be able to restart X by logging out and back in, or via the CTRL-ATL-Backspace key sequence. At this point you should be using the fglrx driver. You can validate this by starting System -> Administration -> Display, going to the Hardware tab, and then clicking the Configure button next to the Video Card section. You should see the fglrx driver selected in the list.

If you want to have a desktop that stretches across multiple monitors, you can use the attached xorg.conf file to achieve this. Pay attention to the Option "Mode2" part of the file. This section controls what resolutions are available to be chosen for your secondary monitor. At this point you should be able to connect an external monitor, and go to System -> Preferences -> Hardware -> Screen Resolution to select the proper resolution for your stretched desktop. For convenience, I added icons to my top panel in Gnome for switching between resolutions. You can use the xrandr command to determine which resolutions you can support. Note the place in the list of the resolutions you'd like to set up icons for (this is zero based, so the first item is item 0, the second item is item 1, etc). Then, you can put an new command xrandr -s n where n is the index of the resolution you'd like to set with the command. Alternatively, you can also just set up an icon that points to xrandr --output 0 --auto to try automatically setting resolutions and enabling/disabling interfaces.

Sun Java

Although Fedora 8 comes with IcedTea (a port of OpenJDK to Linux), all of the tools that I needed (javaws for one) haven't been ported, so I installed the Sun JDK for now. Fedora supports installing multiple implementations of an application and the selection of the "preferred" implementation via a system called "alternatives". Commonly, this allows one to choose between browsers, terminals, etc. However, you can use this system to provide this "selection" functionality for other applications. The way it works is via manipulating links that are in /etc/alternatives. I like to use this system so that I can swap out applications without having to muck around with .profile files. A RPM repository called JPackage provides some pre-built RPMs for manipulating these links for you.

The procedure I followed is what follows, but this should be able to be modified to other JDK versions as well. First, download the JDK you want from Sun at http://java.sun.com/javase/downloads/index.jsp. I grabbed the JDK 6 Update 3 version and grabbed the "self extracting RPM' download. Once this is downloaded, you need to chmod +x the archive, and then execute it from a terminal (./jdk-6u3-linux-i586-rpm.bin, for instance). This will ask you to accept a bunch of legal-ease, and then extract and install the RPM. Next, grab the "compat" RPM from http://mirrors.dotsrc.org/jpackage/1.7/generic/non-free/SRPMS/java-1.6.0-sun-compat-1.6.0.03-1jpp.src.rpm to create all the entries in the alternatives system for this version of the JDK. JPackage has other versions of this "compat" RPM for different JVM versions that you can view at http://www.jpackage.org/browser/browse.php in the "non-free" section at the bottom of the page. Install the RPM you downloaded. Finally, execute the command /usr/sbin/alternatives --config java to select the newly installed JVM.

In the version of the JVM I'm using, I had to do two manual things to get everything working properly for me. First, I wanted to have the Java Plugin available to me in Firefox. To get this to work, I made some links to poiint to the right libraries to enable the plugin in Firefox. First, I made a link in /etc/alternatives that points to the plugin code at /usr/java/jdk1.6.0_03/jre/plugin/i386/ns7/libjavaplugin_oji.so. Next, I made link in /usr/lib/mozilla/plugins that points to the /etc/alternatives/libjavaplugin_oji.so. I probably could have gotten away with one direct link, but I think JPackage probably should update their "compat" RPM to operate in this fashion.

The last maunal thing I had to do for Java was a workaround for a bug in the JVM that links to an old version of the Xinerama library which provides some of the desktop management for stretched desktops. There is a bug at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6532373 detailing the issue if you'd like more info. I executed the command cp /usr/lib/jvm/java-6-sun-1.6.0_03/jre/lib/i386/xawt/libmawt.so /usr/lib/jvm/java-6-sun-1.6.0_03/jre/lib/i386/xawt/libmawt.so.bak && sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/java-6-sun-1.6.0_03/jre/lib/i386/xawt/libmawt.so. This will allow graphical Java apps to run properly.

Red Hat Developer Studio

I had to install one extra package to get Red Hat Developer Studio's visual JSF Editor to function properly. I executed a yum install libXp and then I was able to run RHDS with no issues.

Other Resources
  • Fedora FAQ
    • This site has a lot of good info about installing a variety of things that most users want to have like Flash. I use it quite a bit.
  • ThinkWiki
    • Great cross distro site for getting Linux working properly with various IBM/Lenovo Thinkpad models

Comments

Anonymous said…
Thank you so much for this post. I have been beating my head against the wall for two weeks trying to figure out how to get the desired screen resolution on my external monitor attached to my Lenovo T60. I must have read a hundred xorg.conf files posted online, with no luck. Your post was simple, elegant, and best of all: IT WORKS! Thank you!!!
GrOG said…
Glad to hear that you were able to use this. Dual head in Fedora is still a pain to get working properly on ATI hardware. :(

Popular posts from this blog

Ghetto Cloud Foundry Home Lab

Using Snapshot Isolation with SQL Server and Hibernate

Fedora, Ant, and Optional Tasks