Since I’m the NixOS guy, I recommend GUIX. 😉
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
I always wonder why GUIX seems to get left out vs NixOS
If NixOS isn't ready for mainstream work, GUIX is at least doubley so. It is SUPER white beard while IMO, even an idiot (👋🏼) can grasp NixOS.
NixOS isn't coming very naturally to me. Just can't quite grasp it.
If you want, here’s my config. Feel free to fork it.
https://github.com/harryprayiv/nix-config (you’ll have the most luck with the “plutus_vm” machine config output in my flake at first since the main output in my config is somewhat obscured by encryption).
I also have a Nix-Darwin config that I haven’t consolidated into my main one:
That looks sharp, thank you.
No problem. Real thanks goes to gvolpe who I forked my config from.
I've not used either, just look on as a curious spectator, I've yet to leave the more idiot proof distros of mint and fedora. What makes it so hard to deal with vs nix?
From what I hear, it's a much newer and less popular project, so I expect it to be even more difficult than nix was for me.
Switch to debian and go outside
I'd recommend rather boring Debian. Archlinux as well if you want to dive deeper.
EDIT: For Debian, you want Debian Testing.
Debian is only as boring as you want it to be.
I installed Debian so I could install Proxmox. Now I have like 10 VMs with every flavor of Linux I could want. Still partial to Arch tho.
I’m thinking of switching to Arch but maybe it’s time for something else. Maybe NixOS or Void, Gentoo probably not, I don’t have time for compiling everything. What do you recommend?
I'm a bit biased of course but you sound like you'd enjoy NixOS.
NixOS is immutable but quite a bit more tinkerable than Silverblue. Not quite Arch or Void levels of tinkering but this topic is not as black and white as it may seem.
secure boot with signing with YOUR OWN KEYS
Not yet in upstream NixOS but: https://github.com/nix-community/lanzaboote
systemd (because of MullvadVPN),
Unrelated to evangelising you into NixOS but I'm curious: Why does a VPN proxy software have any hard dependency on a process manager?
Why does a VPN proxy software have any hard dependency on a process manager?
Probably because of killswitch. App installs a service that manages internet and vpn access, the app is just a GUI for communicating with that service.
Can confirm NixOS is the shit. Can't imagine myself using anything else
Don't sleep on OpenSuSE. It supports everything you're looking for and has options for periodic and rolling release.
OpenSuse is great except for one (imho) zypper. When I do updates zyper has this huge section which is labeled "will not be upgraded". For me it's really distracting and makes reading which packages will be upgraded harder to parse visually at a glance
This is what I mean: https://superuser.com/questions/273424/am-i-using-zypper-correctly#361047
You want immutable distros but Silverblue wasn't flexible enough? Why not try NixOS? It's really nice.
I've been using it for two years and I love being able to make changes to my config and having those changes apply to all my computers. It's also basically unbreakable, if my computer explodes I can just reinstall NixOS with my config files and it will instantly be set up exactly how I want it.
Whichever one works best for you.
Now that's an experienced user.
Linux From Scratch 😉
Guix !
Plain old minimal arch to start is a great solution that's not too painful to manage IMO. That is where I landed after not wanting to figure out how to make full compiles palatable.
The one thing I’ve learned over the years is that the more experience you have with Linux, the less you rely on preconfigured distributions. Find a stable minimal install and build up your own set of base packages, DE, configs, etc.
Only you know your habits and needs and experience is how you narrow down the field.
For me personally, I have found my groove in a minimal Debian install with a first run setup script or two that is repeatable and automatable so I can start with a known quantity for any applicable need I have.
I prefer doing useful things with my workstation vs playing with the OS itself, so mint cinnamon is my recommendation. Servers are ansible-managed alma. Professionally I'm a Linux systems architect and devops engineer.
every distro is for experienced users, you can tranform arch in ubuntu and vice versa, but if you want sumething different try fedora silverblue, or other nonmutable distro, it's fun learning how to use it(it's what i'm doing with my laptop)
Arch is a good choice, Endeavour was my flavor of choice, but these days I use Linux Mint: Debian Edition, which works mostly fine for me (got one minor piece of software I can't get for it).
I love arch. I want to switch to NixOS for my home server but I think I’ll be sticking with arch for my main I see no further reason to switch.
I learned that using nix on arch for the home directory in addition to pacman and the aur is quite an unbeatable combo that I prefer to having everything managed by nix. The problem with nix and nixos I see for one is that it leaves some performance on the table for reproducibility and that many packages are or cannot be packaged for nix. Additionally arch already is quite reproducible albeit not as much as nixos. Writing your own meta package with a simple pkgbuild to manage the system base seemed like a good substitute for me.
I use debian as my absolute base and build lxc containers for everything above that with my own kernel, works for me.
I set my own complexity, but debian also doesn't get in my way which works for me.
Ubuntu container for dev work (c++ mostly), arch container for some stuff, few vms for private data.
Sooner or later everyone will find their way to Debian. It's boring and it works.
Since you're experienced with Linux already try a BSD for something new.
BSD sadly lacks a fair amount of support for things that Linux does. I gave FreeBSD a try a few years back and it annoyed me, especially coming from Arch. All the packages were so outdated and compiling updated versions from Ports took forever. Also the BSDs are just different enough from Linux to be annoying.
I'm a Linux System Engineer and at my former job we had a few thousand Linux hosts but a handful of Solaris 5 hosts. Shelling into one of those, expecting it to be Linux and then raging when something didn't work but then realizing it was Solaris and not Linux was always fun.
I use Arch (btw) because of the ArchWiki, and I'm totally comfortable configuring my system how I like it.
But I do appreciate Debian a lot. You can customize things to almost the same extent, but packages come preconfigured with great defaults and designed to better work together, unlike Arch which uses the upstream defaults almost universally.
Void Linux was my daily driver for around a year and it was fast, really fast, and had a lot of tinkerability. I highly recommend it.
Void is lovely, I use it on my computer as my sole OS, but OP requested systemd so that's a no for Void.
Oops, you're right, I read as the opposite!
NixOS definitely. The disk encryption with keys you may need do that manually though.
There are a few options. Like many have mentioned, Nix OS is a wonderful distro with it's own quirks.
If you are looking for something normal, consider Opensuse Tumbleweed and arch linux (or arch based distros like EndavourOS).
just install tumbleweed and never distrohop ever again
Gentoo probably not, I don't have time for compiling everything
Just wanted to say I use gentoo and was going to recommend it. Compile times really shouldn't impact you that much as they're running in background and can be configured to not impact other processes. And compiles are very fast for most applications, it's only the few heavy ones that aren't.
Use wireguard for Mullvad
Likely void, gentoo, Slackware, or just do everything on Debian