Hacker News new | past | comments | ask | show | jobs | submit login

Co-author/spack guy/occasional frequenter of Nix fora here.

Aside from what p4ul said above, the main architectural differences between Nix and Spack are: 1. Spack has a dependency solver (the "concretizer"), Nix does not 2. Spack packages are parameterized, and we solve for parameters like build options, compilers, virtual dependencies, etc., so the user can say what tweaks they want on the CLI or in an environment. To do this same with Nix packages you typically need to hack on some nixpkgs. The goal of Spack is to be able to compose and swap libraries, compilers, and other options easily. 3. Spack has more support for external packages (or "impure" packages as the Nix people say). You can point it at an existing installation on your system to use as a dependency.

Hashing installation directories, the store-based installation model described in the paper are things the two have in common.

More on the solver aspect in this other paper that we're also presenting next week: https://arxiv.org/abs/2210.08404




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

Search: