200
submitted 1 year ago by bzImage@lemmy.ml to c/linux@lemmy.ml

Hi, mostly i use REHL based distros like Centos/Rocky/Oracle for the solutions i develop but it seems its time to leave..

What good server/minimal distro you use ?

Will start to test Debian stable.

you are viewing a single comment's thread
view the rest of the comments
[-] phil_m@lemmy.ml 14 points 1 year ago

If you're up for it: NixOS!

It's quite a steep learning curve, but after some time (after you've configured your "dream-system") you don't want to go back/switch to any different distro.

Specifically servers IMHO are a great use-case for NixOS. It's usually simpler to configure than a desktop distro, and less of the usual pain points of "dirty" software (like hardcoded dynamic libraries, that exist on most systems (ubuntu as reference) at that path).

I've much less fear maintaining my servers with NixOS because of its declarative functional reproducability and "transactional" upgrade system, than previously (where I've used Debian mostly).

[-] eoli3n@lemmy.ml 3 points 1 year ago

I had a really bad experience with NixOS, the idea is great, but I had a lot of troubles at each generation switch. I don't like it because I had to learn a lot of specific tools, that only applies on that OS, and it was (really.) hard. I prefer a classic distro, maybe Debian (or Freebsd if not linux), with Ansible for declarative config, and ZFS storage to be able to revert a snapshot if I have any kind of problem.

[-] phil_m@lemmy.ml 1 points 1 year ago* (last edited 1 year ago)

As I said it has a steep learning curve and documentation is pretty much the nixpkgs repo itself (well after understanding the basics of Nix and NixOS at least, with the combination of the https://nixos.wiki mostly IMO). It also takes some time to get used to the quirks of NixOS (and understanding the necessary practical design decisions of these quirks).

But I have nowadays seldom trouble with switching the generations (i.e. nixos-rebuild switch), unless you're updating flake inputs or (legacy) channels (where e.g. a new kernel might be used). In that case it makes sense to reboot into the new configuration. Also, obviously that can lead to short down-times (including just restarting a systemd service, if a service has changed in between the generations), if that is unacceptable, there obviously needs to be a more sophisticated solution, like kubernetes via e.g. kubnix. I'm not sure how much of that can be achieved with Ansible, as I haven't used it that much because I disliked the "programming" capabilities of the Ansible yaml syntax (which feels kinda hacky IMHO).

But apart from NixOS, one can also just use Nix on a different system to e.g. deploy or create docker images (which can be really compact, as only the necessary dependencies for a package is packaged) that in turn could e.g. be managed with Ansible or something...

load more comments (3 replies)
this post was submitted on 24 Jun 2023
200 points (97.2% liked)

Linux

47348 readers
1390 users here now

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

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS