X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=overlays%2Fpython-packages%2Fdefault.nix;h=11dea09602b616df8a68ae8ce963b334df951a7f;hb=75489e72e379af8aeac64bc4967717d9ae776ff0;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..11dea09 100644 --- a/overlays/python-packages/default.nix +++ b/overlays/python-packages/default.nix @@ -1,4 +1,30 @@ +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"; + blivet3 = fromMyPythonPackages "blivet3"; + buildbot = import ./buildbot.nix; + wokkel = fromMyPythonPackages "wokkel"; + pymilter = fromMyPythonPackages "pymilter"; }