For context:

I’ve been using Linux since 2000. Started with Mandrake Linux (Helios?), then I moved to Ubuntu in 2004 and alternated between Ubuntu, Kubuntu, Ubuntu MATE for a time until I settled with Kubuntu for the last few years.

Ubuntu has been rock solid for me for the past 20 years and I’m used to the APT package management and Ubuntu/Debian environment overall with all the various services and configs, setups and release cycles, etc. The stability allows me to enjoy my spare time playing games and doing other important tasks instead of troubleshooting my system and figuring out how to make something work. Ubuntu has been awesome in that regard.

I’ve also been dual-booting this whole time with Windows. Gaming on Linux simply wasn’t up to snuff up until very recently with Steam working on Wine and Proton for the Steam Deck and Bottles, which makes running Windows games on Linux almost comparable to Windows.

Windows 10 was a great OS, except for a few flaws and privacy issues with the introduction of mandatory Microsoft accounts and One Drive integration. But you could work around those things. It was supposed to be the last Windows we would have to install with perpetual rolling releases, but apparently they changed their minds about that. Windows 11 was released and reading about it gives me nightmares. Using it for work also has been an incredibly buggy and frustrating experience. The invasion of privacy, data collection, screen monitoring and AI integration plus the additional advertisement are all reasons for which I will never install this OS on my personal computer. And some of these features have started to leak into Windows 10.

So I’ve made up my mind. I’m wiping Windows from my PC and will be running Linux only. I believe it’s become good enough to use as a daily driver for a home gaming desktop and for productivity. But… Which distribution should I choose?

The dilemma:

There’s been a whole slew of new Linux distributions that have come out lately. Some have been early in the Linux gaming aspect such as POP! OS. Others have tried to become a solid replacement for the default immutable Steam OS such as Bazzite. And there are now some pretty awesome sounding gaming-focused distros such as Nobara. And that’s on top of the various existing Ubuntu flavors, Fedora’s spins, OpenSuse and the many Arch variants that almost seem to pop up monthly.

I’ve been shopping around for a distribution to become my daily driver from now until who knows when. I’m expecting to stick to that distro as long as possible. Here’s some of the things that I am looking for:

  • Not immutable : I find this to be adapted for devices like tablets, IoT devices and handhelds instead of an actual PC. I’ll need to be able to change my system configs as I please and an Immutable distro seems like a pain in the butt to deal with that.
  • Rock solid : This is the most important aspect and is why a lot of the Arch or other bleeding edge distros won’t do. (With some exceptions)
  • Hardware support : The second most important aspect. I think that’s pretty much covered by most popular distros, but some have better support than others. Especially for ease of getting the right drivers. (Especially for NVidia GPUs, or gaming controllers and devices.)
  • Performance : Most popular distros offer ok performance, but some have been enhanced to provide improved performance according to the hardware. This is a very big nice to have, especially for gaming.
  • Desktop choice : I’m really not a big fan of Gnome 3. It seems nobody really is. Many Gnome based distros come with quality of life extensions out of the box to fix that. Not a big fan of GTK apps’ UI ergonomics either. That’s why I prefer KDE over Gnome or Cinnamon. Budgie seems like a great alternative as well. Also having a PowerToys-style FancyZones tiling system is a big big plus (KDE has that OOTB)
  • Applications : The thing I love about Ubuntu is the amount of available applications in their repos. I’m hoping to have the same availability in my next distribution.
  • Online community/support : Having a great online support community is very important. The more users, the larger the knowledge base and the easier you can find answers to questions to troubleshoot problems.
  • Online services integration : Optional but a very nice to have would be to have integration with Google apps like GMail, Calendar, Keep and Google Drive to name a few.
  • Customization : As funny as this sounds, I want to use the desktop in its most vanilla form as possible with as few customisations as possible. Over time I found that having extra customisations like extensions, applets, etc tends to break things because of lack of support over time. It’s also more difficult to troubleshoot when very few people are using them.

The distributions that ended up meeting my requirements are the following in order of preferences :

  • Kubuntu : So far its been working great for gaming but I think there could be some performance improvements. It’s my first choice because I’m just so comfortable with it already. Zero effort, but with some compromises in performance.
  • Nobara with KDE Plasma : This looks solid and ticks all the requirements. I think there’s some amount of learning to do for using YUM/RPM packages and to understand some of the customisations, but I think this effort will be minimal. I am concerned about long term support however since this is a fairly new distro supported by individuals.
  • Ubuntu Budgie : I really like this DE, very simple but elegant. But, like Kubuntu, I don’t know how it’s going to fare performance wise. And I don’t know what kind of tools there are to configure gaming controllers, etc.
  • Ubuntu (I’m willing to deal with Gnome 3 for simplicity’s sake)
  • Fedora KDE Plasma spin : Everybody is raving about Fedora so maybe I’ll give it a shot as an Ubuntu replacement.
  • Manjaro Endeavour OS with KDE desktop :Possibly the only Arch distro I’m willing to install because they focus on stability, however learning about the packaging system and configs/environment feels like a drag. But with the great community and documentation I’m willing to make an effort for this one.

What are your thoughts on this? What are your recommendations based on my requirements?

EDIT:

