Arch Linux: The Ideal Geek Distro?

Arch sticks firmly to the CRUX philosophy, ‘Keep it Simple’. ‘Simplicity’, according to Arch, is defined as “…without unnecessary additions, modifications or complications.” Arch is so simple that the core image is less than 320 MB. It’s optimised for i686 processors, which means you need CPUs of Pentium II or a higher class to run. Arch also has an official x86_64 version.

An install of the latest Arch Linux core image will give you a command-line interface—no X, no desktop environment, no extra software. It might sound stupid—why would you want only a command line interface? But that is what I love about Arch. Linux is all about choice and in the process of trying to keep everything ready for you when the installation is over, distros like Ubuntu, openSUSE, Mandriva and the like, do not give users much of a choice as to what software they need to have. Of course, such distros are fantastic when it comes to first-time Linux users. They serve as a launch pad for them to better understand Linux. But intermediate Linux users would rarely use them (unless they are developing or contributing). [ED: And if you’re also one of those who likes to get started with things without much fuss ;-)]

The question that now arises is — in what way is it better than other proven distros like Debian, Slackware, etc?

Let us not try and compare distros. Every distro has its own philosophy. Here’s what I like about Arch:

  1. Minimalist: You can install it easily on computers that are relatively old. I’ve personally installed it on a Pentium III desktop with 128 MB of RAM and it works really well. Also, I’m typing this out on my laptop, which has a Core 2 Duo processor and 3 GB of RAM.
  2. Rolling release: A rolling-release system is basically a framework in which you get the latest version of the operating system if you have the latest updates installed. It eliminates the headaches that I used to get using ‘dist-upgrade’ on Debian. Yes. Gentoo, Sidux and Debian Sid also have a rolling release system. But I feel they are either too hard to install (Gentoo) or rather unpredictable with respect to stability (Sid).
  3. Configurability: Since Arch core installs only a command line system with the necessary packages to detect a network, keyboard, display and other vital hardware, you can configure the system, pick and choose the software you need and set it up in just the way you want. To edit settings, you have to open the respective .conf file directly and edit it yourself. This struck me as geeky. It’s not really difficult to do this as there is a good wiki online and a strong community that will help you do it. For instance, to configure the X window system, you have to directly edit the /etc/X11/xorg.conf file (if you have installed X). Yes, a simple xorg -configure would do the job as well, but there is nothing like configuring it yourself. Coming back to configurablity, the repository has many desktop environments and window managers—including the popular ones like GNOME, KDE, XFCE, LXDE and window managers like Xmonad. Since you install only the packages you’ll need, you will set up a system that will serve your needs, exactly.
  4. Pacman: It has a wonderful package/update manager and a nice repository. Pacman, the package/update manager written by Judd Vinet himself, is one of the best I’ve seen and installs all dependencies for a software package. Though it is not a ‘killer app’, which is the term used to describe the mighty apt-get, it is still better than many other package managers. Another advantage is that it can be used to update the system as well.
    • pacman -S package_name downloads and installs the package (gzipped tarballs),
    • pacman -Sy syncs the local database of packages, and
    • pacman -Su updates the system.
  5. Ext4: The latest filesystem was made available here, before the so-called prominent distros.
  6. Stability: The distro manages to strike a balance between the latest software and stability, with ease. Some bugs do come up here and there, but they aren’t fatal to the computer and are patched soon after they are reported. I’ve encountered few bugs in the OS.

The disadvantages of Arch, according to me, are:

  1. Minimalist: Yes, this also is a disadvantage. The system takes time to set up. It takes a few hours to install the base system, put X on top of it, and then a desktop environment on top of X. But hey, once the system is set, it works smooth as silk. You don’t have to touch your installation CD again.
  2. You can tell me…

Installation process

I’m going to tell you how to install an Arch base system from a core CD image, with the X window system and GNOME as the desktop environment. If you need instructions on setting up KDE and XFCE, the online wiki pages will come to your rescue.

You can download the latest version, i.e., 2009.02, from www.archlinux.org/download. There is an FTP install version also where you can download just the installer, which, in turn, will download the core packages from a server when you run it. Also, there are full CD, USB and ISOLINUX images available for both i686 and x86_64 targets.

I used Deluge [a Bit Torrent client] to download it and found a good number of people seeding the ISO. Thanks to that, I was done with the download in less than an hour.

After burning the ISO to a disc, place it in your CD-ROM drive, and reboot the PC. You’ll be presented with a self-explanatory GRUB-like menu. I chose the first option that says “Boot Arch Live”. This will load the live system, and you’ll be presented with a console log-in. Just type in ‘root’ for the user name—this is the default log-in and you don’t require a password at the moment.

Now that you’ve logged in, type /arch/setup to start the installer.

Step 1: Selecting the source for packages. Since I downloaded a full core image, I chose the first option here, which is, “CD-ROM or other source”. There is a second option available called “FTP/HTTP” (for the FTP install CD image) which when chosen, will take you through a page where you can set up your network and select a mirror (choose the one nearest to you for maximum speed).

