Berke Güzel

Super. Bad. Code.

THE Best Linux distribution

Distro of all time: Arch Linux

Or more specifically, CachyOS, a derivative of Arch Linux.

Or, Bazzite. If you’re new and want a “I am a casual gamer and all I need is Steam and a web browser” experience.

Now, before you close this tab, I know what y’all think. “Arch is hard! Arch breaks every update! What about Nvidia?!” Yes, yes. Let’s go through all the points. But stick around, because this post isn’t going where you think it’s going.

Nvidia

I’ve been using computers for 16 years and Nvidia on Linux has been bad since for fucking ever. I haven’t had an Nvidia card since 2017, so I can’t speak for the current state of the drivers.

That said, I see why people recommend distros like Bazzite or Pop!_OS. They have a cute little with NVIDIA ISO that comes with the Nvidia driver blob pre-installed. One less step for the end user.

So does CachyOS. CachyOS has its own hardware detection to pre-install drivers for your setup.

Nvidia? Solved. System installs for you. Next!

Arch is hard

So is Linux.

I’ve been using it for ~6 years. I used to play League on elementary OS 4. Anyone remember that distro? Anyway. I’ve tried countless distros and I’ve noticed something: the hard parts are never about the distro. Let me tell you a story.

Just two weeks ago I was invited to a game of L4D2. It being a Valve game, I was extremely confident it would run. Guess what? It did not run. The OpenGL port had some sort of bug that was crashing the game. And me being me, I thought maybe it was related to running mesa-git, so I tried downgrading. Nope. Clear cache? Nope. Try Proton? It works! Oh, I can’t join a multiplayer game though… Hm. Coincidentally, a few days later, Linus from LTT also played L4D2 on Linux and had the exact same issue.

I ended up playing on my Deck that night. Seeing it work there was weird, so the next day I check ProtonDB…

The game needs you to pass -vulkan in launch options.

I’m not blaming anyone at Valve, or the Linux community, or Mesa/kernel developers. Software is hard. Things go bad. But did you notice? The issue was on the application, not the distribution.

Keep this in mind, it’ll be referenced later.

All distros suck

Ubuntu? You’re stuck being shoved down snaps and wondering why things break. Every package installation comes with its own PPA. The last time I tried Ubuntu, I had to add a PPA to get up-to-date Wine, MangoHud, and fucking Node.js — which I was apparently not supposed to do and instead use nvm. Packages get stale, and Canonical doesn’t — or rather, can’t — do major updates before the next version releases, in the name of stability. Even then, that new version clashes with my PPAs and somehow bricks my system. So much for stability.

Fedora? My laptop hated the fact that it had to CPU-decode AV1/VP9 videos on YouTube in 2026. So I helped it, by adding a 3rd party package repo to get GPU video decoding, which broke my system a week later because I was on the KDE spin — the base repo Qt version clashed with the ones from RPM Fusion.

And has anyone actually looked at these manuals from the eyes of a newcomer? If I wanted to run OBS with GPU encoding to live stream games, this is what I need to go through:

Multimedia source: RPM Fusion Multimedia

This is what Fedora expects a newcomer to navigate just to live stream a game, e.g on Twitch. Oh and hey, look what I found.

Debian/Ubuntu derivatives (Mint/Pop/MX etc.)? Same core issue as Ubuntu. If it’s not in the repositories, add a PPA, which may break your system. Or just use snaps, they’re amazing aren’t they?

Fedora derivatives (Nobara/Bazzite etc.)? Repackages of Fedora with pre-installed apps/drivers/libs. That entire debacle about OBS and GPU encode/decode? Nobara does it for me, because Fedora won’t. Which isn’t bad at all! What Nobara team does is nothing short of amazing. But being Fedora based it inherits the issues I stated with COPR and how version mismatch breaks systems. If I want to install a software that isn’t in official repositories I must add a COPR or pray to God flatpak’s permission model allows it.

Arch, and its derivatives.

Have you seen how easy it is to install a package on Arch vs Ubuntu/Fedora?

On the latter, you need an rpm/deb build compatible with your current release version + a PPA/COPR 99% of the time. On Arch? I dunno, I never needed anything beyond yay package_name.

