(Also extends to people who refuse to use Linux too!)
Every unique Linux Desktop setup tells a story, about the user's journey and their trials. I feel like every decision, ranging from theming to functional choices, is a direct reflection of who we are on the inside.
An open-ended question for the Linux users here: Why do you use what you do? What are the choices you've had to make when planning it out?
I'll go first:
I use OpenSUSE Tumbleweed with the Niri Scrolling Compositor(Rofi, Alacritty and Waybar), recently switched from CosmicDE
I run this setup because I keep coming back to use shiny new-ish software on a daily basis.
I prefer this over arch(which I used for 2 years in the covid arc), because it's quite a bit more stable despite being a rolling release distro.
I chose niri because I miss having a dual monitor on the go, and tiling windows isn't good enough for me. Scrolling feels smooth, fancy and just right. The overview menu is very addicting, and I may not be able to go back to Windows after this!
This was my first standalone WM/Compositor setup, so there were many little pains, but no regrets.
Would love to hear more thoughts, perspectives and experiences!
I distro hopped about every 4 months from ~12-22, never really feeling like I'd found the right platform. Sometimes I would dual boot (or just run) Windows, and for a while I had Windows XP in a state I could tolerate.
For several years after 22, I ran Windows at home, and kept Linux for work. I basically just wanted to game, and Windows was good enough for that. Finally, something came up that I needed a home server for, and I chose Arch, based largely on my experiences from several years ago. Arch had been more stable for me, and when it did break, it always felt like the tools to fix it existed. Ubuntu and derivatives broke for me mostly in "Oops, system is dead. Maybe reinstall?" ways, which I didn't want on my server. Other distros gave me an assortment of problems, from updates taking too long, to lacking support for a WM I enjoyed, to driver issues.
Once I was regularly SSHing from Windows to Arch, I missed the things I could do on Linux (more than just games), and steam had made Linux support from a lot of games better, so I reinstalled my gaming PC as Arch too.
I added a lot of things to my server, and had more problems with some third party tools every time e.g. elasticsearch, mongodb, or postgres updated, so I added a kubernetes cluster with an immutable OS. I tried 3 before settling on Talos, and now when a workload on the server breaks, I move it to kubernetes. That pace has worked out for me, but now the server does no heavy lifting, so I'm experimenting with local LLM on it.
I use whatever the latest Ubuntu LTS is on my desktops and usually laptops (besides my Macbook) at the time, and whatever the latest stable Debian release is at the time on my home lab servers.
I am very much a utilitarian and function over form kind of person so I choose what I do because it is the best fit for the problem I was trying to solve, usually with little thought to looks or UI design. I find I don't really care so much how something is done on a given platform, just that there is a way. As a result stuff like theme options, dynamic wallpapers, etc are not something I really care about. I have been using the same black image as my wallpaper on every computer I have used for at least a decade now for example. I arrange the UI in whatever way I feel is the most functional for me within the constraints of what the platform supports out of the box. Meaning I couldn't care less for stuff like the old school Window blinds program and what not.
Ubuntu over Windows because I wanted to get away from the ever increasing ads and general slop that Microsoft was putting into Windows while still retaining some support for gaming(thanks to Valve and Proton) and building my own systems.
Debian on servers over Ubuntu or something RPM based because Debian stable is rock solid and will run whatever you put on it without issue in my experience.
Debian because it's like Ubuntu (one of the most popular distros, with tons of software targeting it) minus the Canonical stuff I don't need. And newer Debians even have Wi-Fi out of the box
xfce or KDE because GNOME is just too far-out for me. They wanted to get rid of tray icons and stuff. They keep moving things around, seemingly for the sake of moving things around, or maybe to look more like phones. I don't need my desktop to be a phone.
apt isn't the greatest package manager but, there's a lot to be said for popularity, and no matter how many times someone said "Don't upgrade Arch the wrong way" I kept breaking my Arch install. Debian works because apt doesn't let me accidentally break it. (I think I was doing the pacman equivalent of apt update and then apt install. I don't know why the fuck that breaks a PM. The point of a PM is to keep yourself from breaking stuff. If I wanted broken shit I wouldn't use the PM. On two occasions Arch also soft-bricked itself because I updated pacman into a state where it could no longer run. This seems like one of the simplest things a good PM should prevent. Whereas with apt, I'm not sure it's been updated ever. It ain't perfect but it's predictable.)
I use Linux because it is free and good enough to do most stuff I want to do on a computer.
I use windows at work because I get paid - so from my perspective it is cheaper than free. It makes it frustrating to do the stuff I'm supposed to do but my employers are fucking idiots so it doesn't really matter.
Well, I use Void Linux, Fedora, and NetBSD. All for different purposes. I just love the freedom to modify my system 'till my heart's content.
I'm generally a tiling WM (sdorfehs) on laptops and openbox/lxde on desktop.
I used to run SUSE on a laptop i only used once every three years or so. Because of the "full open source" principle i couldn't run a lot of online Videos because the codecs were free but proprietary. When i decided to get a new computer as my tower was getting 15, i wanted to switch to a Linux distro as my daily system. Bought a laptop without windows preinstalled and decided to roll with Manjaro as it has KDE and was recommended as suitable for gaming.
Works fine for the most part. The last wave of updates caused some fuss with the desktop, but i can just do everything important from the terminal, while waiting for the next release.
Windows doesn't have a real choice of desktop environments. So I moved to Linux 15 years ago. I'm not in IT and always use a mouse. Importantly for me, I've never needed the CLI, despite people telling me that's impossible.
Plasma lets me tweak it to my needs. I use Kubuntu, yet don't care about what's below the desktop environment. Happy to change distros.
I use Fedora because I barely have to do any customization to get it how I like. An almost vanilla version of Gnome? Check. Flatpak? Check. Nothing to uninstall (I’m looking at you, snapd)? Check. Steam with just a few clicks? Check.
It’s almost perfect, and making it perfect is trivial. That used to be what I said about Ubuntu.
I haven’t used Windows much since Windows Vista, so I don’t really have any way to compare with Win10/Win11.
this is what i say about ubuntu. it has gnome with a nice dock built in, indicators, desktop icons. all it really needs atm is scrapping snapd and the snap store in favor of gnome software with flatpak.
fedora has more attention to detail put into it though, its very much better overall if you install a couple of extensions. feels faster too, dunno if that's just me.
Wheres the melodrama in this post ? I’m detecting enthusiasm maybe, but not melodrama. They’re looking for peoples thoughts and experience, i.e what your own terms are for making these choices. Seems reasonable. Sharing that is optional of course and I also choose not to, end of story.
I would agree with this. I don't see it as melodramatic.
Enthusiastic, yeah. And nothing wrong with someone interested in tech to also take the more poetic route of expression.
Many of the tech enthusiast types are more akin to mindless 1s and 0s. And not everyone is.
So like you did, rather lack thereof, the response of your own story is optional. I chose to share, because it's fun to discuss. This isn't a changelog, or patch notes. This is part or being human and sharing something other than binary data.
i started with slackware ~2003 and moved to gentoo in 2005. it was very transparent to me as a newbie. use flags and compilation from source were way simpler to me than mysterious precompiled binaries. also ndiswrapper worked with my wireless chipset on gentoo. that helped
Alpine Linux + LabWC – as I update my hardware, I seem to end up paring down my software – the more powerful the computer is, the less use I make of its capabilities 🤷 – I’ve worked with Macs and Windows, and settled on Linux more for its simplicity than anything – I don’t have any problem with MacOS or Windows themselves so much as the companies behind them
Alpine is a nice, clean, lightweight distro that works surprisingly well on a desktop despite the whingers complaining it’s for containers only … Pop!_OS ⇒ Debian Stable ⇒ Alpine (with Gentoo back in the dawn of history)
LabWC is the spiritual successor to Openbox, a nice simple stacking window manager that I’ve added a handful of tiling keybinds – I’ve added utility programs as I’ve wanted them rather than going for the cohesiveness of a proper desktop environment … Gnome ⇒ Xfce ⇒ LabWC (and with Openbox way back when)
I use secureblue, because it offers the (AFAIK unique) intersection between:
a security-first^[To be precise, it's actually Linux-first and security-second. For an actual security-first approach, consider taking a look at Sculpt OS employed with the seL4 kernel run on ARM or 64-bit RISC-V.] approach while being fit for general computing
I had configured a windows/linux mint dual boot a few years ago because I thought it would be a cool and fun thing to do. Flash forward to now, and I'm using the mint OS 99% of the time.
I hate customizing ui elements, so I wanted something that used plasma and looked good with tweaking things.
I don’t want to deal with Snap, so my choices were a bit limited, but I’ve used Fedora in the past and liked it. I still do.
I did try arch with plasma and couldn’t get hardware video decoding to work in the browser, so I switched to Fedora. I was pleasantly surprised that Fedora had so much more configured for my laptop out of the box.
I use either debian with plasma, or mint with cinnamon. Why? Because it fucking works out of the box and I can use my computer. I rarely customize my DE. I usually end up customizing my terminal more.
My pc does not tell a story. It's a thing I use for work and play. I can't be bothered, it doesn't interest me, what niri, alacritty cosmic de is. Why should I care? Why should I invest that time? My pc works already. My framerates are high, it's stable and all the stuff I need for work, works. Out of the box.
Every single time I tried linux for the desktop the system failed within weeks. Dependency error after an automatic upgrade. Grub killing itself. Again. X refuses to start. So many config files littered all over the place just waiting for you to fuck something up. Gpu driver bullshittery. Printer hell. Other peripheral shit. (Flightsim gear)
And honestly, the last time i seriously tried was more then 5 years ago. In IT terms that's a lifetime. So surely it will be much better now.
But after the umpteenth fail to start X, I just thought: wtf am I doing? I could also next next finish my ass through a Windows installation, insert a pihole in my network to block the most obnoxious stuff and just do my thing.
Which is what I did.
Now, I do use linux. A lot. Just not for my desktop.
I think you've tried a distribution for advanced users... Something like Debian would not have triggered that!
Also note that regarding dual boot, most of the time, Microsoft can be in cause (if you're not using UEFI, if you have secure boot, and others).
I love Linux and run some Fedora flavor on just about every machine I own. I can't imagine trying to run it on my sim rig with all the specialized hardware and software though. That sounds like a nightmare.
The only bad OS is one that won't do what you want when you want to do it.
I run a mixed environment at home, Windows machine for work, personal Windows machine for interoperability, Linux on the Steam Deck since that what it comes with, external Windows SSD for the Steam Deck since some games absolutely require Windows, Linux NAS for media, Linux Raspberry Pis for some fun side projects, my wife runs MacOS because she's an Apple Fangirl, Android phone and tablet, iOS work phone for testing. Xbox, Playstation, Switch consoles for gaming.
Fedora Kinoite, because it fits my workflow the best and has a nice mixture of stable and leading edge.
Everything I run was containerized either way (Flatpak, Docker or Podman) long before I switched to an immutable distro.
I have lots of different development environments for various versions of different programming languages that are incredibly easy to setup, throw away and recreate with toolbox without having to dive into the language specific tools for creating virtual environments (venv, conda, ...). On regular Linux/Windows systems I end up at a point after a few years where there is junk laying around everywhere from 6 different PHP versions, 7 gcc variants and 8 .NET versions.
I was on Fedora KDE before that and the main reason for choosing it was that Ubuntu/Debian/Mint were too old to include firmware for my GPU. Arch and derivatives are on the opposite side of the spectrum and are too new for my taste, I'm fine with waiting a few weeks for .1 versions to release with bugfixes.
As for why not Bazzite or Aurora: Because I wanted to be as close to the original (Fedora & KDE) as possible. The modifications those distros make (and I need), I can do myself in a few minutes.
I do recommend Bazzite or Aurora for less experienced people though, they have a lot of tweaks that Kinoite is really lacking. Kinoite, just like the Fedora KDE variant has a lot of polishing issues that quickly become gigantic obstacles for beginners (Nvidia drivers, Flathub repository, H264/H265 codecs, missing udev rules, ...)
I have distro hopped like many others. Started out on Ubuntu more than a decade ago. It wasn't something I loved then, or now. But tried a few more along the eayway.
Ultimately, I landed on Arch. I want newest packages available, I like to tinker. And I wanted arch so that I could learn how my OS worked on a deeper level than windows would ever allow me to learn without extra dissection. I swapped from being a windows user directly to Arch.
My first few Arch installs were done by hand, but anytime I reinstall now that I have an understanding, I use the ArchInstall script.
Arch for me is the perfect cross of form, functionality, and up to date with large dash of customizability.
Yes, I am familiar with what Gentoo is, but never delved into using it. The next "leap" or discovery I am going to invest time into is Nix.
I use NixOS to document all of the choices I make. I can transfer my whole setup between computers and it just works. I don't have random modifications anywhere
Do you run it impermenant? Or traditional Nix style? I been thinking about running NIX with impermenance and then persisting all the important files so I can hardware swap, or just keep a lean, clean, more secure, self maintained system over time.
I use just Fedora with GNOME
I ditched windows because of its bad interface and UX, first I tried linux mint, liked it but I wanted more, so I installed Nobara with KDE (but quickly begun rising hyprland), my rice was almost done, than I updated my system and its all broke, after that I decided that I just want a stable DE and went to Fedora KDE spin, overtime I noticed more and more bugs and Windows style interface bothered me more and more, so I decided to stop my unreasonable hate on GNOME and try it, and I quickly loved it.
Now my plans is maybe install Fedora Silverblue (or GNOME OS once it will have stable release) and run it forever
EDIT: a little bit more about my setup. I use mostly flatpaks bacuse of sandboxing, 5 little extensions that don't change intended GNOME workflow and glfw + sdl compiled to have no window decorations (because they useless in games imo) (they not installed in system)
I also use Niri. Previously I basically used maximimized windows on dual monitors. But I really liked the idea of switching to one ultrawide display. Maximized windows wouldn't work well in that setup. Tiling hadn't really worked for me because you end up with a screen full of awkwardly skinny or short windows, or windows hidden away in tabs. I also didn't like the idea of managing floating windows with... a mouse.
So I looked for a better option. I found PaperWM, and I loved it! Exactly what I needed! But it has a number of quirks, being an extension that entirely reworks Gnome's window management. For a long time I wished for a native scrolling wm. And then Niri came along! And it's so polished!
I used PaperWM for some years in the past, it was great. But then came compatibility issues and I couldn't just live with plain Gnome. I forked catwm and used this as a classic tiling wm. Then wayland came and I wanted smooth animations. By then the PaperWM situation did not improve and I settled on default Gnome.
I followed with interest what Niri was doing. I tried it some months ago and realized that my waybar and niri config needs a lot of improvement to be good enough for me. I went straight back to Gnome, because I did not want to invest the time.
I am currently sort of happy with the useless gap extension for Gnome. I am not sure whether I should give PaperWM another go and whether it is available for Gnome 48. What I like about Gnome is the complete ecosystem and how GDM is part of it. I would loose some of its functionality when I do invest the time to configure niri and all the little tools that mimic gnome-shell.
For my gaming rig I use Mint Cinnamon with the Xanmod kernel and kisak-mesa PPA for bleeding edge performance but otherwise a very low-maintenance, convenient system.
For my personal laptop (ThinkPad T480s) I use Arch with KDE. For my various mini PCs used as servers, I use primarily Debian derivatives, except for my Mac Mini which runs Asahi Arch so I could optimize the use of its 8G of RAM.
Xanmod has a bunch of little tweaks, mostly I'd say it helps with frame pacing more than anything else. It's only maybe 1-2fps difference most of the time, but it's very close to the upstream mainline kernel in terms of release timing, whereas Mint keeps to LTS kernels.
Likewise, the kisak-mesa PPA just keeps you more up to date with the upstream package version.
IMO the biggest differences are responsiveness, frame pacing, and getting to have access to the latest fixes/features ASAP while still getting to use the very stable package versions for the rest of the system.
I run Garuda because it's a more convenient Arch with most relevant things preinstalled. I wanted a rolling release distro because in my experience traditional distros are stable until you have to do a version upgrade, at which point everything breaks and you're better off just nuking the root partition and reinstalling from scratch. Rolling release distros have minor breakage all the time but don't have those situations where you have to fix everything at the same time with a barely working emergency shell.
The AUR is kinda nice as well. It certainly beats having to manually configure/make obscure software myself.
For the desktop I use KDE. I like the traditional desktop approach and I like being able to customize my environment. Also, I disagree with just about every decision the Gnome team has made since GTK3 so sticking to Qt programs where possible suits me fine. I prefer Wayland over X11; it works perfectly fine for me and has shiny new features X11 will never have.
I also have to admit I'm happy with systemd as an init system. I do have hangups over the massive scope creep of the project but the init component is pleasant to work with.
Given that after a long spell of using almost exclusively Windows I came back to desktop Linux only after windows 11 was announced, I'm quite happy with how well everything works. Sure, it's not without issues but neither is Windows (or macOS for that matter).
I also have Linux running on my home server but that's just a fire-and-forget CoreNAS installation that I tell to self-update every couple months. It does what it has to with no hassle.
I use NixOS for the atomic updates that I can roll back to at any time, so I can more or less never completely break my system. And even if I somehow manage it, I can just do a fresh install and apply my flake to get my entire setup back.
The drawback is that it does not follow the filsystem hierarchy standard, so a lot of scripts and binaries does not work out of the box. It gives me quite a bit of friction, but I'm sure that is a skill issue.
My desktop started by being inspired by a lot of Linux YouTubers, and I've gradually modified it to fit my needs.
I'm using Hyprland, Ghostty, neovim (btw), Rofi, waybar.
But, I'll have to check out Niri after reading here.
Hyprland is a window manager (or actually a Wayland compositor if you want to be pedantic) , alternatives would be i3, dwm Niri, etc. A window manager is a more basic alternative to desktop environments like Gnome and KDE Plasma. It requires you to set up more things yourself, which is what most of the other things solve.
I use Rofi as an application launcher (it can be used for a lot more things as well), it basically does the same job as the Windows startmenu.
Waybar is a statusbar, can be configured to display anything really, but it usually displays the date and time, application tray, active workspace, RAM and CPU usage, battery level, etc. It basically does the same job as the the Windows taskbar.
Ghostty is a terminal, alternatives are Kitty, Alacritty, WezTerm, foot. All operating systems come with a pre-installed terminal like Windows Terminal on Windows and Gnome Terminal on Gnome. But, you can change it out for some improved functionality.
Neovim is a terminal based text editor. New and improved version of the Vi and Vim text editors. Very steep learning curve, but very fun once you learn it. :q to exit the editor, if you ever feel like testing it.
I use Arch with hyprland, waybar, walker, pcman-qt, Kitty.
Reason is I hate mouse or touchpads I try to use them less. Hyprland is a tiling wm but I am not a fan of tiling at all. Most of the time I switch through workspaces with command+tab and only one window on each workspace.
I'm an old coot and comes from preGUI area. My first unix experience were on 80x25 amber terminal. Then X came, I used mwm/twm/fvwm and things like this, it was very tricky to configure to your taste, mainly with config file, you wanted your xeyes, xload, xbiff, xclock etc at this place, transparent, no border, etc, very complicated. Linux didn't exist.
Then Windows came... and kind of dominated the world with win3/95/98/etc. and at the time linux desktop were still not perfect + you had all kind of driver problems/missing.
As a lot of people I was used to windows GUI so I chose Xfce (also because France). Simple GUI, a button menu bottom left, an app bar, and systray icons and clock bottom right. Don't need anything else.
I tried LFS, Arch, Cinnamon Mint, I tried Ubuntu, I tried tile, but nah, the simpler the better, Xfce it is.
I am using MX Linux for years now, Debian based, always up to date, .deb packages, no systemd, no snap, no flatpak.
I use Mint, with Cinnamon. It looks like Windows, and 99% of the time works like it too. The only issue I have is the lack of good small accessibility tools, and the difficulty of using arbitrary executables. It's easy to use, and it works reliably.
The more Windows-like an OS is, the happier I am to use it. Note that Win11 is not very Windows-like in my view. It cuts out power user functions and adds so much useless bloat and tracking that I don't want to ever touch it. If I ever have to, outside of work, the first day or six will be spent with the thing offline, basically deleting out half of the OS and remodeling the half that's left.
I use Kubuntu on my Surface Go because it got way too warm under Windows. It'd work fine most of the time but I just got unhealthily warm to the point it'd get too hot to touch under very minor workload. My SO's father, who's been a huge proponent of Linux for decades now, suggested I give it a try and it's been great. Some minor functionality restrictions but nothing I can't work around. The touchscreen and the stylus work - that's all I need for school
I use Devuan and TDE because the setup is so incredible boring and dusty that i do not have to get acquainted with anything new (SystemD, Wayland... whatever hipster WM is currently cool) and keep working with the tools i like.
Actually, it goes to a lot of trouble not to step on the toes of later versions of KDE, and there are people who have them both installed side-by-each without major problems.
I use mint that I haven't updated in years because one time I tried and it failed so I stopped trying. It's my old work Thinkpad that I now use exclusively to run weekly events. It's old and heavy and I needed a more lightweight OS than windows.
When I was new to the Linux desktop world (late 90s to 200x) I tried lots of different distros and (X11) window managers and tools and whatnot. Changed themes a lot. And so on. And I think there's value in all that, because it expands your horizon of what's possible on the desktop, how different UI/UX paradigms work out in practice for you, and you learn how to use different environments.
On the other hand, there's also value in having a consistent, well-integrated desktop environment. It can mean less "pain points" in various circumstances, and it's also efficient when multiple programs share the same libraries or code base instead of having separate tools all around.
In the end, it comes down to what works best for you. But this might also change over time. For example I'm really considering switching to Cosmic once it's mature. I'm also considering taking a look at Niri because it seems well thought-out.
But currently I feel cozy using Plasma at home and Gnome at work because Plasma is currently the least-annoying and at work I still use Gnome because it's been historically more stable than Plasma for me. I've tweaked Plasma's hotkeys so they work more like Gnome's and since I also need to use a couple of Windows-based systems at work I've also configured common Windows shortcuts like Super+L, Super+E, Super+R so that they all behave the same everywhere.
Oh, and my distro is Arch everywhere because I've used it for ages now and I like its technical simplicity, stability and modularity. It's the one distro that gets in my way the least.
I think one should learn enough to be flexible and be able to use everything, while also not being too narrow-minded and just focus on one solution too much. What works best for you now might not be the best choice for you in a couple of years.
i use gentoo now from arch becuase i wanted to use portage and be able to control dependancys and i run chadwm (fork of dwm) for added features and the rest of the things i use like st dmenu neovim all are part of the workflow ive made