Sunday, March 20, 2005

RPM Hell

Ok, I am not even sure how it happened, but at some point I enabled a Mandrake Cooker site for urpmi (see the command urmpi.addmedia to add new sites).
well, be VERY careful when you do something like that. Becuase, from now on, many new updates you will install will be from the cooker site .. thus not necessarily the latest tested version but rather a version that is still under dev ...
Somehow I (during installation of some other package) I managed to upgrade my python version from 2.3.4 to 2.4.
The problem is that it broke a bunch of things ... among them bittorrent and rpmdrake.
So .. what do you do .. how do you go back ..

The first challenge was to discover which RPMs did I replace. Thanks to a tip I found on the RedHat site, I discovered the "--last" flag for the RPM command:
rpm -qa --last
will give you the list of RPMs and the day they were installed/updated. Great! Now I knew which ones I broke.
Next, I mounted the Mandrake original CD, pointed to the old Python RPMs and used the --old-package flag to update them.
RPM -Uvh --old-package python-2.3.4-6mdk libpython2.3-2.3.4-6mdk python-base-2.3.4-6mdk
(they are interdependent, so it's better to install them with one RPM command)
That fixed the Python RPMs, and now just running rpmdrake again, and installing updates upgraded them again to the lastest supported version (which is 2.3.4-6.1.10).

That got me out of RPM hell .. for now :)

Movie extensions for Firefox

Well, while Mandrake comes with some great tools (such as rpmdrake or urpmi) which make life really easy when you want to install new applications, it's pretty easy to screw things up ..

Ok .. so here's the deal. I installed firefox and then looked for extensions for it, so I can view movies and such. After doing some reasearch on the net, I found that there are kaffeine extensions for Mozilla/Firefox. There is even an RPM called: kaffeine-mozilla-0.2-1mdk.i586.rpm.
BUT, this RPM requires some newer libraries that I didn't have. Moreover, these libraries are not part of the standard Mandrake distrib yet, but rather are under Mandrake 'cooker', which is the development/beta phase of Mandrake packs.
So, the best way I found to install the kaffeine extensions is by downloading them from http://kaffeine.sourceforge.net .Then, you have to build the extensions and install them into the plugins directory of FireFox.
The main catch is that the RPM that is out there is for Kaffeine 0.5 which is not part of the standard Mandrake distro yet .. so you have to install the new Kaffeine if you want to use the extensions RPM. Or, just build them from the tar.gz.

Saturday, March 19, 2005

Digital Camera

If you haven't bought one yet, go to the gphoto site and make sure what you're about to buy is supported ! (http://gphoto.org/proj/libgphoto2/support.php).
If it's not .. you are looking for a world of pain :)

On my RHEL machine, I had to upgrade gphoto so it supported my Canon camera, and I never got it to work quite right. Also, the applications that come with RHEL to manage pictures are lame ! and I was never able to install gthumb that looked cool because the gnome version was too low.

On Mandrake, they have Digikam. Great application! very easy to use and does all the camera detection too.
However, one catch people ... It took me 3 frikin weeks to figure out that some computers (mine included) have different USB buses on the motherboard!!

My Dell Precision workstation has a USB 1.1 bus in front and USB 2 bus in the back .. go figure.
It wouldn't really matter except that when I connected the camera to the 1.1 bus, it got detected, but then gphoto was not able to communicate with it!

If you are looking for a way to figure out the speed of your bus, I don't know if that's the recommended way, but I just looked in the dmesg log. While booting the system will tell you the speed of the bus.
Mine says:
usb 1-2.3: new full speed USB device using address 3 the bus.
usb 2-1: new low speed USB device using address 2
(note the different terms "low speed and full speed")

It drove me crazy for days .. once I moved the camera to the fast bus ..that did the trick !

Which Window Manager

This is an easy one - after trying both Gnome and KDE -
KDE all the way !!

There are far more programs that work better on KDE, and far more useful utilities.
Most stuff today actually runs on both, but it just seems that KDE is more mature.

I have a PalmPilot, and the KPilot utility is prefect. btw, synching the Palm on 2.4 kernel is a nightmare! You have to be really creative with pilot-xfer, and I was never able to get it to sync automatically... I had to push the sync button and then run pilot-xfer.
On 2.6 kernel, with KDE - just push the button!

So, I am sure there will be a million people that will think otherwise, but my experience is KDE all the way.
Another testimony to the power of KDE is the new TUX magazine (http://www.tuxmagazine.com) a great magazine for novice Linux users. ALL their examples are KDE based. And these are experienced people :)

What Distro ??

Well, I have done so much research on this question, I still have no definite answer.
I tried the following: Redhat Enterprise Linux 3.0, Fedora Core 3, Ubuntu and Mandrake 10.1.
I finally settled on Mandrake!

Each one has benefits and drawbacks. Eventually, it boils down to the community, and the amount of support, drivers and people that are using it out there.
Ubuntu seemed to locked down .. I didn't like the whole sudo trick, that you don't really have root and all .. It felt to chewed ...
RHEL 3.0 - installation was very easy, but then the biggest drawback was that it supported a 2.4 kernel .. so any peripherals were a nightmare to install. Also, some newer utilities for digital pictures management and such did not work on the old gnome. And finally, it's a really old version of OpenOffice, which had all kinds of issues .. (RHEL 4 came out only a couple of weeks ago...)
The pros are that there is a huge following to RH in the US, and there are a ton of resources out there. Also, RHN is awesome.
If you do choose to go this route, and you don't want to pay the ridiculous amount of money RH is asking for, look closer on their site .. they have student rates ! All you need is a student friend, and you can get RHEL for $50 !! (including RHN).

A few weeks later I decided that I really need a newer kernel, and installed Mandrake 10.1. The installation was very smooth, and the user experience is awesome! It supports plug&play hardware and so far, anything I wanted to do was a breeze. Moreover, the Mandrake community (although it seems rather small in the US) is pretty big worldwide.
Mandrake provide great resources on their site. First of all, you have the Mandrake club, which gives you access to any RPM you'll ever need, and to user forums, and to much much more.
Then, they have MandrakeOnline, which is just like RHN !
Finally, MandrakeExpert - a kickass service ! After you spend two days trying to figure out something .. you can just post a question, and usually within 24 hours someone from the community will help you. Great idea, and great results.
I subscribed and paid the Mandrake fees. MandrakeClub includes MandrakeOnline membership. It's a little pricy ($130) but .. it makes life easier. You don't have to subscribe to run Mandrake. Almost any RPM can be found somewhere else on the net (pbone.net is a great source). But, it just makes life easier.

So my verdict thus far - Mandrake 10.1 rocks!
Even if you don't choose Mandrake, just make sure you use a 2.6 kernel, it makes a world of a difference.

At work I run FC-3 - it works great. It runs a 2.6 kernel, but it is clearly geared more towards a server than it is towards a Desktop. So while it does the job, I still vote Mandrake.

The Linux Desktop Experience

So .. I finally figured out what to do with this blog!
A few months ago I installed Linux as my desktop. While I LOVE it and I think it's one of the best decisions I have made in a long time, I realize that not many people have a Linux desktop yet, and it's really hard to find documentation and how to do certain things.
So, I decided to start sharing with the world my experiences ... hopefully it will help someone.