failing like never before

26Jun/080

A Debian Life

I've had this draft sitting in my database for over a month, and now I think its about time it was revealed.

---Initial Thoughts and Stuff---

I switched to Debian Lenny a few months ago and I think it may be the end to my distro-hopping. In addition to the current stable release, Debian has a testing release called Lenny and an unstable version called Sid. The stable version, which is at the time of this article is Debian Etch 4.0, is (obviously) the stable release and the recommended version for normal usage, the testing version contains packages that have yet to be accepted as stable but are in the process, and the unstable version is the bleeding edge development version.

I installed the unstable version of Debian because I felt that sacrificing a little bit of security and stability was worth it to have slighter newer programs in the repository and a newer kernel. Debian has always had a reputation for being rock-solid and secure, so even the testing version of Debian is quite solid (especially when compared to Windows Vista). I haven't tried out the unstable version but from what I've heard, its quite unstable and really only meant for developers, not really practical for day-to-day use.

To be true, my interest in Linux actually started with Debian several years ago, when I read about Debian in Neil Stephenson's In the Beginning was the Command Line (the rather popular (and long) essay about operating systems and choices). It is because of Stephenson, that even though I've been distro-hopping for quite a long time and have never tried Debian before, that I have always admired Debian for its stability and development process. The Debian team has a tendency to release new versions in about the same time it took Microsoft to release Windows Vista, and its not because the Debian developers are lazy or stupid (not to infer that developers employed by Microsoft are). It is simply because the philosophy of the Debian team has been to release their software when its ready, and not before. It is unlikely that Microsoft will ever adopt such a mentality, since unlike Windows, Debian is open source and therefore, for the most part, free of impossible deadlines that inevitably result in programmers rushing to produce barely working, bug infested, code. 

---Installation---

Debian Lenny uses a text based installer that is quite simple to use. It asks a few simple questions about your mouse and keyboard, has you partition your hard drive, set up an account and password, and also allows you to select some preset groups of packages, which gives the users the ability to create a full desktop environment, server, or the like, with just one click. I decided to install the desktop package just for the heck of it, but ended up being a little disappointed; the installer is a little vague about what specifically gets installed when you select the desktop package group, and instead of KDE, I ended up with Gnome. I'm not much of a Gnome fan so I eventually ended up going through Synaptic and removing all the Gnome related packages that the installer installed.

Another thing of note, is that the installation process is pretty slow. And by slow, I mean it takes more then an hour.

---Apt-Build---

There's this tool for Debian and Debian-based distros called "apt-build," which is like apt-get but instead of using binaries to install programs, apt-build builds everything from source and optimizes them for your specific hardware in a kind of Gentoo-like manner. A default Debian or Ubuntu installation will always be slower then Gentoo or Arch Linux because binaries from the Debian repositories are built for i386 processors. That is to say, Debian is meant to run on any x86 processor, including a 486. While this seems like a really great idea (especially for people with old hardware), it turns out to be pretty lame for modern computers because CPUs have really advanced in the past decade and binaries from the Debian repositories won't use any of the extensions for the x86 instruction set, like MMX or SSE, that are available in Pentium 4s and other more recent CPUs. So a great deal of the power of the modern CPU ends up wasted.

Apt-build from a simple end-user's perspective works pretty similar to apt-get; to install a program you just type "apt-build install <program_name>." But when you call apt-build, it fetches the source code from a the repositories and configures and builds the program for your computer. Before you install apt-build you have to set some variables, like how optimized you want your programs to be (higher optimization means more time spent compiling) and what kind of processor you have.

There is also an option in apt-build to rebuild the world, or basically rebuild everything within the distro, including the kernel. I've heard that a lot of people who use apt-build have problems with rebuilding the world, but it went off without a hitch for me. I think this may be because I rebuilt my world as soon as I had installed my distro, so I didn't have any weird non-open source programs installed. Its really hard to say if Debian runs faster now, since I didn't spend much time playing around with it before I rebuilt everything, but I like to think it does. A word of advice to anyone that does try to rebuild their world with apt-build: do it before you go to sleep and leave your computer on overnight because rebuilding an entire operating system takes a while (and you may also want to do it during the winter with the windows open because a computer can get mighty hot running under full load for several hours).

---Package Management---

Apt-get, apt-build and synaptic, are top notch for handling packages and are dead easy to use. Debian beats out all other Linux distros in this respect. For anyone that has never used a Debian based distro, if you want to install an application, just open up Synaptic, check the box next to the application you want and click install, the same holds for uninstalling. Its so ridiculously simple that a child could do it without a problem. One of the common arguments against Linux is that its difficult to use, but its easy to see that installing and uninstalling programs in Debian based distros is far easier then it is in Microsoft Windows.

