Upgrading from Woody to Sarge

This article was first written in February 2004 for
the BeezNest technical website (http://glasnost.beeznest.org/articles/109)
It seems I've been pretty lucky to upgrade without any major problems, but hey! If I was, why wouldn't you… Before starting the upgrade, please note that it could need up to around 1GB (depending on the packages you already have installed) hard disk space to store the packages and then install them. Once you are done with it, it will eat around 200MB more than the corresponding Woody, still depending on the packages you had before. Also, it might be a good idea to download the packages on a fast connection and keep them on your disk until you can actually do the upgrade (using -du option for apt-get dist-upgrade).
  • log as root (or use sudo if it is well configured)
  • change /etc/apt/sources.list (save the old one in /etc/apt/sources.list.woody)
    • change all stable to sarge
    • comment backports sources, if any
  • apt-get update
  • halt X and use terminal mode only (/etc/init.d/xdm stop, gdm or kdm)
  • apt-get dist-upgrade (take note of the packages that will be REMOVED, you'll probably need to readd them manually afterwards, if you want/need them. Note that lots of packages will be downloaded)
  • read the questions carefully before answering them, you'll probably want to install the new versions of the configuration files, unless you really know what you do. Chances are that you will need to reconfigure some of those files afterwards, though [1].
This is pretty much all you need to do. If you have a problem with replacing a config file, check the changes by typing "d" before accepting the update. I had a problem with xlibmesa3-glu unable to install because of some file removal need, file which was also used by xlibmesa3. I proceeded to remove xlibmesa3, temporarily (using dpkg -P xlibmesa3). This has required me to remove a lot of other packages, but basically, once it is removed, all new versions come back again with the next apt-get -f install. If the process interrupts displaying an error and asking to do an apt-get -f install, just do so and then type apt-get dist-upgrade back again when the problem is solved (see above paragraph for a problem resolution example). Once you are done with all the upgrade, check once more if there is no new version (Sarge is moving fast) with an apt-get update followed again by an apt-get dist-upgrade. Chances are you will have a new kernel. Using LILO or GRUB makes it completely different. Note that both LILO and GRUB come with a sensible script to update their configuration depending upon the kernels installed (if you used Debian kernel packages, which I recommend). You will also probably be interested in this article too: HOWTO Upgrade from devfs to udev on Debian Sarge Remove the current Java Runtime Environment or Java Developer Kit if installed (usually j2re1.3 or j2sdk1.3), and install the new version, compiled with GCC 3.2 (j2re1.4 or j2sdk1.4). Remove the Python versions you won't use anymore. Use deborphan to clean all unneeded packages (purge packages). Replace flashplayer-mozilla, if installed, with flashplugin-nonfree, which has a way to update your Flash plugin easily (/usr/sbin/update-flashplugin). If you used the GNOME 2.2 backport from James Strandboge like described in the article HOWTO Install a Debian Woody with GNOME 2.2 and OOo 1.1, I suggest you also do the following steps to get a really clean Sarge:
  • there will probably be a lot of packages left from the backport. To list them, I'd bet listing packages whose version number include a j (my packages), a jds (James' packages) or woody (James or other's packages) are of those. You'll have to remove them and replace them with the appropriate Sarge version
  • rebuild scrollkeeper's database by issuing a scrollkeeper-rebuilddb
If you used, like me, some Adrian Bunk's backports [2] with the GNOME 2.2 backport and OpenOffice.org 1.1, you may run into other problems as well. Forcing manually ( apt-get install, nothing more complicated, don't worry) the install of the removed packages will work without problems. The following command resolved the problem for me:
# apt-get install openoffice.org openoffice.org-bin openoffice.org-debian-files openoffice.org-help-fr openoffice.org-l10n-en openoffice.org-l10n-fr openoffice.org-l10n-nl debianutils coreutils manpages-fr
Christian Marillat's packages for multimedia applications will probably not upgrade like expected, but hey, this is not Debian! And as you already installed them on your own at the first time, it is not more difficult to upgrade them now. Welcome to Sarge… I strongly advise to clean packages which have been removed while upgrading. To do so, list them with the following command and purge them if needed:
# dpkg -l|grep ^rc

[1] to do so, find the files touched and re-apply your personal changes. The following command will find them for you: find /etc -name "*.dpkg-old" [2] I usually use the newer kernels from him, and their dependencies