So, what's the most straightforward, "just-works" Linux distro out there today? Historically I've used Ubuntu which isn't terrible but never stops requiring a bit of fiddling here and there. I've heard good things about PopOS, Elementary, and Mint, but I've never tried to use any of them for real work.
That said, I've had a very positive experience with Linux Mint in conjunction with the MATE desktop. Most hardware-accelerated GUIs are slow on my old T500 which I use as a hobby machine, but MATE (being based on GNOME 2) runs well on the integrated graphics chip.
Barring that, Ubuntu is probably the most well-rounded for modern hardware. If you still encounter problems, try one of the LTS releases designed for stability.
One last comment, there will always be certain things in the Linux ecosystem that will never work the same way as other OSes (the XFCE "panels" bar comes to mind), and no amount of tweaking will leave you completely satisfied. Again, one learns to accept things and focus on the merits of Linux rather than it's weaknesses :)
Just something you need to know tho, these little issues/teaks you describe, I consider that they are part of the Linux experience and no distro will be completely free from them. Sometimes things will break and you'll have to fix them, that's not a problem, its just different from what people are used to on other Operating Systems (as things break differently). With time and experience using Linux their frequency will drop (you'll know what parts of the system are more prone to break and how to avoid it) or will be less annoying (you'll know how to fix stuff without losing hours searching on the net).
Good luck, I think its worth the time spent learning, as Linux gives you a great amount of power over the system and what you can do with it.
For me this has been Fedora. Like you I used to use Ubuntu but it never felt anywhere nearly as polished as Fedora. It runs great on my Thinkpad and desktop, nearly everything taken care of during installation. I also like Gnome though, which I realize it not universal.
The Cinnamon flavor of Linux Mint seems to be very popular with reviews stating essentially the same thing as what you're looking for - it's mostly hassle free. MX Linux seems to also be popular for that very reason as well.
I can't personally attest to either of them, but I've been running Fedora KDE Spin on my work machines and I've never had any problems outside of those I've caused myself by tinkering. I firmly believe that if you just installed it and let it go, you'd pretty much get everything you needed after installing the RPM Fusion repo.
Debian and rhel based distros are pretty solid, but I find it's packages to be quite older, fine for a server OS, but a frustrating development experience for me.
Haven't used fedora much, but it's probably fine.
Could look into using chrome OS, zero fiddle for the basic user experience, and you can run sandboxed linux apps.
It's been a while since I've used Linux as a full-time development environment, my current job provides a mac, and on my personal laptop, I have embraced the fiddle and am using arch.
* Linux Mint 20 Cinnamon * Linux Mint 20 MATE * Manjaro Latest * Ubuntu 20.04 (Gnone) * Ubuntu 20.10 (Gnone) * Solus Bungie
I ended up with Linux Mint Cinnamon for one major reason. The rest all had weird issues with my Graphics on my ThinkPad P52 with has a Nvidia Q2000 Pro Mobile.
They all used the native Nvidia driver, but for some reason Linux Mint Cinnamon is the only one that works correctly with my Thunderbolt dock and two monitor setup.
As for usability, I found them all mostly the same though I did like the MATE's customizability a little more.
Good luck.
I'm not sure how realistic it is to be able to avoid this in any traditional linux distro.
If you truly, truly want a no-hassle distro, ChromeOS with crostini installed is probably the way to go.
My conclusion is that any Linux OS will require fiddling; somewhere, somehow. So i embraced that idea, and am attempting to make my fiddling concrete, repeatable, documented, etc. My tool for this is NixOS.
That's a big leap, as i quickly fell into NixOS, Nix package language, Flakes (for concrete repeatable builds), and Home Manager (moving my dotfiles from Git).
The process took me a solid few days of confusion and frustration, but after that i've had a really nice experience. I can experiment with issues, like bluetooth drivers - and revert as needed, and document any forward progress.
I've reinstalled my OS once since embracing this model, due to a new hard drive, and it worked really nicely. It also pointed out any configuration i didn't track - like my XFCE configs, since those are not (yet) tracked by my Home Manager setup.
Food for thought :)
For me, xmonad has just clicked with my workflow. I typically use the command line, Chrome, SQLDeveloper (my workplace is an Oracle shop), and Emacs (usually attached to a Clojure repl).
Our server environment is all headless Linux with a couple of exceptions for exporting X over ssh for Java-based ETL tools. So the match between my dev env and our deployment env means I don't "context switch" when moving between them.
A benefit of the no-desktop-env approach is that I have found that I typically install the bare minimum of utilities, so there is less to go wrong. Even installing a big Nvidia blob for my GeForce RTX 2070 SUPER just worked.
If you find yourself happily using a small number of utilities in any Linux environment, you might find a similar setup rewarding.
It 'just works'. No need to mess around or reboot it or get distracted by driver issues. It's a breath of fresh air for a development environment.
No major issues at all, a few packages that I haven't been able to get in the official package manager, but nothing I haven't been able to work around or find somewhere else.
Whatever project you have, figure how to install things per project and not system wide.
I use pyenv and pyenv virtualenv for python, rvm for ruby, nodenv for node. For node, figure how not to use -g.
Surprisingly an annoying one is PHP so I just have VMs that I use for it.