why I'm not scared of using Arch for my homelab
Intended AudienceHomelabbers who think Arch Linux is hard (its not)
All you hear as a noob when getting into Linux about Arch is that: 1) it’s not for beginners. And: 2) it’s not ‘stable’. After a number of years running Arch in “production” I couldn’t disagree more, on both points.
As a beginner, installing Arch forced me to understand fundamental Linux concepts. It’s not as hard as people say. You follow a guide. If you can build IKEA furniture you can install Arch Linux. While yes, Arch isn’t ‘stable’ as a rolling release, it has been rock solid for me and my personal self-hosting needs over the last few years. It doesn’t break as much as people say it does. On my desktop I’m running Arch with KDE on 6.12 LTS because of zfs and haven’t had issues aside from small DE bugs which can be expected on any OS. In my homelab I’m running them as LXC containers and there’s literally no OS install, you just drop into an arch root shell. Yes you have to set the keyrings config system configs but thats also what’s fun about it. Honestly, I found Debian much harder to use both as a desktop and container. I’ve been hosting my personal static websites on an Arch VPS container for over two years now, and I’ve been waiting for the website to break after an update but so far, nothing has.
This whole journey started because Ubuntu was giving me grief when I first tried deploying a site with Hugo static site generator. I couldn’t get Hugo to work without the latest version for some dependency. So I tried it on bleeding edge Arch and worked with no problems.
Fast forward to today, and I’ve rebuilt a new website in React, though now I’ve moved on (I’ve found React to be icky for some reason) and I’m building something new in Astro. I’m running even more small websites (including this one!) and even a clients site on Arch.
The other night was the real revelation. After years of being lazy when installing my self hosting stack of applications, using tteck scripts, .debs, appimages, or the dreaded ‘curl | sudo bash’, (we’ve all done it, don’t lie) I kept putting off updating to more reliable self installs. I’m now much further along in my knowledge than I was when I first installed these things years ago, and I needed to install them myself. It felt bad being lazy. I finally decided to after installing and setting up Navidrome from the AUR the other night. In fact I realized that most of the applications I use for self hosting personal media (Jellyfin, Plex, Audiobookshelf, Photoprism, etc.) are available either in the AUR or the official Arch repo, and then using systemd did a quick ‘systemctl enable/restart’ with little to no fuss. I can’t get over how even more beginner friendly this was compared to what I was doing before though I cant tell if I just know more now? I didn’t even have to look up installation documentation, I just knew where to look at this point, but it’s basic stuff. What was I doing this whole time? Is this when things will break? Lets find out!
But yes, that’s right, I was hosting the applications on Ubuntu from some .deb or sketchy script because everyone said “aRcH LInUx IsN’t StAbLe”. And I guess they meant stable as in the way Debian is stable, rather than “stable enough”. Well guess what? Since the applications weren’t installed via a package manager, whenever I would update using apt, these applications obviously didn’t update. So I’d have to make sure I was on top of keeping these critical applications patched, which admittedly, I often wasn’t. Unpatched software is a bad situation too, in my opinion, worse than breaking changes. I have ZFS snapshots of all the containers on Proxmox, so I can rollback in literal seconds if it does break. Can’t undo an APT in your homelab as easily.
So after an evening of switching my Ubuntu containers to Arch on Proxmox, I was up and running again rather swiftly. Now I can run a paru/pacman -Syu and everything is neatly kept up to date and patched instead of having to chase down new builds from a variety of sources. I don’t know why I didn’t think to check the AUR out for my self hosted applications sooner. I think I love Arch Linux and the AUR even more than I did before.
I don’t know why any enterprise sysadmin besides my dad would be reading this, and if you are please don’t take advice from me, I obviously wouldn’t recommend Arch for enterprise, I have no idea what that even looks like. Though to anyone considering Arch for their personal web/application/self-hosting needs: it’s not as scary as the internet or certain online forums make it out to be. The documentation on the Arch Wiki is the best guide to using modern Linux, regardless of distro. If you already daily drive Arch like I do and know how it works, you’ll be even better off. I’m even using ZFS (with an LTS Linux kernel of course) on desktop as well, so I’m taking a risk but so far so good, and I of course have backups. Containers and servers should be ephemeral anyway. Back up your data and then backup the backups, and you’ll be fine. Arch is doing exactly what I need it to do—running my sites and applications without the drama the internet warned me about, easy install, easy updates. I don’t think you should be as afraid to either.