Make it possible to use .withPackages and .pkgs #26
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I got hit by both #12 and the error noted in #14.
I added
builtins.trace
to various places and observed that...In my case, this was coming from tkinter, and
python.override.__functionArgs
at that point was an attribute set of["nixpkgs-python", "version"]
. My understanding iscallPackage ./self.nix { inherit version; }
returns an overrideable version of the function defined inself.nix
, and that's being passed down as the python object. I changed it to use the barepackages.${version}
instead, but I'm not sure if that breaks something else.i.e.
src
andhash
not getting overriden - I traced it down to this call chain:..and I forcefully replaced
pkgsBuildHost
with an attrset with${pythonAttr}
set to nixpkgs-python's Python package, which worked, but I'm not sure if that's the right or the cleanest way.Also needed to use
newScope
to make packages underxorg
available incallPackage
calls, e.g.xorgproto
.A slightly stripped down version of a `flake.nix` that I wanted to use `withPackage` with, which now works with this patch
nix develop .#310 --impure