diff options
Diffstat (limited to 'overlays/python-packages/default.nix')
-rw-r--r-- | overlays/python-packages/default.nix | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/overlays/python-packages/default.nix b/overlays/python-packages/default.nix index 7313f9e..8a9949e 100644 --- a/overlays/python-packages/default.nix +++ b/overlays/python-packages/default.nix | |||
@@ -1,4 +1,28 @@ | |||
1 | let | ||
2 | fromMyPythonPackages = name: self: super: { | ||
3 | pythonOverrides = self.buildPythonOverrides (pyself: pysuper: { | ||
4 | "${name}" = self."${pyself.python.pname}PackagesPlus"."${name}"; | ||
5 | }) super.pythonOverrides; | ||
6 | }; | ||
7 | in | ||
1 | { | 8 | { |
2 | wokkel = import ./wokkel; | 9 | # https://github.com/NixOS/nixpkgs/issues/44426 |
3 | apprise = import ./apprise; | 10 | # needs to come before all other in alphabetical order (or make use of |
11 | # lib.mkBefore) | ||
12 | __pythonOverlayFix = self: super: let | ||
13 | pyNames = [ "python3" "python36" "python37" ]; | ||
14 | overriddenPython = name: [ | ||
15 | { inherit name; value = super.${name}.override { packageOverrides = self.pythonOverrides; }; } | ||
16 | { name = "${name}Packages"; value = self.recurseIntoAttrs self.${name}.pkgs; } | ||
17 | ]; | ||
18 | overriddenPythons = builtins.concatLists (map overriddenPython pyNames); | ||
19 | in { | ||
20 | pythonOverrides = pyself: pysuper: {}; | ||
21 | buildPythonOverrides = newOverrides: currentOverrides: super.lib.composeExtensions newOverrides currentOverrides; | ||
22 | } // super.lib.attrsets.listToAttrs overriddenPythons; | ||
23 | |||
24 | |||
25 | apprise = fromMyPythonPackages "apprise"; | ||
26 | buildbot = import ./buildbot.nix; | ||
27 | wokkel = fromMyPythonPackages "wokkel"; | ||
4 | } | 28 | } |