Nix-versions. Flake generator for version-pinned packages powered by Lazamar & NixHub

Hello,

I recently made a nix-versions (github), a CLI tool for finding historical nixpkgs revisions for previous packages versions, it stands on the shoulders of other amazing webservices people have built. It is nothing more than a CLI frontend to search on Lazamar/NixHub/search.nixos.org.

Today I wrote and deployed its documentation website. One cool thing is that the server also features a Flake Generator endpoint that allows people to create flakes for packages with certain version constrains, like scala@~3.3. The idea is that these nix-versions flakes can be used by people on their own flakes, with the guarantee that even if they nix flake update, their packages will still be guarnteed to match the constrained versions, they can get new versions as long as they match the constraint.

So this tool is usable as a CLI primarily, as a poor-man’s (poor as having no nix-language knowledge) tools version manager and development shell, and finally, as mentioned as a flake generator for pinned-version packages.

Hope people can find it useful for pinning their package versions.

15 Likes

This is so brilliant! Thank you for this :slight_smile: