adrianwong programmer · retired coal miner

Supplementary notes on my Arch Linux installation


With the assembly of a new mini-ITX PC for work (pictured above; reasonably happy with my cable management given the space constraints), I’ve taken my first steps towards moving from macOS to Linux as my main development platform. Arch Linux, to be precise. A friend used it back in university; a colleague currently uses it; both had/have good things to say about it. Let’s just say curiosity (and Apple charging exorbitant prices for outdated and dubious hardware1) finally got the better of me.

The ArchWiki’s installation guide (which I read a number of times prior to my attempt) is comprehensive, and got me most of the way there. A few bits required some Googling and/or experimenting, but none of the issues I ran up against were particularly difficult to resolve.

It took a number of hours over the weekend, but as someone new to this, it wasn’t as difficult an experience as I imagined it would be.

Fearing that I’d forget how to replicate my success (highly likely, given my memory), I made some supplementary notes that I’m dumping here for my future self:


Connect to the internet

If dragging an ethernet cable from one end of the house to the other isn’t feasible, tether a connection via USB, then:

Partition the disks + format the partitions

fdisk partitions the drive; mkfs formats the partitions.

Mount the file systems

At this stage, just mount the Linux filesystem partition to /mnt. Mounting the EFI system partition comes later (i.e. when installing the boot loader).


Select the mirrors

It’s worth reiterating here that vim (and nano) are available in the live environment.

Configure the system

Boot loader

From the root of the newly installed system:

OPTIONAL: add Windows to the GRUB menu:



If the wireless interface is already listed:

If wifi-menu errors with a “failed to start Networking for netctl profile” message:

(Note: a helpful blog post pointed me to wifi-menu, so it was the first thing I reached for. Now that I know that the GNOME desktop environment has a built-in GUI front-end for networkmanager, it probably would have made more sense in hindsight to have used that instead.)

Graphics card driver

Simple. No futzing with outdated packages here!

GNOME display manager and desktop environment


And finally, as a freshly minted Arch Linux user, I was presented with my first issue as a result of being at the bleeding edge: a blinking cursor on # reboot. Turns out it’s an issue with kernel 5.0, which can be worked around by masking lvm2-monitor.service.

All in, a pretty satisfying experience.

1 No, I don’t want a Hackintosh.
2 os-prober doesn’t detect Windows if the primary (NTFS) Windows partition is mounted instead.3
3 The Windows (10) installer doesn’t create its own EFI system partition if one already exists, even if said EFI system partition lives on a different drive.