But you cannot specify the exact package version # in you build config file to use (lack of being declarative).
As such, packages get updated making your build environment change over time, which seems to be inconsistent with the principle of being reproducible and reliabile (since version changes might break your environment).
The principles of Nixos sounds wonderful and would solve real world problems. But does NixOS deliver on that without being able to specify exactly package version #s?
Note: see this Github ticket from 6+ years ago (2015).
https://github.com/NixOS/nixpkgs/issues/9682