Sometime (several months) ago there was a “demand” from PCLinuxOS devs to install and run aptupgrade package. This was a crucial package. Everywhere on the forum (and WoTW) there were reminders about doing this. Why was it so important? Because it was upgrading apt, rpm and their libraries. Also synaptic package manager was upgraded.
Whoever did not upgraded it in time (few months window) should reinstall with fresh copy of the latest iso after creating a list of all the installed apps and backing up their ~ folder… Why? Because the packages created using the latest rpm would not be compatible with the systems that were not upgraded.
That was the suggested solution. Reinstall. BUT what if You do not want to (cannot) install from scratch due to many personal tweaks and / or for any other valid (even if just for You) reasons?
If You are desperate / brave / crazy enough and You are willing to take some risks like myself – please continue reading… I don’t have to tell You that I don’t take any responsibility for borked system right? Right…
Last night I have visited a friend who is dual-booting XP and PCLinuxOS. I tried to install gparted and noticed he did not upgraded his lappy for 10 months or so… I tried to upgrade it but all I got was librpm dependency problems – no matter what I did… SO… I said right – aptupgrade was not done…
So here is (more / less) what I did to fix it ;)… (I am skipping all the investigation steps).
Open terminal and run:
wget -c http://andrzejl.cyryl.net/WoTW/WoTW_files/aptupgrade/aptupgrade-1.0-7pclos2011.src.rpm
rpm -ivh /root/aptupgrade-1.0-7pclos2011.src.rpm
tar xvf ./aptupgrade-1.0.tar
rpm -ivh --nodeps --force --ignorearch --ignoresize --ignoreos ./*.rpm
rm -f /root/aptupgrade-1.0-7pclos2011.src.rpm
rm -Rf /root/rpmbuild/
BE CAREFUL WHILE USING THE RM COMMANDS!
NOW… Leave this terminal window open and follow this very important step.
Open synaptic. When it reloads you will get (3 or 4) errors (in one error window) about multiple versions of packages (like apt, libapt and synaptic) being installed. Write down the names of these packages and OK the message. Now search for those packages in synaptic. You will find that indeed there are multiple versions installed. Compare their version numbers and “Mark for complete removal” the older versions. Apply the changes. Wait for the packages being removed and synaptic to reload. Close and reopen synaptic. There maybe another message about duplicate packages. Write down their names, find them, mark the older versions for complete removal, apply, wait till finished, close and reopen synaptic. Repeat till there are no duplicate packages error messages when starting synaptic. I guess this could be done by using dupeclean package but I did it by hand just to make sure nothing really important won’t get removed when dealing with duplicates. When this is done close synaptic.
Now go back to that terminal window that You had open and type in:
and when done
wait for the question about installing / upgrading / removing etc etc etc… read, understand and if all ok – confirm by pressing y and punching enter.
Wait till it finishes and reboot. Why not use synaptic to do the upgrade? Because I was afraid that replacing / upgrading so many crucial system libraries after such a long time of not upgrading the system at all could crash synaptic in the middle of the upgrade and it could cause system-wide corruptions and multiple problems.
On a side note…
Last night at my friends house I got 937 packages to be upgraded, 36 new to be installed and 33 to be removed. Over 1080 MB of upgrades… After upgrading and rebooting system worked perfect without a tiniest issue. Even funnier… I forgot that I had testing section enabled and upgraded fully from it… I said I will bite the bullet and will upgrade his kernel to the testing version as well… Kernel 3.2.16-bfs was installed without a tiniest hiccup…
So did You fully rebooted? Check for updates using Synaptic as You normally would. In the future don’t forget to upgrade at least every 2 week and sporadically check forum for any important announcements for Your distro.