3 ms·
Nix makes a lot of sense if you really understand build system. But makes less sense if you understand operations, or management. Real world engineering is ab
by unicornmama 5y ago
Nix makes a lot of sense if you really understand build system.
But makes less sense if you understand operations, or management.
Real world engineering is about trade-offs, and Nix has no wiggle room for compromise. It’s optimizes on one dimension: Reproducible builds. But an organisation won’t succeed when it places the needs of build system engineers on a pedestal.
- zimbatm 5y agoYou can always set `__noChroot = true;` on your derivations and forgo the sandbox. Then it's not more difficult than a Dockerfile really.
- pjkundert 5y agoIt adds some effort and complexity to the "build" dimension of your multi-dimension optimization, yes. But it also removes a whole bunch of complexity from every other dimension, by removing variability from the equation. If you cannot rely on /what/ you are running, then what, exactly, are you testing? Do you really know? I've found that most "managers" (in fact, most programmers) don't seem to appreciate this. The "well, I don't know what happened -- maybe reboot the system, and it'll work?" approach is insane.
- JamesSwift 5y agoId disagree its uni-dimensional. It optimizes for reproducibility and hermeticity without using virtualization (i.e. better performance).