diff --git a/pkgs/development/python-modules/beets/default.nix b/pkgs/development/python-modules/beets/default.nix index a390d64fe7f6d..6c7f30134fbc5 100644 --- a/pkgs/development/python-modules/beets/default.nix +++ b/pkgs/development/python-modules/beets/default.nix @@ -270,7 +270,7 @@ buildPythonPackage { passthru = { plugins = { - builtins = { + builtins = lib.recursiveUpdate { absubmit = { deprecated = true; testPaths = [ ]; @@ -441,7 +441,7 @@ buildPythonPackage { _utils = { testPaths = [ ]; }; - }; + } (lib.filterAttrs (_: p: p.builtin or false) pluginOverrides); base = lib.mapAttrs (_: a: { builtin = true; } // a) beets.passthru.plugins.builtins; overrides = lib.mapAttrs ( plugName: @@ -485,6 +485,25 @@ buildPythonPackage { ${beets}/bin/beet -c $out/config.yaml > /dev/null ''; + + beets-with-new-builtin-plugin = + let + beets-with-new-builtin-plugin = + (beets.override { + beets = beets-with-new-builtin-plugin; + + pluginOverrides = { + my_special_plugin.builtin = true; + }; + }).overridePythonAttrs + (prev: { + postPatch = (prev.postPatch or "") + '' + mkdir -p beetsplug/my_special_plugin + touch beetsplug/my_special_plugin/__init__.py + ''; + }); + in + beets-with-new-builtin-plugin; }; };