Any Arch Linux users?

I used to use a lot of Linuxes in my day, starting with Slackware in its late-90s heyday, some Red Hat and SuSE, a long period of Gentoo, and a whole mess of small distros I dabbled in (Libranet! Xandros! MEPIS! Fedora Core! Mandrake! The BSDs! Other crap I can't remember!)

And then, with the official release of Warty (4.10), I settled on Ubuntu. (And Debian for my servers).

Ubuntu's been quite good to me, but it's not nearly as customization-friendly as Gentoo was, and I miss the "start from a simple base system and build it up to what you want" approach. But I don't miss building EVERYTHING from source, or the portage breakage I experienced in my last days of using Gentoo.

That's what makes Arch look interesting. Parallel "install from binary" and "build from source" package trees, a pragmatic approach to non-free software versus a highly ideological one (I'm glad there are the Debians out there beating the drum for all-free software, but I prefer to stand on the middle ground myself), minimalistic, BSD-style init, the user-contributed community repository, etc. On paper at least, it looks like a good time.

I've been on Ubuntu for my desktop usage for so long, I don't know how much of what I've come to expect on my desktop is present upstream, and how much is patched in by Ubuntu. Ubuntu will stay on my work machine for the time being, but my home desktop could use a Linux to tinker with.

So, anyone have any Arch experiences they can share?

Debian may offer enough of what you want already. You can very easily build any Debian package with "apt-get source packagename" -- the original upstream is downloaded, Debian patches are applied, and you're left with a nice clean directory ready to go. You can then make any changes, and issue the 'debuild' command, and it will check all your dependencies. If there are any missing, it tells you precisely what you need, and exits. Once you have everything needed, it builds .debs for you in the parent dir, which you can then install.

If you want to make sure your modified package doesn't get overwritten:

echo "mypackagename hold" | dpkg --set-selections

Then you'll see a 'not upgraded' message whenever the apt system would have replaced your custom package, meaning you need to redownload and recompile your source again to get new upgrades. After you install the new .deb, you have to reissue the hold command.

This does take more work than a full-on ports-like system, but assuming you don't need to customize every package, this works pretty well. It won't do recursive builds of dependencies, so it's not very workable if you need to compile everything, but for a few packages it's very good. And you still get notices about needing updates, which you often don't get in source-based systems.

Also note that a minimal Debian installation is very tiny -- there's hardly anything there. Be sure to skip the "standard system" packages if you want minimum size.

I'm well aware of what Debian offers. Part of this is that I've been using nothing but Ubuntu and Debian for years now.

Debian sid is in the ballpark of Arch, but there's still a very different philosophy between them.

We can see this in the installation of Xorg.

Debian's xserver-xorg package marks xserver-xorg-video-all as a dependency, and pulls down every video driver.

Arch's xorg package group, on the other hand, marks no driver automatically. You must still install a driver package yourself.

Debian is a good bit more liberal in what its package manager marks for installation. Arch is to the bone, only-builds-in-what-you-tell-it-to. The philosophy extends beyond package management, like the way Arch's system configuration is consolidated in a simple rc.conf file, instead of the same stuff spread across a bunch of tiny files (the hostname really needs to be its own one-line text file?).

These are just a couple of examples I've run into early on to try and illustrate the different feel to Arch, which I'm having a slightly hard time putting into words exactly. Maybe once I've played with it more - right now I've still just been tinkering in a VirtualBox VM a little bit here and there.

I definitely don't have to be sold on Debian - if anything, I'm trying to find excuses to not just keep myself locked into a little Debian-based bubble from here on out.