Thank you very much for everyone’s input. I’ve spent a good part of the day installing distros in a VM to check out some of your suggestions and reading more about my choices.

I can’t believe I am saying this, but I am reevaluating my choice of using Kubuntu. After some reading I have found out that Ubuntu and it’s flavors will not be supporting flatpaks starting in 23.04. And there are several known problems with snap, such as serious performance issues. A task that would take 1-5s as a regular .deb installed app, would take up to 10 times that time to complete. Canonical is also working to modify apt to use snaps instead of installed .deb packages. They are aggressively pushing snaps to a point where they’ll want to replace the majority of the software with snaps eventually.

Yeah there’s security features built-in and all, which flatpaks don’t necessarily have. And the security is tighter around Canonical’s snap repos compared to flathub for example. But I don’t know if I’m ready to move to that new way of doing things. And Canonical is going against what the community wants.

I don’t know. I think I’m more confused now that I was when I started…

  • Drathro@dormi.zone
    link
    fedilink
    English
    arrow-up
    8
    ·
    3 months ago

    Regarding your not wanting to go with an immutable distro: what configs are you thinking you’ll need to mess with that makes an immutable distro a bad idea exactly? I was previously on the fence about it as well but Bazzite has absolutely served my needs and requires way less fiddling than my previous Nobara install did after major updates. I have yet to find any day to day configurations that I haven’t been able to overcome with OSTree overlaying. Aside from being immutable, Bazzite literally checks every other box you’ve got listed.

    • gdog05@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      3 months ago

      I can’t figure out the objection to this either. I see it as a huge step forward for tinkering and tinkerers.

      • Drathro@dormi.zone
        link
        fedilink
        English
        arrow-up
        4
        ·
        3 months ago

        I know, right? It’s so hard to “really” mess something up and Toolboxes are very cool for things not served by Flatpaks or Overlays.

        • Telorand@reddthat.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 months ago

          The only time I haven’t been able to do something was with a VPN client that came as a self-executing tarball. Because it tries to mess with Network Manager on the fly, it doesn’t work correctly.

          So there’s a handful of weird edge cases, but I agree that the majority can be solved with podman or distrobox.

      • NoisyFlake@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        I tried Bazzite a few months ago and replaced it with a non-immutable distro in the same day because I couldn’t get my password manager (1Password) to work with Firefox.

        The installation of 1Password was kind of a hassle as there is no official way to install it systemwide on an immutable distro, so I followed an unofficial tutorial. That worked somehow, but then came the integration into Firefox. For this to work, you have to install firefox as a native package, too, so you have to layer it through ostree.

        But here comes the issue: The original Silverblue does already include native Firefox, and Bazzite removed it and replaced it with a flatpak. I have googled a lot and haven’t found an answer yet on how to layer a package that was removed in a previous layer. I’m not sure if it’s even possible, but the complete lack of documentation for such a trivial thing really turned me away from immutable distros. When I had an issue on Arch, I would find the answer in the ArchWiki 95% of the time, but here I couldn’t even find a proper documentation for how the layering works.

        This on top of other issues like not being able to get Autocomplete/Intellisense working in VSCode because I can’t properly install the required compilers and libraries made me turn back to Arch in a single day. Maybe it’s just my mindset that’s a bit stuck on how to do things the “old” way, but if I have to spent hours to get even a basic workflow going for me, then I guess I’m not yet ready for immutable distros.

    • Cyborganism@lemmy.caOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 months ago

      Yeah, but there’s been occasions where I had to add repos to my /etc/apt/sources.list for example, or tweak my Grub config to resolve problems, or sometimes I want to change some configs and edit some files in /etc/. And besides, I like having the extra flexibility to tweak my system if I want to.

      I might install it on a MS Surface Pro though. Not sure it supports the hardware as well as Ubuntu though. There’s special kernels you can download with Surface-specific modules.

      • Drathro@dormi.zone
        link
        fedilink
        English
        arrow-up
        4
        ·
        3 months ago

        Adding repos can just be done inside a Toolbox, or even as Overlays. Grub can also be edited and changes applied to immutable OS’s like Bazzite/Kinoite. I’d definitely say give it a shot on a non-daily driver machine and see how you like it. Having the option to mess with the underpinnings can be nice- but not having to has a lot of value as well.

        • Cyborganism@lemmy.caOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 months ago

          Interesting. Maybe I don’t understand immutable distros well enough. I should look into this a little more. Thanks for your feedback!

      • FooBarrington@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        /etc/ is not immutable, you can change whatever you want there. Unless your software is going against Linux standards, you won’t run into any issues here.

        Universal Blue has special builds for Surface devices with modified kernels.

          • FooBarrington@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            3 months ago

            I’m pretty sure that the Ublue Surface images are using that modified kernel, at least I don’t know what other initramfs they are loading, or why they would offer specific Surface builds and not include the biggest project for that specific purpose.

    • Unchanged3656@infosec.pub
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      I tried Bazzite on my Asus laptop and I had a hard time to figure out how I am supposed to install some non-packaged stuff like https://github.com/asus-linux-drivers/asus-numberpad-driver . Could not get it to work in Distrobox or at least I might not understand how to do it. I went with Nobara then and it works just fine.

      Would like to give Bazzite another try, maybe someone here can give me some directions on how to install things like the numberpad drivers?