4 ms·
This is nice to have, but it doesn't really distinguish between the "logical" differences and the "physical" differences. As a trivial example, one step in one
by downerending 7y ago
This is nice to have, but it doesn't really distinguish between the "logical" differences and the "physical" differences.
As a trivial example, one step in one's setup script might be "install package X". That can end up creating/modifying a lot of files, but many of those differences aren't necessarily meaningful or something one would want to carry into future reimages. And as things progress over time, those diffs might even be "wrong".
I liken it to whittling vs CNC. Either can be the right way to go, but usually at scale we end up doing better with CNC. And the best CNC program is a compact one.
- pas 7y agoThat's the advantage of Nix's top-down approach. You declare everything on as high level as you want/can/wish. You specify the package plus your customization for it. It's not that much different than a one-liner that installs the package plus uses echo to write your config file. The magic is the "forced" reproducibility by default.
- downerending 7y agoConceptually, I think nix is great. Most of us can appreciate the value of a perfectly reproducible system, etc. That said, unfortunately nix is a practical option for about zero percent of commercial shops. Sigh. I did actually work at a place that tried it once. Summarizing, the introduction failed through some combination of politics and the perception that nix would introduce a lot of complexity vs a standard vendor distro.