So first of all, this is not a “help me like linux” post but desktop linux specifically and it’s not a “linux is shit” post either.
I run a whole bunch of linux servers (including the one that hosts the instance I’m posting from), the first thing I install on a Windows machine is WSL and I’ve compiled my first kernel about 20 years ago so that’s not the problem we’re facing here. I understand how linux works and considering the end of support for Windows 10 this is as good an opportunity as ever to fully make the switch.
My problem is more that specifically linux on a desktop still feels more like an unfinished prototype than like something I’d want to use as a daily driver. About once a year I challenge myself to try it for a while and see how it feels. I look around for a distro that seems promising, put it on a spare SSD, put it either into my Framework laptop or my gaming machine and see where the journey takes me, only booting Windows in an emergency.
And each time, I get fed up after a few days:
- Navigating a combination of the distro’s native package manager (apt, pacman, rpm, whatever), snap, flatpack and still having to set up the maintainers’ custom repositories to get stuff that’s even remotely up-to-date somehow feels even messier than the Windows approach of downloading binaries manually.
- The different UI toolkits, desktop environment, window manager and compositor seem to be fighting each other. I feel like even for something simple as changing a theme or the UI scaling, I have to change settings in three different places just to notice that half the applications still ignore them and my login screen renders in the top left corner of the screen but the mouse cursor acts as if the whole screen was used.
- All of that seems to be getting worse when fractional scaling is involved which is a must for the 2256x1504 screen in my Framework 13.
- The general advice seems to be “just wait until you run into a problem, then research how to solve it”. For my server stuff, this works really well. But for desktop linux, it feels like for every problem I find five different solutions where each of them assumes an entirely different technology stack and if mine is even slightly different I eventually run into a step where a config file is not where it should be or a package is not available for what I’m using.
- I do a lot of .NET programming and photo editing. I could probably replace VS with VScode or Ryder but it’s an additional hurdle. For photo editing, I haven’t found a single thing that fits my workflow the way Bridge, Camera Raw and Photoshop do. I’ve tried Gimp, Krita, Darktable, RawTherapee and probably a couple more and they all felt like they were missing half the features or suffer from the same unintuitive UI/UX that Blender had before they completely overhauled it with 2.8.
Sooo… where do I go from this? I really want this to work out.
I started using Linux every day in 1999 and I’m glad I did.
Managing a Linux server is no different from managing a Linux desktop. If you were to consider the GUI nothing more than a display layer over the top of a server, you’d have a good mental map of how things work.
To get started, use the same desktop distro as your server and use their preferred or default windowing system.
Once you’ve familiar with it and the pitfalls it comes with, you’ll know which questions to ask for your next choice, but you will be able to build on what you already know.
What you’re proposing is exactly how I got to the point where I’m writing this post. My servers are mostly Ubuntu, apart from a couple of Pis that run Debian. So naturally, I’ve tried Ubuntu, Mint and Pop!_OS. I can’t remember exactly which desktop environments I’ve tried over the years but at least Gnome, KDE, XFCE and Cosmic. Probably more.
When that didn’t work out, I tried Fedora and even some Arch-based distro (I think it was EndeavourOS).
Each time I ran into the same frustrations. Stuff didn’t work and troubleshooting consisted more of filtering which guides are actually applicable to my current combination of software than actually solving the problem.
If you’re patient and want to gain a deeper understanding, try Arch itself rather than an Arch-based distribution that’s easy to install.
You’ll spend a long time on the initial installation and setup and you’ll read a lot of documentation in the process. When you have a usable system, you’ll understand what’s installed, how it’s configured, and why. Expect to spend a couple days just to get it usable though - this approach isn’t for everyone.
The Arch docs are top tier, but they’re not necessarily step by step guides because there’s more than one way you might choose to set things up. The docs tell you how the pieces can fit together, but it’s ultimately up to you to to do the assembly.
One of my first experiences with linux was gentoo back in ~2006 so patience is not an issue. Documentation that requires you to already know what you need to do is a problem though and the exact reason why I haven’t touched proper Arch so far.
Ubuntu sucks ass, and so do its derivitives. Arch is for people who still drive manual cars. I suggest sticking with fedora or debian.