Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Nix (https://nix.dev/) can provide all of this, although in a smarter way than just through dumping everything in the VCS. Some projects use it already to provide a reproducible development environment and if done right a clean build is just a `nix-build` away.


It does not provide "all of this" and would just make the experience worse for everyone.


What is it missing? Using nix with nixpkgs you can pin all dependencies to a specific version identified by a hash value of that dependencies source code and dependencies, recursively building a dependency graph down to nixpkgs' bootstrap toolchains. That is deeper down than you could reasonably go by dumping everything in the VCS. Building becomes a single command that fetches everything it needs. Even the offline requirement is satisfiable if you prefetch all dependencies, it is just not happening by default (and for good reason, you might already have the toolchain from another project or some other dependencies are already on your system).


Honestly surprised the article didn't mention Nix or Guix. Seems like functional package management solves the exact problems the author is worried about.


The article starts with a gamedev disclaimer. Most gamedev folks would rather die on that Microsoft hill than use another OS.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: