Arch Linux Install + Setup

Why the switch?

I previously used to run Debian on Éowyn, and Ubuntu prior to that. I was getting frustrated with Debian for a fair bit of time. For one, support for Debian packages seemed like an afterthought. The mupdf plugin for zathura is officially supported for Arch, and there’s a ppa for Ubuntu folks. For Debian, though? Zilch.

Other packages seemed to require the latest versions of programs like vim/neovim, and the latest version of the package Debian would let me get was still way behind the latest released version. I really just wanted the most updated software, and Arch seemed to offer that. Arch also seemed to have really, really nice documentation about everything.Some combination of the wikis and the forums seemed to cover just about everything I needed. I wasn’t really seeing that much of an involved user base in Debian.

My Debian installation was also getting to be a bit bloated and gross. I had no idea what half the things that lived in my .config directory were, so I wanted to build from ground-up. Being able to pick and choose what I wanted my setup to look and feel like, and not having loads of unnecessary packages installed and programs launched was important to me.

Installation

With that said, let’s talk about the installation process. As of April 2021, Arch has an official guided installation script (archinstall), which radically simplifies the installation process. With the installer, most of the installation should be rather seamless, so don’t worry too much.

As always, burn the image to a flash drive, and launch from there. As for the burning, I like using dd after praying to the Linux gods; programs like Etcher are really jank. Once you’re in, use iwctl from iwdto get an internet connection going. Let' take a second to give a quick shoutout to that program; it works so beautifully, intuitively, and simply. Then you can proceed with archinstall!

Go ahead and pick the options you like! For the formatting, I chose the Linux file system, and formatted the whole disk. I chose to keep the same network settings, and installed xorg for the DE-related question, and had it install Intel drivers for the graphics card. That was pretty much it! There’ll be a bit at the end that tells you that you can reboot; remember to take your flash drive out before you do that.

Ideally, you’ll be golden if you did all that. In my case, Dell was being weird, and after some screwing with the BIOS, and after using rEFInd as a boot loader (first burn it as a live USB), it was able to log in. I wasn’t sure if the archinstall program prompts you to install a bootloader, but I forgot to do that. Make sure you install one!

X

Yay! You’re in! Now, you’ll want to probably start X if you’re going to do anything vaguely graphic-ey. I added the line

exec startx

to your .bash_profile. Now, your .xinitrc will contain everything that’s being launched, like any window manager you like. I went with i3! Install whatever you like and its dependencies (might take a bit of trial-and-error). This should work; if not, you might need to install some xorg-ey things. The errors should give you a pretty good idea of what you need to install.

Yay! Assuming that works, you can resume setting everything else up mentioned in my preferences. That file and its links should contain the rest!

Miscellaneous

I’m just putting down some things I had to do during this process.

When I plugged in my monitor (through HDMI), it just duplicated the display. I wanted it to be more of an extention, so I had to add the following lines to my i3 config:

exec_always --no-startup id xrandr --output DP3 --right-of eDP1
exec_always --no-startup-id xrandr --output eDP1 --left-of DP3

I don’t know why the monitor is labeled “DP3” instead of HDMI-1 or something. Nor do I know what DP1 and DP2 are. Please let me know if you find out, though!

Initially, pulseaudio gave me some weird error about “fail[ing] to open cookie file ‘~/.config/pulse/cookie’”. I found some solution about symlinking it to another cookie file, but that failed. I don’t know what that’s about, but running it again helped. FYI, you’ll need to run pulseaudio before you run pavucontrol. I added this to my i3 config as

exec_always --no-startup-id pulseaudio

I have no idea how to install fonts. I’ll update this when I figure out how/find the the need to. So far, the default seems to be holding up okay.

Promised update: you can install fonts with pacman. You can first query the packages with pacman -Ss. The AUR’s pretty sweet too!

Example of my Arch rice

Sorry, I had to blur the PDF a bit, since it’s copyrighted. That’s all, folks!

I’m still setting things up, but I’ll update this in the upcoming weeks as I learn more about Arch and figure out what I want/need. Feel free to reach out to me if you have any questions!