X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=overlays%2Fpython-packages%2Fdefault.nix;h=901cd7266cc8c5e43f095755bb34d7b74fe5abee;hb=38ac9a5749743a95d27a5231d05eb93c2340e6bc;hp=7313f9e48868a2505b22752544bdc8d7efd2ffd9;hpb=c1b6f97a72e0b4897ce11414df28259d4ea3c5ab;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/overlays/python-packages/default.nix b/overlays/python-packages/default.nix index 7313f9e..901cd72 100644 --- a/overlays/python-packages/default.nix +++ b/overlays/python-packages/default.nix @@ -1,4 +1,29 @@ +let + fromMyPythonPackages = name: self: super: { + pythonOverrides = self.buildPythonOverrides (pyself: pysuper: { + "${name}" = self."${pyself.python.pname}PackagesPlus"."${name}"; + }) super.pythonOverrides; + }; +in { - wokkel = import ./wokkel; - apprise = import ./apprise; + # https://github.com/NixOS/nixpkgs/issues/44426 + # needs to come before all other in alphabetical order (or make use of + # lib.mkBefore) + __pythonOverlayFix = self: super: let + pyNames = [ "python3" "python36" "python37" "python38" ]; + overriddenPython = name: [ + { inherit name; value = super.${name}.override { packageOverrides = self.pythonOverrides; }; } + { name = "${name}Packages"; value = self.recurseIntoAttrs self.${name}.pkgs; } + ]; + overriddenPythons = builtins.concatLists (map overriddenPython pyNames); + in { + pythonOverrides = pyself: pysuper: {}; + buildPythonOverrides = newOverrides: currentOverrides: super.lib.composeExtensions newOverrides currentOverrides; + } // super.lib.attrsets.listToAttrs overriddenPythons; + + + apprise = fromMyPythonPackages "apprise"; + buildbot = import ./buildbot.nix; + wokkel = fromMyPythonPackages "wokkel"; + pymilter = fromMyPythonPackages "pymilter"; }