Drop recurseIntoAttrs from python33Packages and pypyPackages.
We cannot import the packages from all of these three packages sets into the global namespace, because they are indistinguishable. For example: $ nix-env -qaP \* | grep pylint pypyPackages.pylint pylint-0.26.0 python33Packages.pylint pylint-0.26.0 python27Packages.pylint pylint-0.26.0 When someone tries to install pylint by running "nix-env -i pylint", then it's impossible to tell which one of these three versions was chosen. I can think of two ways to remedy this problem with recurseIntoAttrs: 1) Bake the name of the Python interpreter into every package's name, i.e. offer "python27-pylint", "python33-pylint", and so on. 2) Ensure that all non-default package sets mark all their packages 'lowPrio' to unsure that the choice during installation is deterministic.
This commit is contained in:
parent
7e0bd8d360
commit
53ffc6e0ef
@ -5740,11 +5740,11 @@ let
|
||||
|
||||
python3Packages = python33Packages;
|
||||
|
||||
python33Packages = recurseIntoAttrs (import ./python-packages.nix {
|
||||
python33Packages = import ./python-packages.nix {
|
||||
inherit pkgs;
|
||||
inherit (lib) lowPrio;
|
||||
python = python33;
|
||||
});
|
||||
};
|
||||
|
||||
python32Packages = import ./python-packages.nix {
|
||||
inherit pkgs;
|
||||
@ -5758,11 +5758,11 @@ let
|
||||
python = python27;
|
||||
});
|
||||
|
||||
pypyPackages = recurseIntoAttrs (import ./python-packages.nix {
|
||||
pypyPackages = import ./python-packages.nix {
|
||||
inherit pkgs;
|
||||
inherit (lib) lowPrio;
|
||||
python = pypy;
|
||||
});
|
||||
};
|
||||
|
||||
plone41Packages = import ../development/web/plone/4.1.nix {
|
||||
inherit pkgs;
|
||||
|
Loading…
Reference in New Issue
Block a user