The holy grail of nixpkgs: version ranges
Summary
This article introduces version range support for nixpkgs via the grail tool, explaining how a versionless package manager can be augmented with a solver to express and resolve version constraints. It compares nixpkgs to store-based package managers like Spack, details the grammar and workflow of the Grail system, and demonstrates how version ranges enable more flexible and reproducible builds, including examples and potential future integrations.