Mário Nogueira

Forty years of changing operating systems

In February 2025 I wrote in my notes: "I keep investigating operating systems, and it seems to be my current hobby." That was an understatement. Over the following year I installed something new on my laptop almost every month, and sometimes twice in the same week.

Today that laptop runs Alpine Linux, and has done so since February 2026. This post is the story of how I got here. The short version covers two years. The long version starts more than forty years ago, with a rubber keyboard.

A Spectrum, then a PC with no hard disk

My first computer was a ZX Spectrum, in the early 80s. I can't recall the exact year. Like many people of my generation, that is where I learned that a computer is something you can understand and bend to your will, not just something you use.

My first PC came in the late 80s: a Schneider EuroPC. It had an 8088 processor, 512 KB of RAM, Hercules graphics and no hard disk. Everything ran from diskettes.

It ran MS-DOS, with no graphical environment. I remember trying the software of the time: WordStar, Lotus 1-2-3 and Symphony, Quattro, dBASE III Plus, Clipper, and compilers like Turbo Pascal.

After that I started building my own PCs, and kept doing it for years, until I could afford a laptop. For a while I also ran a home-built server alongside it. Choosing each component, and knowing exactly what was inside the box, was half the pleasure. Looking back, it is the same pleasure I now look for in software.

Slackware, one diskette at a time

At college I used Unix servers for the first time. I no longer recall which systems or versions they were, but they showed me there was a world beyond DOS.

The first non-Microsoft system I tried was Slackware, at college, in the early 90s. As I remember it, it came on thirty or forty 1.44 MB diskettes. Installing it meant feeding them to the machine one by one, and hoping none of them had a bad sector.

From then on I went back and forth between Microsoft and Linux for decades. In no particular order, I used Red Hat, Mandrake, Debian, Gentoo, Ubuntu, Fedora and Arch, and more recently Silverblue and Secureblue. Each one taught me something, and each time something eventually sent me back to Windows, or on to the next distribution.

Not all of them left the same mark. Four are most present in my memory, each for a different reason:

This was always my personal machine. At work the desktop was chosen for me: Windows for most of my career, and a MacBook Pro more recently. The servers were another story. As a system administrator, from 1997 until around 2014, I worked with AIX, Solaris and several Linuxes, mainly Red Hat and CentOS.

The Apple detours

I have also owned three Macs: two MacBook Pros (an Intel i5 and an M1) and, most recently, an M4 MacBook Air.

macOS is where I go when I am tired of fixing things. Everything works, the hardware is excellent, and for a while that is enough. I spent some months of 2025 on the M4 Air, and went back to it for a week in January 2026.

It never lasts. I miss knowing what the system is doing. And lately there is a second reason, which I wrote down during that week in January: the wish to get away from American software.

Two years of hopping

In late 2024 I started testing systems again, this time keeping notes. At the end of that year I stopped to ask what I actually use a computer for. The answer was modest: email, access to services (bank, tax office, social security), and managing my personal information, mostly documents, photography and music. Plus the hobby itself: testing technology.

The software list that follows from that is short: a file manager (nnn), vim, ledger for accounting, LibreOffice, a browser with an ad blocker, a document scanner, mpv, and image and PDF viewers. By February 2025 I had also written down what I wanted from the system underneath:

No system met all of it at the first attempt, so I kept moving:

Two things stand out when I read this list. OpenBSD is the system I kept missing: minimal, coherent, with everything in its place. But my hardware never fully cooperated. And the "everything works" systems (Arch, Silverblue, macOS) never held me for long, because working was not the only thing I was after.

Where I landed: Alpine Linux

Alpine was "a bit rough" when I first tried it in 2024. What changed was not Alpine. I learned to solve its rough edges one at a time, and each fix was small and understandable.

The fingerprint reader now works, and unlocks the screen. Suspend on lid close uses the ACPI support already in busybox, with no extra software; a udev rule stops the Logitech dongle from waking the laptop immediately. The firewall is nftables, and DNS goes through dnscrypt-proxy. After a period with labwc, I moved to Sway in May 2026. In August I reinstalled with btrfs, because its checksums can detect bit rot.

There is a common idea that Alpine is an operating system for containers. That has not been my experience. I haven't felt any limitation in the desktop environments I can use or the software I can run. It works as a proper daily driver.

There were compromises. Flatpak carried some of the heavier applications, although I have since moved Firefox out of it. And the systemd question is not closed: Flatpak may come to require it, and some newer software expects glibc.

The laptop is no longer alone, either. A Raspberry Pi, which started on Debian and now also runs Alpine, is my small home server. It runs WireGuard, Syncthing for the photos from my phone, and Radicale for contacts and calendar. The phone runs GrapheneOS. Step by step, I am moving my data off third-party services and onto machines I control.

Even this blog follows the same idea: it is generated by a shell script of 114 lines.

What I am watching

There are two distributions I follow without ever having tried them: Void and NixOS. I would probably have gone down the NixOS path already, if it weren't for systemd.

I also have the feeling that one day I will have to accept systemd. I'll deal with that if it happens.

Further out, I follow microkernel operating systems. I installed Sculpt OS, built on the Genode framework, and tried it very briefly. It was unusable as a daily driver, but the concept interests me a lot: a system designed from the ground up to keep its components separated.

What I take from it

I used to think I was looking for the best operating system. I was really looking for one I could understand. Every time I left a system that worked, the reason was the same: too many layers, and no idea what was happening underneath. Every time I stayed, it was because the system was small enough to hold in my head.

That is not far from where I started. The Spectrum and the EuroPC were machines you could know completely. Alpine, with busybox, OpenRC and a handful of packages, is the closest I have found to that feeling on a modern laptop.

Will I stay? My own notes suggest caution. But the hobby has shifted: I am no longer changing the system every month. I am building on top of it.