Despite how this may feel, this post really is about Linux.
Lately I’ve been thinking a lot about trying to daily drive … something else. OpenBSD. RedoxOS. 9front, Plan9. Heck, MINIX3. Some of it is that I’ve always wanted to try living on a micro-kernel, as I strongly agree with the design principles; but more recently a lot of it is because of what’s going on in both user space and the Linux kernel. I can escape from systemd by running Artix or Void or a dozen other anti-systemd distributions; Wayland is getting harder to avoid and some people no longer have a choice despite Wayland still trailing X in accessibility. But that’s still fine for me since my preferred window manager doesn’t run on Wayland at all, and there are no efforts to port it. Most alarming is what feels like a slippery slope around AI in the Linux kernel. No amount of distribution dodging is going to avoid that.
So I spend more and more time looking at alternatives and evaluating if I really can daily drive something other than Linux. Today I realized that I’ve trapped myself, and that trap is because of games.
I’m not a huge gamer, but I like to occasionally play; and recently, Linux has been really really great for games, even beating Windows on its home turf. I played entirely through Borderlands 4 on Linux – a game which is demanding of hardware, by any measure – on what’s basically a mobile AMD CPU/GPU and it crashed all of twice the entire game. I waste a few hours every month on Factorio. I’ve got stuff bookmarked in my Steam library that I know run well on Linux; we have resources like the ProtonDB. Lately, this has been my big blocker, and that realization I mentioned was in the form of realizing that I’m using the exact same excuse Windows users used to use to avoid switching to Linux. Because they didn’t want to lose access to games.
Something that’s informing my hesitation is that I have a Linux phone, too. It’s got an arm64 CPU, and is running some mobil-ized fork of Debian, and so much software isn’t available for it. So. Much. Either there aren’t packages for the OS and they’re not in Flathub; or they are in Flathub but they’re not adaptive and so are effectively useless on a mobile device; or they’re in Flathub but aren’t available to arm64; or they’re in Flathub but just don’t run because 30% of Flatpaks in Flathub are broken and don’t run – at least, they don’t run on my phone, because they don’t like whatever’s providing GL via Wayland. What this experience has done is made me pessemistic about jumping platforms: if I lose access to half the software I use just by switching CPU architectures, how bad will it be if I up and out change kernels? Pretty bad, I’m expecting; I’m not going to be playing any AAA games, that’s for sure. Which is why – even though Linus himself is slop-coding patches into the kernel – I feel trapped.
It’s incredible that Linux has come so far on the desktop that the availability of games is a blocking factor to migrating off of it – isn’t it? C’mon old timers: we’ve come so very far, baby, and for most of it I never imagined we’d be here. We’ve already taken over the world, via phones, via servers, via infrastructure, via all that FOSS that corporations are furtively using illegally by not following the LICENSEs of the libraries upon which their platforms are built. We’ve won, although desktop users only dimly, if at all, comprehend it; we give ourselves handicaps to ensure we remain the outsider underdog, by using increasingly more constrained sub-markets as our penetration measure.
Maybe it’s inevitable: popularity increases capability which begets stickiness. I like being able to just fire up Factorio, not having to dual boot, or faff around with virtual machines or with maintaining two ecosystems. Heck, I don’t even have to run Steam – there’s a Factorio: Space Age package in AUR. I just launch it from the command line. I’m going to lose all that by going to RedoxOS. Sure, I’ll gain the confidence that the kernel isn’t being written by an RNG, but what am I willing to give up? Games?
In a way, Linux has achieved Windows-ness. It’s sticky. People have to stay, unless they’re willing to accept the austerity measures of a younger (or at least far less popular) OS. The excuses Windows users made, now Linux users are making. I want to move to a better OS… bUt WhAt AbOuT mUh GaMeS!!!


It’s funny cause i was having similar thoughts recently, and pretty much came to the same conclusion, except for me it’s not just gaming. I’m using Guix now and have used NixOS in the past, and i really came to love declaring my entire system through a configuration file, i just love how organized it feels and being able to easily reinstall a very customized system. As far as i’m aware such a thing doesn’t really exist on BSD. I think i read about the Nix package manager having some experimental support for FreeBSD, but it’s not the same as declaring the whole system, so i would have to give that up. It probably wouldn’t be the worst thing in the world, since i also really love Void and its simplicity, so BSD probably wouldn’t be too drastic of a move, but then there’s the gaming aspect, and also, i’m not sure how great hardware support is. I’m not sure about NetBSD, but if i understand correctly, both FreeBSD and OpenBSD port their amdgpu drivers over from Linux, so up until pretty recent AMD cards should be supported depending on the release. AMD processors should also be good to go, so i’m guessing it comes down to wifi as a potential blocker maybe.
Something else i’ve been thinking about is: does it really matter at the end of the day? Because code submitted to the kernel is still held to the same standard whether it was created with the help of an LLM or not. Not only that, but on the BSD side of things, even when they are explicitly anti-AI, if someone submits code that was made with the help of an LLM, and the maintainers are not aware of it, but merge it because the quality of the code is good, wouldn’t it put them in the exact same situation as Linux? The only difference at that point would be that one of them is openly saying they accept it, and the other does not, but in reality basically the same thing happens either way. So i feel like at that point i would only be switching for an ideological difference that can’t really hold up practically, so what’s the point?
Check out NixBSD. It’s like NixOS, but with FreeBSD or OpenBSD kernel instead of Linux. Not sure how usable it is atm though.
Also there’s Astarinas NixOS. Asterinas is a new Linux abi compatible kernel written in Rust. It is in early development but surely is a promising project.
If you’re using Guix… doesn’t Guix have a version that uses Hurd? It’s not BSD, but it’s also not Linux. Hurd is one option I’m looking at.
Yeah, I don’t know. Maybe not. I guess it’s a question of whether my trust in the core Linux maintainers’ development skill translates to trust in their ability to use AI well. There’s pretty good evidence of Dunning-Kruger-like effect where developers over-estimate how good LLM-generated code is, and whether it makes them more productive; is Linus immune to that? I guess I don’t want to get caught with my pants down, and that means not having to scramble if the front falls off the boat.
Yeah they do support Hurd! Though i think hardware support is much worse there than it is on BSD and also still marked as experimental. I’m thinking of trying it out in a vm at some point. Regarding the LLM stuff i feel the same way, and even if i’m not planning to switch away anytime soon, i am still looking at BSD content out of curiousity and to also familiarize myself with it if i ever feel like Linux gets to a state where i have to jump ship.
This actually reminds me though. A while back i read an article about how Debian used to have a variant of their distro that used the GNU coreutils combined with the FreeBSD kernel. They don’t support it anymore, but i’m curious if we might see these types of distros pop up again now that more and more people have concerns about the Linux kernel. I don’t know how hard it is to combine those two, but it would be awesome if you could run the FreeBSD kernel with Guix for example. That way you still get to have a declarative system too.