There was a talk about that problem at this years NixCon, maybe it'll give you some ideas.
https://media.ccc.de/v/nixcon-2023-36333-finding-things-in-nixpkgs-and-nixos-source
All about NixOS - https://nixos.org/
There was a talk about that problem at this years NixCon, maybe it'll give you some ideas.
https://media.ccc.de/v/nixcon-2023-36333-finding-things-in-nixpkgs-and-nixos-source
Oh very nice - thanks!
After some more digging I think I figured it out.
I was trying to use nix repl nixpkgs
to interactively query packages. But I forgot that that command loads the flake, not the package set. You have to prefix everything with legacyPackages.x86_64-linux.
to access packages in this environment. I got better results running nix repl
followed by :l angle-bracket nixpkgs angle-bracket
. (Btw the repl tells me how many variables have been loaded. Is there a way to list them? That would be helpful.) (Edit: nix repl nixpkgs#legacyPackages.x86_64-linux
also works)
I eventually found https://github.com/NixOS/nixpkgs/blob/35d87899f7c8f6fad50447301465d51b5dd87753/doc/languages-frameworks/rust.section.md?plain=1#L18 which tells me that what I want is pkgs.rustPlatform.buildRustPackage
I would still like a way to search for nested attributes.