So we can clearly see the most popular distros and the reasons why people use them, please follow this format:
- Write the name of the Linux distro as a first-level comment.
- Reply to that comment with each reason you like the distro as a separate answer.
For example:
- Distro (first-level comment)
- Reason (one answer)
- Other reason (a different answer)
Please avoid duplicating options. This will help us better understand the most popular distros and the reasons why people use them.
Arch, BTW
Great wiki
The AUR
I was distrohopping for like a year or two when I first got into Linux desktop. As soon as I installed Arch for the first time that stopped. Now the thought of a distro pre-installing packages gives me the heebie jeebies. You don’t get to tell me how I sync with NTP servers!
I do real work. Dont have time to waste
Maybe don’t fiddle with your install non-stop then.
Isn’t that the reason to use arch? I remember last time I installed arch, about 5 years ago now I had to fiddle with everything just to get it working lol.
PKGBUILDs
pacman goes brrrr
EndeavourOS
I’m on it right now. Got a new Thinkpad a couple weeks ago and just wasn’t in the mood to install Arch the normal way when I finally had alone time at 11pm, gave Endeavour a shot and was like oh, this is convenient 🤩
It’s my first time with Arch based Linux, takes some adjustment, but I’ve been loving it.
Endeavour has been my default for a long while now, using Plasma KDE. It supports the flexibility needed to customise and make my own themes for as a low-vision user, and smooths a lot of the rough edges of pure Arch. I had Arch installed previously, but again, having that additional helping hand, coupled with a truly wonderful community, really made all the difference. I left Windows after the mess that was 8, I couldn’t go back…
Also on endeavor. I like arch, but it’s too much work. Endeavor is good enough for me.
Does Endeavour get funky like Manjaro does wrt AUR and configs?
Arch Linux
- Packages are kept up to date so it’s often the first distro to support new hardware, APIs, etc.
- AUR provides a huge library of software that isn’t often in package manager repos.
- Rolling release so you don’t have to deal with repository upgrades every 6 months to 2 years.
- btw
My favorite too. For me on other distros I was typically running into bugs that I’d find had already been fixed upstream months previously - and then I had to either live with the bug or do some hack to manually install the newer version. Somewhat related to this, but as Linux gamer it was also frustrating to have the older Mesa drivers all the time because it couldn’t support the older kernel version the distro shipped or something.
My current isn’t vanilla arch, but Endeavour OS, because as an unexperienced user I wanted to have the least trouble while installing, … I regret it ever since, because I began with a Plasma desktop and ended up with i3, mainly because of tiling, problems with some utilities, keyboard switching, etc. In the end, I still love the system, one can get quite minimal with it.
I love that you talked about regretting it. Using one of the arch-based diaries that obfuscates the installation process honestly destroys a lot of the benefit of using arch. Having to vaguely understand how the system fits together makes fixing issues a million times easier.
Yep. And I still forgot to mention one thing. It is a 2016 Macbook Pro, which basically means just more work fixing.
I’ve been trying to convert to linux since the mid-2000’s. Ubuntu and derivatives, fedora, and SUSE. Gaming and my lack on knowledge always brought me back to Windows.
In 2018 I tried Manjaro and loved it. But I broke it without the knowledge to fix it multiple times. The Arch BTW memes were strong at the time so I took the plunge and studied the wiki, and documented my own installation process and really learned a lot in the process. Proton was released and suddenly gaming got WAY better. I didn’t remove my windows install completely until 2022 but Arch has been my home on my main machine.
I have since put together a proxmox cluster and run many distros for various things but that’s a whole other rabbit hole!
Debian
Perfect for running servers
Debian
- Very stable, and can run the bleeding edge through Snap/Flatpack/Appimages, Distrobox, or VMs/Containers
- Community run distro
I love debian because it’s always there for you.
Lightweight.
Low resource footprint — smaller than EndeavourOS on my laptop. Stability is fantastic. Bookworm practically just came out, so the packages are all much newer than they were in Bullseye, making it a viable option for someone who wants an uneventful Linux distro that fades into the background and lets you get stuff done.
The new release bookworm solves most hardware/software problems
- Compatible with more devices than many distros
Arch Linux
Easy config with archinstall script if you want to choose options from a list when installing
Pacman package manager works well and PKGBUILD files are simple enough to edit if you want to alter how a package builds
AUR’s developer change hands faster than british prime ministers that it gets harder and to trust upstream devs
Incredibly easy to hack with it’s no-security by default policy
AUR offers a lot of resources for a straightforward way to install software that isn’t in the main repositories
Comments in the AUR can be a helpful troubleshooting source or indicate the quality of a package hosted there
Up to date packages
Build the system from the ground up choosing how you want it to work
Extensive documentation with useful troubleshooting sections for many articles
NixOS, I have a fetish for configuration files
I’m currently doing my second pass of Nix after diving deep into it last time and coming out unsatisfied. The same problems that I had before with it are problems I’m seeing again:
- disjointed configs pulled from random source or build repos on the internet
- unintuitive grammars with parameters that require you to download an autocompletion spec
- flakes that aren’t immediately easy to grok
Contrast that with my last Guix experience:
- Lisp form, super easy to understand grammar
- Recipes are so trivial that I’ve written three on my first day
- Source tree is included and you are expected to add branches to it
The only problem with Guix that I can see is that it’s not as popular
Flakes are extremely simple (my whole system is a flake: https://github.com/cmargiotta/dotfiles ), but they are basically not documented.
The grammar is really really bad, I prefere a lot the Guix one too! I am using NixOS only because the last time I tried Guix I didn’t find a lot of packages for their extremist GNU policy (I agree, but I need some packages), is it still like that?
is it still like that?
Yes and no – there are now non-free repos (so you can install firefox for example), and even non-free binary repos too.
dupe
PostmarketOS
• Android-free Linux distribution specializing in supporting older smartphones.
• Up-to-date software based on Alpine Linux and focused on privacy and security.
• Highly portable construction centered around a single software base regardless of what device it’s running on.
- Goal of keeping a given device running and updated until it physically falls apart.
Runs all your favourite programs, on your phone, bells and whistles included
- Has the widest supported device list of all mobile Linux projects, supports a ton of old Android phones to varying degrees.
Fedora Silverblue
The best thing for an inexperienced user. It’s simply unbreakable. Immutability rocks.
Except it breaks every couple months and the devs have no concept of rolling updates back.
Source: Silverblue user for 2 years.
My wife has been using Fedora Silverblue for almost 4 year on two laptops. There were no issue, nada, what so ever. It really just works. Yes, some bug could occur. And Fedora bug tracker is an awesome place for dealing with that. I believe, nobody will roll back a change just because of a single bug report but in my experience most bugs are being fixed pretty quickly if a reporter provides info to do that.
Flatpaks were impossible to install JUST THE OTHER DAY.
This is a random hearsay. Please, show a link to the bug report.
Sure, why not?
https://github.com/flatpak/flatpak/issues/5452
Before you get all semantic, despite being on “flatpak” github page, the problem only affected Fedora.
Should I also link to the time where rpm-ostree could not update or install anything? Which of those times should I link?
Ok. Bug was fixed. Bugs happen. I guess a regular user will get the fix eventually.
openSUSE Tumbleweed
The big advantage IMHO, is the out of the box BTRFS set up that lets you simply roll back to a non-broken state, right from the grub menu, should an update break your system. I haven’t had to use it yet, but it is a huge source of comfort knowing it is there.
Also, many people coming to opensuse remark how much snappier it is than other distros.
BTRFS has saved my life a bunch, I’m the kind that enjoys experimenting and changing stuff just to see what happens
Garuda uses this feature on an Arch base, it’s saved me a couple of times. Props to openSUSE for developing the way to make that happen!
I had to scroll waaaaay down to find this. Mindboggling how underrated this distro is!
It’s getting 3/4’s of the votes of Debian. I think their profile has increase a lot in the last year or so.
It is up to date so you can often get newer hardware working due to newer kernels.
Security by default. Firewall is set up blocking ports for UDP etc. so you are protected out of the box.
YaST
Nixos. For all its complexity and dilemmas and issues it has given me, it’s the comfiest for me and gives me really cool features
It still blows my mind that with nixos, setting up and continuously renewing an ssl cert is literally just two lines in the config file. I use nixos on my homeserver, thinking about switching my laptop to it too (currently Void linux).
@amanwithausername got an older laptop celeron processor running xubuntu? Any better ideas?
Hmmm never used xubuntu per se, but XFCE already seems like a good option for a low-spec computer. You could probably chip away at the resource usage some more by building your own desktop environment around a bare window manager, but honestly at this point the gain is negligible. If anything, you might want to look into tiling window managers just because they can offer a much more fluid and customizeable desktop experience as opposed to floating WMs. I’m using BSPWM right now, but considering switching to wayland with hyprland or qtile.
As for choice of distro: Not sure if NixOS would run well on your machine – my homeserver is also a pretty low-spec computer (dual-core Intel Atom), and
nixos-rebuild switchtakes ages to run. Otherwise, go for Debian Testing if you want stability, Void if you want to not have systemd. There’s also Devuan, which is basically Debian without systemd, but iirc it’s not as popular as Void. But honestly if xubuntu works for you, then it’s fine.Also, some miscellaneous tweaks for improved performance:
- IF YOU BOOT FROM A HARD DRIVE REPLACE IT WITH AN SSD! Solid-state drives are pretty cheap nowadays, and the upgrade from hdd to sdd is the single biggest performance improvement you can do for an old laptop
- If on x11, disable compositing. On XFCE, there should be an option for it somewhere in the settings. If on a bare window manager, simply don’t install any compositing manager (picom, xcompmgr, etc.). The downside is screen tearing and no proper window transparency, but it does put less strain on the CPU.
- Consider looking into a custom linux kernel? I boot linux-tkg on my main laptop and it gives some pretty good performance improvements. But I’m not so sure whether it would translate well to a low-spec system.
- Again, not exactly a performance tip, but consider formatting your boot partition as btrfs. Apart from all of the other cool features that you get with BTRFS, transparent file compression can, in some cases, be a win-win-win situation: less disk usage, faster file access, and longer SSD longevity. On low end system tho it may actually be the case that the CPU is the bottleneck as opposed to the disk, so transparent file compression may actually slow things down. Here are the settings I use for btrfs on my laptop (thinkpad with a core i7-5600U, mSATA solid state drive):
lazytime,noatime,autodefrag,compress=zstd:3,discard=async,space_cache=v2,ssd. Again, not sure how well these translate to a low-end system, you should do your research. - If your system supports uefi, consider using EFISTUB as opposed to Grub. Much faster boot times. Another option is to add two efi entries: one for EFISTUB (and have that be the default), and a second one for Grub, for when you need to change boot options or boot into recovery mode.
@amanwithausername comprehensive and good advice. Thank you. I tuck a look at linux, because other laptop isn’t win11 compatible “soon”.
Since you mentioned slow build times…
You can do
nixos-rebuild --target-hostto build locally and deploy over ssh. You can also use something likenixops.No way, that’s awesome! I’ll give it a try for sure!
Congrats for making it to the treasure! I’m like half way in and not sure if I can fight through…
just keep on going. i cant be happy on any other distro, so i have to use nixos
NixOS
declarative configuration
Reproducible
Rollbacks
Easy and fearless updates
I have been thinking to give NixOS a spin but feel like it’s above my brain capacity for me to handle. Do you also use homemanager and Flakes? Homemanager kinda makes sense (manage packages for non root users) but what does Flakes do?
I am already trying it and I am still no expert. How I understand flakes is that it is a file with inputs, like nixpkgs and other flakes or repos you might depend on and some outputs that can be things like a nixshell with packages and environment variables, custom packages and configs like your NixOS configurations and home manager. When you use your flake for the first time, by entering a nix shell with nix develop, building a package with nix build, rebuild your NixOS system with nixos-rebuild --flake .#<hostname>, etc, nix will generate a flake.lock file that stores the hashes of all of your inputs and thus pinning the input versions. This means that if you ever run any of those commands again, you should get the same result because the inputs are pinned and the same version. If you want to update, you just run nix flake update and it will regenerate the flake.lock file with new hashes for the newest version. The advantage with flakes is that it is fully reproducible, even if one of your dependencies changes, because the hash is specified and centrally managed in the inputs of your flake.
Nix flakes can be used for your NixOS system by adding the nixos configurations in the outputs of your nix flake and adding the dependencies like nixpkgs to the inputs. You can also combine it with home manager by either specifying it as a separate output or adding it as a nixos module inside the nixos configurations output. You just copy your existing nixos and home manager config to the folder with your flake and reference them inside the flake.nix. If you added home manager as a nixos module, you only need to run nixos-rebuild switch --flake <path-to-flake>.#<hostname> and it will automatically rebuild both your NixOS configuration and home manager configuration. You can then backup the folder with your flake and configurations by uploading them to GitHub for example.
The best resource I found was this 3 hour video by Matthias Benaets: https://youtube.com/watch?v=AGVXJ-TIv3Y&feature=share7
Thanks a lot for the detailed answer. It does sound complicated haha. I should probably follow along the YT video. Thanks again!
Very good with containers and VMs
Dependency Hell, begone
Fedora Workstation
The official repo provides all Python versions. No need to use
pyenv.Flatpak is awesome! I don’t like snaps. 🤷♂️
It just works. Seriously:)
Pop!_OS
I agree, it’s great!
- image with baked in nvidia drivers which work out of the box without too much fuss
- if you encounter problems, you can refer to the system76 website or use a solution provided by the community, since it’s based on Ubuntu
- installation with full disk encryption enabled by default
- right now it uses a slightly customized version of GNOME as DE (with “normal”/traditional windows and optionally a tiling wm), but system76 is working on a Rust-based DE, named Cosmic DE
I’ve been using Pop for about 2 years. I have yet to run into an issue that I couldn’t fix. It’s the first distro that made ditching windows easy.
I feel the same coming from Mac. Things seem to just work. I’m not a Linux wiz so minimal headaches while learning to tinker make it perfect for me.





















