Date: June 9, 2011

Introduction

After having sucess doing a yum update from fedora 14 to 15 on a non-critical system, I feel brave enough to try it on my desktop (an x86_64 system).

Getting ready

Before I do anything else, I do:
yum update
to insure that I am starting with an up-to-date fedora install.

To my disgust and annoyance, I find it has over 100 packages to update, and I know I installed the yum-cron package.

Making yum-cron work

There are (sigh!) two steps required, and I had done only the first:
yum install yum-cron
chkconfig yum-cron on

Onward with the YUM upgrade

See the Yum Upgrade FAQ which has some specific notes for a fedora 14 to 15 upgrade.

I run package-cleanup --orphans which discovers several packages, most of which I use yum erase to get rid of.

I discover a useful shortcut that I never knew about. Even though the architecture (x86_64 or i686) is at the end of the full package name, you can do things like:

yum erase glibc.i686
To get rid of a package.

I import the new Fedora 15 gpg key via:

rpm --import https://fedoraproject.org/static/069C8460.txt

Then I do telinit 3 to get out of a graphical environment, and log in as root on the text console.

Then I go for broke with:

yum clean all
yum -y --releasever=15 --disableplugin=presto distro-sync
Disabling the presto plugin is recommended as the drpm format has changed.

Fix broken dependencies

There are always some of these to deal with, and this time some were tricky. This is highly dependent on the history of the system being upgraded, so there is no way to give hard and fast rules, each case is different. It is a rinse, lather, repeat scenario until things get worked out.

yum erase xdelta
yum erase libXaw-devel.i686
yum erase libogg-devel.i686
yum erase xfconf.i686 xfconf-devel.i686
yum erase libogg-devel.i686
After this we get to a nasty business between i686 and x86_64 flavors of glib2-devel. I do a lot of trial and error here, and what ultimately seemed to turn the trick was:
yum erase glib2-devel.i686
yum -y --releasever=15 --disableplugin=presto --exclude=glib2-devel distro-sync
This told me that the libuser-devel.i686 package was requiring glib2-devel.i686, so I did this:
yum erase libuser-devel.i686
yum erase tk.i686 tcl.i686
After noting that yum upgrade glib2-devel installed the fc15 package, I did this (which is probably totally unimportant, but I am telling you everying):
yum update yum

After this is is off updating 2460 packages and installing 324 others. I get tired of waiting and go home for the night.

Some finishing touches and then ... reboot!

In the morning, it has finished without errors and is happily waiting for me (the calm before the storm).

As recommended I do:

yum groupupdate Base
This pulls in several packages, including NetworkManager, which I DO NOT want under any circumstances! So we do:
yum erase NetworkManager

As recommended, I also upgrade grub:

/sbin/grub-install /dev/sda

The sync command works, but reboot, gives a message like:

Failed to talk to init daemon.
Couldn't find an alternative telinit implementation to spawn.

I resort to the reset button.

The machine boots up, but then the real trouble starts.

Gnome 3 sucks

I get a gdm login chooser, but as soon as I try to login as any user, I get a frowning terminal with a childish message, "Oh no, Something has gone wrong".

This is entirely a gnome issue. I can ping and ssh to this computer just fine and telinit 3 drops it back to a non-graphical multiuser mode so I can sort out the problems.

I have a detailed discussion of all of this elsewhere, but my first impressions are that Gnome 3 sucks really badly. My second impressions are worse than that.

There seems to be no easy fix, and I suppose this is a great time to try xfce4. This is actually fairly easy and is a breath of fresh air after several hours of frustration fighting with gnome.

Firefox 4

Along with the Gnome 3 disaster comes firefox 4, with buttons moved to a variety of novel locations. My habits keep taking me to the wrong places (upper left for reload and home buttons), so I was delighted when I found that firefox allows customization fairly easily. The trick is to right click on some unused section of the toolbar you want to customize and then choose "customize" at the bottom of the menu. After this you can ignore the menu if you just want to move things around (the menu will let you add things though). When the customize menu is active, you are also allowed to drag things around the screen willy-nilly to suit yourself, which is pretty nice.

I drag the reload, and home buttons to the locations at the upper left where I have always expected to find them, now my deeply ingrained habits can resume their service to me. Note that the reload button transforms into the stop button when anything is in progress, nice!

Conclusions

It is too soon to tell how Fedora 15 is going to work out. Gnome 3 has all the looks of a major disaster, but my initial impressions of xfce4 are very good! I may stick with run level 3 for a while so I can use startx or startxfce4 or whatever to launch different window managers.
Have any comments? Questions? Drop me a line!

Adventures in Computing / tom@mmto.org