I woke up this morning thinking to myself, "Self, you know what I miss? I miss the unadulterated agony of installing linux in the 90s. How can I recapture the fear and shame of that whole process in this present age of miracle and wonders?"
At 31, I'm not terribly old but I've observed a good majority of the evolution of modern computing. I once gave an interview and talked about how things were back in the day. My interviewer frowned at me with a look reserved for when a person tells you they used to ride a triceratops to work when they were younger. But really, 1994 was a long time ago and computers were hilariously primitive back then: that was the year of zip disks, the 14.4k modem, that was the era of America Online and Compuserve. I remember thinking you could never in a million years fill an entire gigabyte of space and that Bill Gates was nuts to declare that we could deliver entire movies over the internet. Chances are you probably didn't even own a computer then. (Actually, chances are you were still in diapers.)
The point is computers were rare, and it wasn't even apparent what you might use them for should you own one. Social networks didn't really exist, and not everyone had email, so it was out as a communication tool. Word processing and desktop publishing were in their infancy and printers could not be bothered to work (some things never change). Typewriters were still more reliable. I was all of 11 years old, so what in the world did I have that needed computing? (It turns out that 3D computation was surprisingly accessible even then, but that's another story.) So, with no obvious purpose and nothing else to do, I devoted a lot of time to exploring the corners of the machine.
Over the course of the years, I had become a fair hand at DOS. I could free base memory in my sleep (important for gaming, you see). It was trivial killing TSRs and moving things into expanded, then later, extended memory.
Config.sys, baby. Windows 3.0 held few challenges, I had subjugated
progman.exe and bent it to my will. I was unstoppable with a computer.
Then, some time in 1995, my father brought me to something he called a 'computer show'. Think of it as a precursor to the tech conference, a faire where vendors hawk new hardware and software from stalls. It was the bright red cartoon fedora, I think, that compelled me to investigate the display of RedHat CDs. I didn't even understand what my father meant when he nodded thoughtfully, "It's an operating system. Like Xenix." Whatever the case, madness took me and I took a copy. I knew then that this was my next challenge, but at that tender age I could never have dreamed of the realms of pain waiting for me.
Remembering Mother's Day
On a good day, linux installers of the time were... recalcitrant. I was not having a good day. I burned the first half fiddling with IDE cables just to get the CD to boot. When it finally did, I was unprepared for the parade of horrors to follow. Gone were my familiar A and C drives, replaced instead with cryptic the cryptic sequences
/dev/hda0. I was asked to choose a partition scheme by a text-mode installer that yielded no assistance. It gave me a list of the potential filesystems to use, I typed in '83' and prayed for the best. I hope I don't need that 'linux swap' thing.
For days after, my computer was a battleground. Linux fell to my assault in pieces: first the filesystem, next the package manager, then the display drivers and the serial peripherals. Finally, after getting my monitor refresh rate right, I was rewarded with a pair of cartoon eyes that followed my cursor around the screen. Behind those eyes lay the wreckage of a devastated DOS setup and a master boot record that would never be the same again. It was worth it, though. Redhat and X11 were installed, all that was left to do was get on the internet. Just follow the documentation on ppp and Hayes-compatible modems and I'd be gold.
I don't remember exactly when I gave up. Several more days had passed, that much I know. Something in the documentation just didn't jive. It asked me to run a command that didn't exist, to start a process that, near as I could tell, was little more than fanciful dream in some fiction writer's eye. The modem would dial, a connection was made, and then nothing. I couldn't tell which of the dozens of config files I had broken. By this point, it had been days since I had a working computer, and it was too much for me. As fascinating as the process had been, I was just a child and I wanted to play my games and get on this new and exciting 'internet' thing. I broke out my DOS 6.22 floppy disks and started rebuilding. Microsoft welcomed me back with warm, inviting arms.
Slow Moving Technology
Windows 95 and 98 came and went on my PC tower with the funny master boot record. (Forever after, it would insist that you hit enter twice after the system diagnostic stage before it would boot.) I eventually came to discover that I had been installing the 'notorious' Mother's Day Release of Redhat. Deemed irretrievably broken by those who knew better, it was a wonder I made it as far as I did. It was 1999 before I saw fit to try again, the scars had not yet faded. Perseverence paid off. This time, when the cartoon eyes came up, so did my TCP/IP connection.
The thing was, the whole process had been as painful as my first go-around. Nothing had really improved in the intervening years. The concept of user friendliness had not yet been invented. We still had text mode installers that only got you partway through the process then dumped you into an unadorned terminal as root. It's a forgone conclusion now, but in those days you had to decide whether or not you wanted a windowing system. If you did, there were dozens of ways to get there, but the installer would yield no secrets. Heck, it didn't even tell you that there was a windowing system to be installed. I spent months installing and uninstalling every interestingly-named package in the Debian repository just to see what they would do.
And for some perverse reason, this is exactly what I wanted today. I wanted the uncertainty that comes with total control. I wanted to roll around in malformed dotfiles and configurations until my eyes bled. I wanted to fight XF86Config for supremacy and come out on top. But what to do? Ubuntu had brought linux to the desktop with its convenient installer and live CDs. A few clicks and you had a ready-made desktop system waiting for you. Everyone modern distro had basically followed suit. I wanted to scratch a nostalgic itch, not build a linux distro from scratch. (Yet another adventure for another time.) Surely there was a happy medium.
The Search Goes On
And so it was casual masochism that had me trying out obscure linux distros, looking for the pain that hurt so good. After trying out Mint, it was clear that all Ubuntu-based distros were out. They were built on the idea that linux should be accessible. Definitely not what I wanted. The same went for all Fedora-based distributions. Slackware held promise, but I wasn't sure I was ready to summon those demons.
Crunchbang, Antix, Mepis, Damn Small Linux, Puppy Linux, the list went on. I was just about ready to try out a BSD when I realized that my irrational fear of leaving dpkg behind was limiting my options. In the course of my search, I had dismissed Arch early on because it used a package manager named 'pacman'. On top of that, it had poorly chosen flags. These now seemed like the right direction for my search. In Debian, installing a package called
foo would use a command like
apt-get install foo. A little cryptic, but the word 'install' at least gave you an idea of what would happen next. In Arch,
pacman -S foo was the equivalent.
-S for 'So Promising'.
Life Under the Arch
Minutes into the install process, I knew I was home. The install guide is terse, almost aggressive. Partitioning is considered part of the installation process in most distributions. Arch considers this a pre-install step: you are on your own. Even the so-called beginner's guide offers this gem, with no guidance on whether or not you might want to perform this action.
Erase partition table
If you want to start from scratch, and do not intend to keep existing partitions, erase the partition table with the following command. This simplifies creating new partitions and avoids problems with converting disks from MBR to GPT and vice versa.
# sgdisk --zap-all /dev/sda
In the end, I only had to reboot twice to make sure I wasn't destroying any of my existing partitions. I only ruined the UEFI boot process once and it only took 20 minutes to recover. I wrestled with xinit, screwed around with synaptics drivers, and had to build many of my favorite packages from source. I had to use a chroot to bootstrap the system, arcane magic I'd never done before. Breathe in deep. This is the linux of my childhood.
To be completely fair, the vast majority of things worked out of the box. I had a workable system in hours, not weeks. Arch was merely challenging, not a life or death ordeal. Perusing the wiki, I found a page titled The Arch Way. In it, they describe how they emphasize user responsibility over user friendliness. In a way, it's like a codification of the wild west of linux in the 90s, honed to a fine point. Arch goes out of its way to make sure that you have that paralyzing freedom of choice when getting your system up and running, minus the annoying fiddly bits. I'll admit that as I've gotten older, I've lost a lot of interest in tweaking everything so that it worked just so, but it's been very refreshing to feel that kind of control again.
Should you install Arch? It's hard to say. The answer, I think, is a solid 'maybe'. If you're like me, you live in vim and only ever have two windows open: a browser and a terminal. You can get that anywhere, and Arch has nothing special for you in that regard. You may find it a nice afternoon diversion to try to recapture your lost childhood, but unless you're trying to bring a very old machine online, you'll probably have a better time playing with a Skip-it.
If, however, you have no opinion on the IDE -> SATA changeover, (or even ISA -> PCI, if you like) then this will be an eye-opening experience for you. It will force you to reconsider your definition of a 'working computer'. There is a certain joy to be had in cherry-picking the pieces of your operating system. The modern twist is that there's very little risk that you'll have nothing to show for your trouble. It is absolutely worth doing once, even if you go back to Ubuntu in the end. For a little extra flavor, try an old-school window manager like Fluxbox rather than a full desktop environment. See for yourself how the older half lived.
In the end, I had a ton of fun. And for that, Arch gets a solid 9/10 squirrels.