Here's another one for the "new workstation series."
Until now my linux-usage has been very Debian based. It's good, it's
stable, and the package management system is really intensely wonderful.
I was happy. And then I was somewhat less happy. Ubuntu--the
distribution that I'd been using on my desktop.
Don't get me wrong, Ubuntu is great and I'd gladly recommend it to other
people, but... with time, I've found that the system feels clunky. This
is hard to describe, but a growing portion of the software I run isn't
included in the normal Ubuntu repositories, some services are hard to
turn off/manage correctly (the display manager, various superfluous
gnome-parts,) and I've had some ubuntu-related kernel instability.
My server, of course, runs Debian Lenny without incident. There's
something really beautiful about that whole stability thing that Debian
does. I considered running Debian (lenny/testing) distributions on my
desktops because of the wonderful experience I had Lenny, and so I
tried running various flavors of Debian and I either found that for the
software I wanted to run things were either too stale or too unstable.
This is totally to be expected, as Debian's singular goal is stability,
and getting a fresher/less stable operating system that's based on
Debian is always going to be a difficult proposition.
In the past I've dragged my feet with regards to upgrading operating
systems because I take a "don't fix it if it ain't broke," approach to
maintaining computers, and all my systems worked so, so until I was
faced with this work computer--despite my dissatisfaction--I'd never
really seriously considered the mechanics of changing distributions,
much less the prospect of having to interact with a linux distribution
without the pleasures and joys of apt-get.
But then I got this new work station and...
I switched. At least for one system. So far. ArchLinux uses a system
called "pacman" for package management. Pacman is really nifty, but it's
different from apt: it's output is a bit clearer, it's just as fast and
"smart," and the packages are fresh.
And then there's the whole business of the way Arch approaches
management; Arch uses a 'rolling release system" where rather than
release a version of an operating system, that has a given set of
packages at a given moment, Arch packages are released when they're
"ready" on a package-by-package basis (with an awareness toward
interactions between packages,) and pacman has a system for easily
installing software that isn't in the main repositories as packages.
(Which makes upgrading and removal of said packages later much easier.)
This sounds complex, maybe too complex, but some how, it's not. When I
started thinking about writing this post, I thought, "how do I convey
how totally strange and different this is from the Debian way." By the
time I got around to actually writing this post, I've settled into a
place of stability and I must confess that I don't notice it very much.
It's wild, and it just works.
I was going to go on this whole schpeal about how even though the
functional differences between one "flavor" of GNU/Linux and another are
pretty minimal, it's interesting to see how different the systems can
"feel," in practice. Here's a brief list of what I've noticed:
I find the fact that the flags that control operations with pacman to
be non-intuitive, and frankly I'm a bit annoyed that they're case
sensitive so that: pacman -S is different from pacman -s
which leads to a lot of typos.
I've yet to set up a machine in Arch that uses wireless. I'm just
wary, mostly, of having to set up the network stuff "by hand" in
Arch, given how finicky these things can be in general.
The ABS (arch build system, for installing packages that aren't in
the main arch repositories,) took some getting used to, I think this
is more about learning how to use a new program/tool and the fact
that the commands are a bit weird.
Having said that, I really like the way the package building scripts
just work and pull from upstream sources, and even, say, use git to
download the source.
I'm impressed with how complete the system is. Debian advertises a
huge number of packages and prides itself on its completeness (and it
is, I'm not quibbling,) but I run into programs where I have a hard
time getting the right version, or the software plain old isn't in
the repository. I've yet to find something that isn't in the
repository. (Well, getting a version of mutt with the sidebar patch
was a bit rough, and I haven't installed the urlview package yet,
but that's minor.)
I think this is roughly analogous to the discussions that python/ruby
people have with perl people, about actual vs. the advertised worth of
the CPAN. (eg. CPAN is great and has a lot of stuff, but it suffers from
being unedited and its huge number of modules is more an artifact of
time rather than actual value) So that, while Debian (and CPAN) have
more "stuff" than their competitors, in many cases the competitors can
still succeed with less "stuff," because their "stuff" has value because
it's more edited and they can choose the 80% of stuff that satisfies 94%
of need, rather than having 90% of the stuff that satisfies 98% of need.
Diminishing returns and all that.
It's lightweight and smooth. While the hardware of my work computer
is indeed impressive, particularly by my own standards, the hardware
of the "virtual machine" isn't particularly impressive. And it's
still incredibly peppy. Lightweight for the win.
Next up? More reasons Arch Rocks.
See you later!