So, I’ve finally decided to take the plunge and installed Arch Linux. It’s something I’ve been meaning to do for a while. For those of you who haven’t come across this distro before, it’s built on the idea that the user should have full control of their system. This means that the basic install is just the Linux kernel and a few essential utilities. In order to create a fully working system, you need to choose what bits you want to install on top of that yourself. There’s no installer to guide you (but there is a package manager and a wiki to help you).
First things first, I downloaded the ISO file, dd’d it to a USB stick, then rebooted my computer. I also had my laptop on my desk so I could read the Arch wiki beginner’s guide as I went. The Arch Linux beginner’s guide is over 8000 words, and it’s mostly quite technical. Even though I knew the philosophy behind Arch, I was shocked at just how much configuring goes into setting up Arch.
Very roughly, the process goes in 7 stages:
1) boot into the live system
2) partition your disks as appropriate
3) connect to the internet
4) use the pacstrap utility to copy a minimal system to your disk
5) chroot into this minimal system and make sure it’s configured correctly
6) set up your boot manager
7) boot into your new Arch system
At the end of this, you have a working system, but it’s very basic. From this point, you have to install and manually configure just about every piece of software you’ll need.
I’m a reasonably experienced Linux user, and didn’t have too many problems with the above steps. I booted into my new Arch install, but needed an internet connection to get any further (you may have noticed that this in also step 3 above, but that’s establishing a network connection in the live environment, not the installed version). I only have a wireless connection at my desk, and setting this up requires either wifi-menu or wpa_supplicant. However, both of these options needed additional software to be installed … software I couldn’t install without connecting to the internet to download it.
After trying various options, I eventually gave up and started the process again from step 1. On closer inspection, it does seem that I inadvertently skipped a step in the Beginner’s Guide, so we can put this entirely down to my mistake not Arch’s.
Once I had the network working, I installed the Mate desktop and the Light Desktop Manager (LDM). At this point, I had something approaching a desktop Linux system.
With a web browser (Firefox) installed, I could once again access the outside world. Sort of. Arch’s minimalist philosophy means it comes with almost no fonts, and the ones it does have made most web pages look ugly beyond words. I admit that by this point, it was getting a little late in the day, and I’d become quite frustrated. In truth, I’m not completely sure what I did. I just kept searching for Arch Fonts, and running any code I found in the hope it would work (see mouseover text here). In the end, I just went into the fonts folder and manually deleted all the ugly fonts – probably not the best approach, but it did work. There are several parts of my system that I have no idea how I got working. I just copied, pasted, and crossed my fingers. Perhaps, in hindsight, a pre-configured distro based on Arch (such as ArchBang or Antergos) might have been a better introduction to Arch since I didn’t have the time (or patience) to set everything up myself.
I am developing a sort of love-hate relationship with my new distro. As I’ve said, the process of setting Arch up can be somewhat laborious (I’m told this gets easier each time you do it). This, incidentally, doesn’t end once you have your GUI system up and running. Almost every day, I find myself back at the Arch wiki as I try to configure some piece of software. Most recently this was to sort out the kernel modules for VirtualBox. However, on the other side of things, it’s changed my attitude to the system. There’s nothing fundamentally different about the software I’ve got installed now – I could have installed just about the same software using an major distro – but I think about it differently. I don’t just blindly use the terminal emulator that came pre-installed, I use terminator because I took the time to look at all the options and decided which was best. I’ve actually edited FSTAB to mount my various filesystems (for other distros on the computer) in useful places rather than just mounting them manually every time. For me at least, the beauty of Arch isn’t that I know what’s going on under the hood completely (I still haven’t taken the time to fully get to grips with systemd), but that it made me sit back and think about the software I wanted. I could have done this with other distros, but I needed Arch to force me to actually properly explore all the options and actually do it.
It’s only been two weeks, so I’m only just starting to get to know Arch properly. It isn’t meant to be an authoritative review, but a personal reflection on starting with a distro that’s quite different from most. Any experienced Arch users who have any useful advice (or who think I’m wholely wrong about everything), please leave a comment and let me know.