Step 2: Set the clock. You can choose from a list of continents, then countries (and then cities if the selected country has more than one city listed). I chose Asia and then India. So Asia/Kolkata was the result. The installer will then ask you to set the date and time.

Step 3: Prepare the hard drive. This step enables you to prepare your hard drive. The installer detects your hard drive first. You can then either choose ‘Auto-prepare’, which will use your entire hard drive (and erase any partitions present previously) or you can choose ‘Partition Hard Drive’ which will take you to cfdisk. This is familiar territory for any intermediate Linux user. I was going to install only Arch on my laptop. But still, I wanted to be able to choose how much of my hard drive I was going to allocate to /, swap and /home. I have a 320 GB hard drive on my laptop. So I allocated 2GB for swap, 20 GB for /, made the partition bootable and allocated the rest to /home and wrote changes to my hard drive. The next step here was to set the filesystem mount points. This is where I was going to instruct the operating system about which partition to use for what, and this is where you can choose between ext2, ext3 and ext4, among other filesystems.

Step 4: Select packages. There are two options available here—base and base-devel. The former has everything you need for a basic system and ‘base-devel’ contains other packages that are optional and not as important as ‘base’. This is pretty much like the first and second Debian CDs. The first one containing all the necessary packages and the second with all the packages that are next in line, in terms of importance. It is recommended that you choose all the packages in base. Choose packages in base-devel is up to you.

Step 5: Install packages. This step is mandatory and will install all the packages you chose in the previous step.

Step 6: Configure system. Once all the selected packages have been installed, the installer will present you with a list of configuration files starting from rc.conf (the system configuration file) where you can configure your hostname, network settings (if you have a DHCP server for your wired connection, change the line in the networking section starting with eth0, or the interface that is present, to eth0=”dhcp”), the root password (Arch does not ask you to set up another user; you’ll have to do it once the system is installed using the useradd command), among others. You can edit the configuration files using either Nano or Vim.

Step 7: Install the boot loader. While the previous versions of Arch had an option to install either GRUB or LILO, 2009.02 has the option to install GRUB or nothing at all (use this option if you already have another Linux OS in a separate partition, in which case, don’t forget to add the Arch listing to the original GRUB menu.lst file).

You’re done installing the base system. Reboot the system (and make sure you remove the CD from the optical drive to prevent the installer from starting again) and that’s it.

The X factor

Before you install anything, make sure you create a new user with useradd and that your current system is up to date. A pacman -S pacman followed by a pacman -Sy and pacman -Su will update the system. Make sure you do this as the new user.

Use pacman -S xorg to install the X window system. Once installed, use xorg -configure or a pacman -S hwd, followed by a hwd -xa to configure X. In case you use a laptop and you find that your touchpad is not recognised, do a  pacman -S xf86-input-synaptics to install the ‘synaptics’ driver (most laptops have a synaptic touchpad).
Now that X is in place, it’s time to install a desktop environment—I’ll set up GNOME here:

pacman -S gnome gnome-extra gnome-system-tools networkmamager network-manager-applet alsa-lib alsa-utils alsa-oss

This will install GNOME, ALSA and NetworkManager. Once done, make sure you add hal, network-manager, alsa and fam daemons to the daemons section in /etc/rc.conf. My daemons section looked like this.

DAEMONS=(syslog-ng !network netfs crond gdm hal fam networkmanager network-manager-applet alsa)

That is all you need. You now have a usable system. You can install GIMP, OpenOffice.org, Python and the likes with just pacman -S package_name. Oh, and don’t forget to do a ‘system update’ now and then. Happy Arching!

Ratings

  • Installer: 4/5
  • Ease of use: 3.5/5
  • Features: 5/5
  • Stability: 4.5/5
  • Community: 5/5
  • Overall: 4.5/5

References

  • CohibaMan

    A good summary of Arch. I came to Arch from FreeBSD, which I absolutely loved. The only problem I had with FBSD was that my man platform is a netbook and manually configuring WPA & WPA2 was a major pain in the ass. Arch doesn’t have that problem – - netcfg took care of my initial wireless needs until I got xorg setup and installed network manager. While I admittedly prefer Ports and the FBSD package manager, pacman and yaourt have been absolute godsends.

    FreeBSD was great. It will definitely have a place on any server I plan to run in the future. Arch, however, has already earned a place in my heart due to the fine balance it strikes between BSD’s configurability and Linux’s ease of use.

  • Anish

    The best piece of software I ever came across – Arch.

    Simple and strong.

  • Ikem Krueger

    There’s no Arch Linux live cd. That kinda holds me back to try them out.

All published articles are released under Creative Commons Attribution-NonCommercial 3.0 Unported License, unless otherwise noted.
Open Source For You is powered by WordPress, which gladly sits on top of a CentOS-based LEMP stack.

Creative Commons License.