AUR is that good. Everyone has already packaged everything for everyone. I’ve installed so many things from AUR: Sonarr, Pi-hole, google-chrome, wrk, Upscayl, Visual Studio Code, wine-tkg, Tracy. And guess what? I did not have to add a single PPA or COPR repo that breaks every fucking update.

And that’s the thing that drives me nuts. PPAs and COPR break if your version isn’t supported. Arch doesn’t have versions. It just works. How? I do not know.

Let’s walk through three quick examples. Upscayl — the README says it should be available on most Linux software listings, plus Flatpak and Snap. Cool! Open store, click install, done. This is what we want. One store, all distros.

Now let’s try Piper, a Logitech mouse configuration utility. Piper has its own wiki entry guiding users to install through their distro’s repos:

> Fedora: `dnf install piper`
> Arch: `pacman -S piper`
> Ubuntu: `sudo apt install piper`

Nice! It’s in the main repositories. Let me install it on my Bazzite system… Oh. I can’t. It’s an immutable distro. I need to first ostree admin unlock my installation, install the app from dnf, and pray it doesn’t break next update.

If a distro prevents me from installing or launching software because of incompatibility, “stability”, or “security”, then it’s not a good “one size fits all” distro in my opinion. Gamers? Sure. Hardcore gamers? I guess not…

Last example: Waydroid, a container to launch Android within Linux Desktop. The guide for Ubuntu tells me to…

> Install pre-requisites
> sudo apt install curl ca-certificates -y
> Add the official repository
> curl -s https://repo.waydro.id | sudo bash
> Install waydroid
> sudo apt install waydroid -y

And it states: "If the script fails to detect your distribution, you can provide a valid option by appending -s \<DISTRO\>. Currently supported values are: mantic, focal, jammy, kinetic, lunar, noble, plucky, questing, bookworm, bullseye, trixie, sid". Good fucking luck understanding what that means if you’re coming from Windows, running Linux Mint because someone told you it’s beginner friendly, and wonder why there’s no Bluestacks for Linux.

Oh and even after you set everything up Waydroid itself isn’t the most complicated software, but definitely gonna make you scratch your head over why you can’t just sign into your Google account and start playing games.

For others? Fedora ships it in official repos. Arch too! So for those two it’s pm install waydroid and you’re done. Immutable distros still have the same pain of unlocking first and… Wait a second, what does the distro do then?

Does Arch win?

Maybe? Here’s the thing. If you think about it, all the new distro releases are just the same packages but newer versions. You rarely see a distro doing something so different that it changes how the Linux desktop works — like Flathub, or Ubuntu switching to uutils maybe. Distros don’t need to do much these days. And if you don’t like parts of Arch (i.e systemd), Artix crew says hi.

Which brings me to the actual point of this post.

Upstream Linux is not ready.

There. I said it.

The ecosystem has parts, but it’s not ready. There is an enormous amount of work happening in big projects — KDE, freedesktop, Wayland, systemd, Mesa — to empower apps and developers with features that users actually want and need.

Have you noticed the lack of “select window” functionality in OBS? There’s a Wayland capture, but not a window or screen capture. OBS can request a Wayland stream, but it can’t offer specific sources in its UI, in the name of security. Wayland people consider this a security issue.

Or have you tried setting a global shortcut, only to realize it doesn’t work due to Wayland’s security model? Or keyboard+mouse automation? Remote Play from Steam?

These do not work. At all. And they are known pain points in upstream right now.

Remember my L4D2 story? That wasn’t CachyOS’s fault, or Ubuntu’s, or Fedora’s. It was an application-level problem. And the problems I just listed? Those aren’t distro problems either. They’re upstream problems. No amount of distro-hopping can or will fix them.

Can we all stop dick waving about choice of distribution and fix the upstream? Can we agree that applications should be able to request window decorations from Wayland compositors, and not be forced into drawing their own? Can we agree to provide some sort of a user-approved “access windows” permission to applications, so that they can access all windows and choose which window/screen it wants to record? Thanks.

← Back to all posts