Closed
Description
As described in #1, we'd like to use ~/.nix-defexpr/channels/nixos-unstable/programs.sqlite
to figure out what Nixpkgs package contains a given executable.
@jonascarpay asked:
programs.sqlite
is actually provided by nix-channel, which is a little outdated at this point. Is there an easy way of manually generating aprograms.sqlite
for a certain commit?
I took a quick look at this, and here's what I've found so far:
- It looks like
programs.sqlite
is created by the files in https://github.com/NixOS/nixos-channel-scripts. In particular, it is created by https://github.com/NixOS/nixos-channel-scripts/blob/b2053e2a33926bc84541925affd3f46c53c59a07/generate-programs-index.cc, which is called by https://github.com/NixOS/nixos-channel-scripts/blob/b2053e2a33926bc84541925affd3f46c53c59a07/mirror-nixos-branch.pl. - The above repo is somehow related to https://releases.nixos.org/nixos/unstable/nixos-22.11pre396557.5857574d459, which it either generates, or takes as input. In this directory, there is a
packages.json.br
file and astore-paths.xz
file, which from the file name, sound like they could reasonably be used as inputs to generateprograms.sqlite
. - It looks like there is a https://github.com/NixOS/nixpkgs/blob/e4bcf793713f281a9517f7097ad00e34873c42a5/pkgs/top-level/make-tarball.nix file in Nixpkgs that generates this
packages.json.br
file. - There's a corresponding job on Hydra for this derivation. You can see it contains
packages.json.br
as an output available to Hydra: - I'm not sure where
store-paths.xz
comes from.
Metadata
Metadata
Assignees
Labels
No labels