Where does Programs provided come from?

On https://search.nixos.org/ there is a section “Programs provided”
example: Codeblocks

How does the website know which Programs are provided if they aren’t defined in the package.nix? (source codeblocks)
My current guess is that when the package gets build from hydra it saves the <package>/bin executable names and displays them as Programs provided.
Is this assumption correct?

You’re correct! In fact, this is also why NixOS search claims a program does not provide any programs if the build is failing on Hydra.

so it’s impossible for packages that use requireFile to provide a list of programs?

no, example: nixpkgs houdini
In the search it looks like this:
image
It can’t be build from hydra but a main program is provided.

yes, but that is only mainProgram meta, a package may provide many more programs,

funnily, i was asking this to add more programs to houdini package’s listing :slight_smile:

i don’t think that is possible here are the docs for the meta attribute and i can’t see where you can provide a program list: Meta-attributes | nixpkgs