How about trying the *BSD's again then?
rc.conf style init, good performance, reasonably up to date package set (more so on Free and Open's side).
And documentation's better, not that Teh Hardcore would need it

Yeah, I was just mentioning that extra stuff in case you didn't know. It's not like Debian comes with much of a manual, and stuff like holding packages and debuild aren't exactly obvious. I learned them from a much more serious Unix geek.

I just saw a comment on LWN about a new package manager, Conary. It's a new design, from scratch, that's claimed to be much better than either RPM or dpkg. The post says that it tracks changes at the individual-file level, rather than as larger packages, and that making packages for it is very easy. And you can easily go forward or backward if you need to. Going backward is a giant PITA on other package managers, so that has me pretty interested. That kind of package management might get me to switch distros.

BSDs have a pretty good source-based package management system that will auto-build dependencies for you, but I don't remember, offhand, an easy way to track updates. I tend to find the BSDs strange and annoying, because the tools don't work how I expect. Some of their features are notably better than Linux's, but I tend to find the environment as a whole a bit primitive and hostile. I can work with them okay, and run OpenBSD on firewalls, but I really prefer Debian. I'm sure a good chunk of that is just being grumpy and set in my ways.

Smials wrote:

How about trying the *BSD's again then?

I play around with FreeBSD in a VM. Compatibility with certain Linux software keeps me from considering FreeBSD something I'd want to use on my desktop. When you get down to it, on the desktop at least, I'm a Linux user wanting to run Linux software, it seems a bit silly to run BSD and create a new layer of problems to deal with. I'd probably be more likely to go back to the heavily FreeBSD-inspired Gentoo.

But I'm definitely going to give Arch a try. Whether it sticks or whether I end up running Ubuntu or Debian sid again instead, we'll see.

Let us know how it turns out -- from your description, I'm curious, but not curious enough to bother installing it myself

Same here. I like a bit of tinkering, but not a whole lot.

I am currently on Xubuntu with my second PC. Which is a bit leaner than the normal Ubuntu installation.

Anyway, is there a real upside to not have everything installed from the beginning, save for disk space that is? Someone once told me that no matter how much stuff you install, Linux won't slow down like XP does. Is this even true?

I've never seen the slowdowns that other people complain about with XP on my personal machines. I'm not really using it anymore, but would run it regularly for 1 and 2 years at a time without needing to reinstall. Typically, I only reinstalled on a major hardware upgrade. I did one panic rebuild when I got hacked.

The machines I've seen that were really slow were usually loaded down with malware. So while I've fixed plenty of slow XP boxes, it's usually been because of hostile software, not because of XP's own faults. Occasionally, it's just been inadequate RAM.

My guess would be that, since Linux has so little malware, it should be pretty safe to load that sucker up. If you get a LOT of resident programs running at once, you could potentially run into memory shortages and, thus, slowdown. If you've got at least two gigs, I don't think that's likely. Dual-core will help even more, though it's not necessary. Linux programs tend to be a bit unpolished, but quite efficient.

I think, probably, the advantages to installing less stuff are:

  • You have less to keep updated.
  • You have a smaller attack surface for malware (if any is ever created).
  • There are fewer things that can go wrong.

I'd call all of those fairly minor benefits. Up to you as to whether it's worth missing the extra features. Typically, I don't bother with trying to avoid bloat on desktops, only servers, since computers are just so damn fast these days.

Malor wrote:

I think, probably, the advantages to installing less stuff are:

  • You have less to keep updated.
  • You have a smaller attack surface for malware (if any is ever created).
  • There are fewer things that can go wrong.

There's also:

* For any significant deviation from a default install, it's more straightforward to build in what you want than it is to tear out everything you don't that comes in a default install. Just looking at my Ubuntu install on the laptop, I've got things like the Bluetooth service running on hardware that doesn't have Bluetooth. I've got menus in Gnome that are filled with tons of default-installed software, cluttering up the menu UI compared to my Arch VM, which just has the bare minimum base install plus only the things I installed myself. Plus, some of those default-installed things pull down dependencies of their own, which can get left behind when I uninstall them (apt has become good at catching these and offering them up for removal, but some still get missed).

* This has less to do with minimal vs. complete installs per se, but one of the appeals of Arch is to run a minimally-patched Linux system. Sometimes I feel like I'm seeing the Linux software world, at least on the desktop, through a fog of furious Ubuntu patching. That's not such a terrible thing per se, but after a few years of that, I'm struggling to tell the difference between what's Ubuntu and what's upstream. And the geek in me isn't so thrilled about that.

Nothing too major - as you said, desktops have become really fast and I've have nothing but good experiences with Ubuntu, especially the past few releases. I doubt I'll be taking Ubuntu off my work laptop anytime soon - they've really achieved a superb balance between offering up-to-date packages and testing for stability with their 6 month release cycle, plus integrating restricted modules in the default install pleases my not-super-idealistic approach to using free software.

Malor wrote:

I've never seen the slowdowns that other people complain about with XP on my personal machines.

I have noticed it but it's mostly when you install and remove a lot of programs/games. But at the moment my main machine is only used for gaming and so I can do with a XP install for 2 years now. In the past, when I was furiously installing stuff I would have to format every 6 months.

I agree that removing unwanted stuff can be harder then adding the stuff you want. That's why I like my Xubuntu, it's pretty lean.

Sometimes I feel like I'm seeing the Linux software world, at least on the desktop, through a fog of furious Ubuntu patching.

That's mostly Ubuntu. They really ship stuff before it's ready. And they have a weird policy where they'll releases patches constantly, but they often won't fix annoying problems until the next release.

Shuttleworth seems to have this fundamental faith that open source stuff runs by different rules and doesn't need to be tested as thoroughly as commercial software. I think he's partially right, but not completely.

Arch is awesome. After emerging myself into oblivion with Gentoo one too many times, I decided to switch. Arch definitely retains the feel of Gentoo where one can build up their own unique system, but not have to spend hours compiling source. I've been using it for a couple years now at home, work, my laptop and my VPS.