synaptic screenshot

Simplicity does however come at a price: performance. Like I managed before, binaries from the official Debian repository tend to execute on the slow side, and the package manager requires that certain processes be running at all times. I feel that these are small costs to pay for convenience, and I've managed to overcome the first problem with apt-build.

---FGLRX---

So the one problem I had under Debian wasn't Debian's fault at all. I installed the proprietary FGLRX drivers and it turns out that every time I drop to a shell my screen goes black and my processor goes crazy (I can tell because my fans start spinning at maximum speed). I wrote an article about my problems with FGLRX which you can read here. Eventually, I learned that this problem can be fixed by just using analog D-sub, instead of a DVI connection.

---Enlightenment---

I'm a real big fan of Enlightenment 17 and its power, simplicity, and beauty. I used the easy17 shell script that I found on the enlightenment site, thus simplifying the process of installing Enlightenment. Since Enlightenment 17 hasn't been released officially and therefore isn't stable, you won't find it in the Debian official repositories (although you can find Enlightenment 16, I believe). And because I really don't feel like writing more about Enlightenment right now, here's a link to an article I wrote earlier about E17.

Link to many shiny pictures of my Enlightenment desktop!

---Performance, Stability, Security---

Like I mentioned before, Debian pretty much comes with nothing but some basic stuff installed and its the user's responsibility to install the necessary applications. I must say, compared to Ubuntu, Debian's memory usage is really quiet impressive, mostly because of the fact that it doesn't have butt-loads of random processes running in the background. Under Ubuntu, I remember that sitting in idle I was using about 220 megabytes, but under Debian and Enlightenment I use about 80 megabytes. Of course, you're bound to get better performance out of a more streamlined distro like Arch Linux, Slackware, or Gentoo, but Debian is more about stability and security then performance. A great deal of Debian's improved performance is due to the fact that I pretty much built up my Debian install from the ground up (once I got rid of Gnome). All the unessential niceties that Ubuntu includes, like CUPS, bluetooth and wifi support, and seahorse are not included at installation. To some people this may be a bit of an annoyance, but since I don't have a printer, wifi, or bluetooth, its really quite a blessing.

ram use in debian

While Debian does tend to have a really good reputation for releasing stable distros, I am running the testing version of Debian. Even still, I've had no problems at all; no kernel panics, or mass fails at all (aside from the FGLRX drivers, and that was ATI/AMD's fault). I usually run my computer for about two weeks straight before I have to reboot it to use Windows, or just to give my poor fans a rest.

It should be noted, that a month or so back someone discovered a fairly major security flaw in Debian's OpenSSL package. The random number generator within the package turned out to be not so random, making a Debian machine much more vulnerable to attacks. This problem has since been addressed however, and a simple "apt-get upgrade" should download the new package to resolve the issue.

---Other Random Stuff---

My high school English teacher would have a fit if she how I write now. Especially this section, with its completely unrelated paragraphs.

Apparently, due to some licensing issues, Mozilla required that Debian not include Firefox in the Debian official repositories. The solution was to rename Firefox to Iceweasel, while keeping the code exactly the same. Seriously, its the exact same application. I even checked some of the file names and they're still labeled as Firefox.

Before FGLRX screwed everything up for me, I noticed that the font size for my console was really freakin' huge. I would say that each line was about a 1.5 centimeters tall. Its not really a huge deal, just a bit of a nuisance, but I have no idea how to fix it.

So apparently Debian Lenny has SELinux installed by default, but not enabled. I used to have SELinux when I ran Fedora, but I think its really too much of a pain for everyday desktop usage. SELinux is also probably overkill for my purposes; App Armor works good enough.

Debian's website is about as attractive as a baboon's backside (really, with all the developers they have, couldn't they make it look a little more modern?) but the wallpaper that Gnome can with was actually pretty spiffy. I've never been a big fan of Debian's logo, it looks a wee bit like a childish scrawl, but it looks like some developers on the Debian project have been able to spiff it up substantially for Debian Lenny.

---Closing Thoughts---

Debian is not for everyone (golly, that sounded like a drug commercial, "Debian is not meant for pregnant women or anyone currently taking anti-depressants..."). If you like having a high quality and stable operating system and don't mind having to tinker around with the guts of Linux, then maybe you have the Debian mindset. If you're one of those people that want an OS that "just works," then you're probably better off with Ubuntu or Mac OSX, something that requires no work to set up.

I really do love Debian. It gives me a warm fuzzy feeling inside.

Comments (0) Trackbacks (0)

No comments yet.


Leave a comment


Security Code:

No trackbacks yet.