Finding python package derivation to get logs from

I added a new python package in a way similar to what’s described in the docs. I’m using flakes.

If I fire a nix repl and load my flake, I can reach packages from nixpkgs:

nix-repl> :lf .
Added 10 variables.

nix-repl> packages.x86_64-linux.python.pkgs.requests
«derivation /nix/store/3c1x28lr6lx6k5c1prnnbw1a69fbsy2v-python3.12-requests-2.32.3.drv»

This makes it possible to do things like get the build logs for that particular package:

$ nix log .#python.pkgs.requests|head -n1
Sourcing python-remove-tests-dir-hook

However, the new package I added apyanki is not there:

$ nix eval .#python.pkgs --apply 'j: builtins.filter (k: builtins.match "apy.*" k != null) (builtins.attrNames j)'
[ "apycula" "apykuma" ]

The package is visible to python though:

$ nix run .#python -- -c 'import apyanki; print(apyanki.__path__)'
['/nix/store/2s0ccg4bzp1viacw8dc0625v9l1l9skp-python3-3.12.9-env/lib/python3.12/site-packages/apyanki']

A couple of questions:

  1. Is there a way to reach this package in some other way within the repl?
  2. Is it possible to get the build logs in some other way?

It depends on how you defined your flake. Probably python.pkgs refers to nixpkgs’ pythonPackages, which doesn’t include the new package.