Breaking a dpkg Addiction with Gentoo

“Hello. My name is Kevin, and I’m a dpkg addict. Its been 3 days since my last apt-get…”

Dpkg is the package management system for the *buntu’s and for Debian. Don’t get me wrong here, its a great and versatile way to handle what programs are on your computer. Dpkg uses a binary based distribution system, which means that the standard package you get has some precompiled code placed within it that is then extracted and then set up. This is fine for most users. As long as the package works and runs as expected, this is sufficient. I however, have had an itch for a little while to move away from downloading prebuilt packages. Why? Building the package yourself, that is, compiling the source code for the program allows for the maximum amount of customization and the maximum amount of optimization for the machine that you are working with. When an Ubuntu developer, (which I am still planning on working towards becoming) makes a package, the goal is to make the package usable by as many people as possible, and with as many features as possible. The upside of this is that a lot of people can use the binary, while the downside is that machine optimization and compilation customization is lost. For instance, a binary distributed media player may support DV (a format used by camcorders). I don’t own a camcorder, so why would I want to waste the space on my machine with a feature I wouldn’t use? Also, say that a 3d program can use the 3DNOW instruction set to speed up graphics rendering. To be able to be run on the most amount of machines as possible, the binary has to be built without these functions, so that processors without this instruction set can run this program also. Why should I let my computer’s abilities be crippled by another computer’s lack of functionality? These are the two biggest reasons for using a code based package management technique. A code based package management system allows for the maximum control over the code in your machine, while still having a manageable system.

What is a code based package management system? It is a system for retrieving and compiling source code for your computer and the way you want it compiled. The most notable code based package management system in use today is the Portage/Emerge system used by Gentoo (and its derivatives, like Sabayon). While I am still a newbie to this system, I appreciate the fine-tuned control that Portage gives me over what exactly is on my computer. Once I find out enough about the system to be proficient, I’m likely to write a brief, comprehensive tutorial, as I’m having a little trouble finding one right now.

For most people, I would say that the level of control you get with Gentoo might be construed as over-the-top. When I was trying to set up my kernel-hacking system, various frustrations in installing the vanilla kernel on Debian and Ubuntu made me decide that I needed more granulated control over exactly the way that my system was set up. Hence I popped in a Gentoo install CD and really like it. I still plan on using Ubuntu on my laptop, but my desktop is running a brand new installation of Gentoo. A lot of my experience with Linux has revolved around dpkg based system, and its good to broaden my horizons, plus hopefully it will make me a more effective programmer!

This entry was posted in Open Source. Bookmark the permalink.

5 Responses to Breaking a dpkg Addiction with Gentoo

  1. Sue Massey says:

    I found your site on google blog search and read a few of your other posts. Keep up the good work. Just added your RSS feed to my feed reader. Look forward to reading more from you.

    – Sue.

  2. Dirk Gently says:

    Nice to see people trying something new. Ubuntu is the most capable yet generic distro – its tries to make all the people happy all the time. I like a lot of ppl started by installing Ubuntu. I would think about using it if I ever got an older pc and didn’t want to spend days setting up Gentoo. I’m using Gentoo now though and once it’s set up good, it’s very very reliable.

  3. Pingback: Links Saturday « Helpful Linux Tidbits

  4. InTheKnow says:

    You’ll be back. Gentoo has some real problems internally and they’ll burn you like they have hundreds of other.

    More than a year has passed, why don’t you tell us about your Gentoo experiences..?

  5. rottex says:

    @InTheKnow: Which problems you are referring ? I agree I recommend my (not so nerdy customers…) to use Ubuntu. But when it comes to professional hosting (+ my laptop-baby here), I still prefer (since years) Gentoo.
    I like the smooth upgrades, the rock solid system and the straightforward “only-build-together-what-is-really-needed” concept.
    On todays systems the compiling-time is no longer an issue, I think.
    Well of course you need balls. I cant remember, how often I started from scratch :-) But there comes the time when you “see the matrix” and then this freedom is pure fun !!