I think the least that distros can do, is allow listing all packages and system settings in config files like .toml rather than having to type in every single package to install, or click through system setting GUIs to setup. Would that require using a whole programming language or system like NIx?

While NixOS works much differently from most distros, that’s the only reason I use it: package and system settings in text files. If I fix something, it’s fixed permanently, I don’t need to hunt down files in random directories if I want to change a setting. If I ever need to reinstall the OS I don’t have to write dnf install every single damn package and manually setup all that up all over again. Having daily-drove Windows macOS & Fedora as throughout the years, my setups have felt hacky as well as houses of cards as I’ve wanted or had to set them up again (I don’t mean Fedora specifically, but distros in general).

Basically it feels insane that it’s the way most linux users and servers in the world operate. If I, a humble computer hobbyist can figure out Nix, why don’t more users do so, and why is Nix so niche?

  • rnd@thebrainbin.org
    link
    fedilink
    arrow-up
    7
    ·
    3 days ago

    There are some package managers that do that.

    Alpine Linux’s apk stores a list of required packages for the current system in a single file, /etc/apk/world. using apk add or apk del adds or removes a package from this list, then calculates how to get to that stage (adding all the dependencies, resolving conflicts…) and then installs the needed stuff (and removes the unneeded) to make it match.

    The file can be edited or replaced using any other tools, then apk fix will do the same recalculation and installation/removal steps.