731e0fa742
We want code such as `(pkg.override {}).overrideScope (self: super: {})` to work. This didn't work before, since `override` will call the original package again, and the attribute `overideScope`, which `callPackageWithScope` added, wasn't added again. The fix for this is to modify the package function itself to include the `callPackageWithScope` attribute, so it'll be re-added whenever the function is overriden for with arguments. There is a small problem here though: since callPackage uses some magic (`builtins.functionArgs`) to determine the auto-arguments of a function, we can't just write `callPackageWith scope drvScope`, since `builtins.functionArgs drvScope` will be `{}`. To fix this, we implement our own `callPackageWith`. Fixes https://github.com/NixOS/nixpkgs/issues/7953. Closes https://github.com/NixOS/nixpkgs/pull/9336. |
||
---|---|---|
.. | ||
arduino | ||
beam-modules | ||
bower-modules/generic | ||
compilers | ||
coq-modules | ||
dotnet-modules/patches | ||
eclipse/ecj | ||
em-modules/generic | ||
go-modules | ||
guile-modules | ||
haskell-modules | ||
idris-modules | ||
interpreters | ||
java-modules | ||
libraries | ||
lisp-modules | ||
lua-modules | ||
misc | ||
mobile | ||
node-packages | ||
ocaml-modules | ||
perl-modules | ||
pharo | ||
pure-modules | ||
python-modules | ||
qtcreator | ||
r-modules | ||
ruby-modules | ||
tools | ||
web |