Tuesday, June 06, 2006

No Pain No Gain


Last night, after i went back from the office, i turned on my laptop and i wanted to start updating my laptop, but suddenly, i got a freezed system after dhcp client couldn't find any DHCP Server (I once plugged this laptop at my office's network and it remembers the DHCP setting, and i didn't know how to erase this at first). It must because of the updated hotplug which patches net.agent in the last update of Slackware-current. I tried once again and it still failed. So i tried to boot using another kernel, 2.4.31 (this is one of the reason why i still keep my 2.4.x kernel, for rescue and emergency situation where i couldn't boot into my 2.6.x kernel). I want to downgrade to the previous hotplug package, but it seems that i have erased it yesterday (silly me, removing a critical package without conducting a testing first. Luckily it's only my personal laptop, not a production server, or i'll be in a big trouble). So i tried to look at /etc/rc.d/rc.inet1 and i couldn't find something that i'm looking for, so i continued my search to /etc/rc.d/rc.inet1.conf. Here i see a line USE_DHCP[0]="yes". So this is the troublemaker. I tried to remove the yes value and let it be blank. After that, i tried to upgrade to the latest udev, 0.92, created by Piter Punk and i started to reboot my system to do some testing (i won't repeat my mistake twice).

When i reboot, the system works well, except before starting xinetd service, it displays an error in /etc/rc.d/rc.M line 70 which couldn't find the directory /dev/.udev/failed/class@input.... (i couldn't remember it well). I guess this was an udev problem, so i switched to the previous package, udev-0.90 and reboot again. This time, it works well and i started to upgrade all the packages, including KDE and MySQL. I had to recompile the PHP in order to detect the new MySQL Client Library, since i linked it using the --with-mysql and --with-mysql-sock parameter, so that it would use the MySQL Client Library bundled with MySQL rather than using the bundled package in PHP which was rather obsolete and can't be used to connect to MySQL 4.1.x and above. I also found a problem in Apache since i couldn't browse to http://laptop.slackie.org, which was a local hostname for my localhost. Later on, i found that i made a virtual host which points to unavailable directory, so it won't find the page and i forgot to remove it. Now it has been fixed and i can browse to the main page.

After struggling for about 30 minutes of fixing problems and upgrading packages, finally i can enjoy the latest KDE. You can see my new KDE along with KOffice and kernel information at Konsole. In the release notes, the KDE team has stated that they have reordered the KDE startup to reduce boot time. I noticed a slight improvement on my system, but it's not a radical changes. Usually, KDE desktop will be shown after all the items in the Splash Screen are finished and splash screen have dissappear, but in the new KDE, desktop will be shown before the splash screen dissappear. It reminds me of Windows behaviour which does this sometimes, mostly if you are connected to a network and Windows are loading your profiles.

At first, i got a lot of problems, but after suffering for about thirty minutes, finally i deserved that i should got, a new shinny system with the latest kernel and packages from Slackware-current. No Pain, No Gain.