Comment by aktenlage
3 days ago
Thanks. I watched videos on NixOS recently, it sounds great. I anyway abandoned the very appealing thought of using it. The reasons are already in my comment: "not much time to tinker (two small kids)" and "I guess with AI now it would be trivial, but I'd prefer getting a blueprint already known to work in practice and actually understand the why and how.".
I think this makes me incompatible with NixOS. Either I would need to spend the time to learn it, or I wouldn't understand much of what's going on. Maybe when the kids are older.
I think the requirement:
> but I'd prefer getting a blueprint already known to work in practice and actually understand the why and how.".
from "working part" is fulfilled. It is known to be work very well and many businesses use it on scale. Even drones run NixOS because it is more reliable. But it takes time to learn, which is the main negative side. I would recommend watching a bit more before making the final decision!
I am sure nixos works perfectly reliable. I meant a specific setup (I've the configuration as home server with immich, paperless-ngx, jellyfish, samba, ...) as I am sure there still are better and worse ways to configure such a system. Is there a good "library" of NixOS configurations?
So, for most common services, you don't need a library. NixOS itself disallows invalid states and provides configuration options in pure .nix to represent the configuration of the target service regardless of how it actually works.
For example, configuring basic Immich setup is few lines of code, this also includes downloading Immich and relevant dependencies, following uses unstable channel, so using latest version:
}
Jellyfin is even less with defaults:
Samba is a bit more but less than 30 lines. And then you run `nixos-rebuild switch` on remote target to have previous to run as systemd services.
For those that are not part of the core NixOS, are usually provided with NixOS Home Manager: https://wiki.nixos.org/wiki/Home_Manager
Libraries are usually something more complex than single service in NixOS. Complete build pipelines for some package or specific kind of complex configuration that has many services to provide some single goal.