How I chose a Linux distro for my home server

How I chose a Linux distro for my home server

I have been using Linux for almost 20 years. I installed Linux for the first time when I was a teenager, inspired by the open source philosophy and interested in technology and programming. During these years, on my desktop or laptop, I have used a lot of different distros, such as Ubuntu, Linux Mint, Debian, Manjaro, Arch Linux, and Fedora.

Fedora is what I'm currently using on my laptop, and have been for about 10 years on the computers I have had. One thing I like with Fedora is that it's not a rolling distro, so it's a bit more stable and predictable. Things aren't suddenly going to look different after an update. I remember once when I was using Debian testing and one day the interface was suddenly different, due to a new version of Gnome that I had installed without paying attention to the version number. But at the same time, I like that Fedora is up-to-date enough and receives a new major release every half-year. So for my taste, it hits a good sweet spot in terms of stability and freshness.

In the past I have had virtual private servers (VPSs), although it was been a while since I last had one. But I have never had a dedicated Linux server at home until about a week ago, when I built and installed one, which is now running 24/7 in my home.

Since I'm using Fedora on my desktop computer, I first wanted to install an RPM-based distro on the server as well. But I would like to not have to update it that frequently, so Fedora's release schedule with a new release every half-year felt a bit too frequent. Instead, I was about to install AlmaLinux. I had put it on a USB stick and booted up the installer, but I discovered that there was no option to partition the disk with the Btrfs filesystem. I did some googling, and apparently Red Hat doesn't support Btrfs out-of-the-box. Instead, you need to install a different build of the Linux kernel and do some tweaking to get Btrfs. I didn't feel like that was something I wanted to do, so I abandoned my plan to install AlmaLinux.

Since there's an Arch Linux craze going on at the moment, I thought: why not install Arch instead and not update or reboot the server so often? In that way, I could run fresh packages, have access to the vast AUR, and get a slim system with only what I want. I put it on a USB stick and started the installation, following the Arch Wiki guide. Finally, I was done and restarted the computer. But then it didn't boot properly, I got some error message and was stuck at a prompt with barely anything installed. I'm just guessing, but I guess I did something wrong when installing systemd-boot, and I got stuck in initramfs when I booted the computer.

Then I reevaluated my plan. Having to struggle with even installing the server isn't what I want to spend my time on. I want something stable, simple, and boring that just works. That's what attracted me to AlmaLinux to begin with. So, I went searching again for what would be the best fit.

I ended up deciding on Debian. I installed the current version, Debian 12 "Bookworm". It was released on 2023-06-10, more than 2 years ago, and comes with version 6.1 of the Linux kernel. That felt a bit old to me, as I would prefer something with more up-to-date hardware support and improvements to Btrfs. Therefore, I installed version 6.12 of the Linux kernel from Debian's backports repository, which is the latest LTS version. The whole setup went smoothly. I decided to install Debian without any GUI, so now I have a quite a minimal server installation that's also slow-moving and low-maintenance.

I feel very happy with my Debian server now. It's a quiet mini-PC, sitting under my TV. It feels great to have this small box running 24/7 at home, now also hosting this very blog.