Why I Left Arch for Artix


My Linux Journey

I migrated from Windows to Arch Linux over the span of a weekend. In hindsight, this was the best decision possible at that time for me although it took me the good portion of said weekend, because I ran into a few issues that took me a long time to fix cough nvidia blackscreen issues. But at the end, it was a very rewarding feeling.

And over the years, nothing really changed. I reinstalled my system multiple times, not because it broke, but because I wanted to make a few improvements. Initially it was a simple, yet rock-solid ext4 installation that did its job. And it did it well. Then I moved everything to a LUKS encrypted ext4 drive, because at-rest-encryption just makes sense.

Over time I discovered btrfs and liked the ability to create snapshots and Copy-on-Write seemed like a benefit that makes sense, so I migrated again, used that for a while up until I went a little deeper and learned about ZFS, which seems like the final boss of Linux filesystems. It has the same COW and snapshots like btrfs, but I really liked the idea that my root and home datasets share the same ZFS pool’s free space, which means they dynamically allocate space, so I don’t have to fear that my root partition is either taking an absurd amount of space or is too small for new package installations. The main issue is zfs being an out-of-tree module due to licensing concerns, so it is a slight PITA sometimes if new major kernel releases are not yet compatible and ZFS needs to be updated. But that seems like a fair trade-off I’m willing to take.

I just noticed I’m completely deviating from the main topic of this blog post, so back to topic lol

And that’s what my current setup looks like, ZFS on an encrypted LUKS2 partition. No BS, just my current favorite file system. Encrypted.


So why switch now?

I’ve been running Arch as my daily driver for the better part of eight years now, so leaving it isn’t a decision I made lightly. I was never the crazy distro hopper that switched every weekend, because there simply wasn’t any need. Arch felt like the perfect distro. Period. Except systemd, Arch’s preferred and only officially supported init system, which kind of goes against my understanding of doing things “the Arch way”. The user chooses what programs get installed. I can switch my bootloader, my kernel, everything, but I’m limited to systemd? (To be fair, it is possible to run OpenRC under Arch, but it is a big pain and things will break since most, if not all packages from the official repo don’t provide OpenRC init scripts, so I would either have to write my own, or port them over from Artix anyway)

Note: An init system is basically the first process that launches. It starts other programs and daemons and does a few other things. It’s PID1 and the parent of all processes

systemd was never the greatest init system to begin with and Arch’s hard dependency on it just felt wrong - it’s bloated, it spreads into things an init system has no business touching, and the recent age-verification mess (baking compliance for a handful of inconsistent US state laws into the user database, then stonewalling everyone who objected) only confirmed it’s not a project I want sitting at the core of my machine. And Artix solved that for me. Artix is just Arch with the systemd dependency cut out, and at this point that’s exactly what I want.


OpenRC, an old friend

The funny part is that almost every one of my servers already runs Alpine, so I’ve been living with OpenRC for years and genuinely prefer it - simple, transparent, predictable. So the real question stopped being “why switch?” and became “why am I still putting up with systemd on my main when I already know I like the alternative better?” Artix answers that: same Arch ecosystem I’ve known for eight years, my choice of init, none of the baggage.


I will write another blog post about the installation of Artix on ZFS on LUKS soon :)