diff options
Diffstat (limited to 'pkgs/tools/audio/beets/default.nix')
-rw-r--r-- | pkgs/tools/audio/beets/default.nix | 44 |
1 files changed, 28 insertions, 16 deletions
diff --git a/pkgs/tools/audio/beets/default.nix b/pkgs/tools/audio/beets/default.nix index ff033e62a8b..7e9d0ff9d86 100644 --- a/pkgs/tools/audio/beets/default.nix +++ b/pkgs/tools/audio/beets/default.nix @@ -1,6 +1,9 @@ { stdenv, fetchFromGitHub, writeScript, glibcLocales, diffPlugins , pythonPackages, imagemagick, gobjectIntrospection, gst_all_1 +# Attributes needed for tests of the external plugins +, callPackage, beets + , enableAcousticbrainz ? true , enableAcoustid ? true , enableBadfiles ? true, flac ? null, mp3val ? null @@ -77,6 +80,19 @@ let testShell = "${bashInteractive}/bin/bash --norc"; completion = "${bash-completion}/share/bash-completion/bash_completion"; + # This is a stripped down beets for testing of the external plugins. + externalTestArgs.beets = (beets.override { + enableAlternatives = false; + enableCopyArtifacts = false; + }).overrideAttrs (stdenv.lib.const { + doInstallCheck = false; + }); + + plugins = { + alternatives = callPackage ./alternatives-plugin.nix externalTestArgs; + copyartifacts = callPackage ./copyartifacts-plugin.nix externalTestArgs; + }; + in pythonPackages.buildPythonApplication rec { name = "beets-${version}"; version = "1.4.5"; @@ -101,26 +117,22 @@ in pythonPackages.buildPythonApplication rec { pythonPackages.gst-python pythonPackages.pygobject3 gobjectIntrospection - ] ++ optional enableAcoustid pythonPackages.pyacoustid + ] ++ optional enableAcoustid pythonPackages.pyacoustid ++ optional (enableFetchart || enableEmbyupdate || enableKodiupdate || enableAcousticbrainz) - pythonPackages.requests - ++ optional enableConvert ffmpeg - ++ optional enableDiscogs pythonPackages.discogs_client - ++ optional enableGmusic pythonPackages.gmusicapi - ++ optional enableKeyfinder keyfinder-cli - ++ optional enableLastfm pythonPackages.pylast - ++ optional enableMpd pythonPackages.mpd2 - ++ optional enableThumbnails pythonPackages.pyxdg - ++ optional enableWeb pythonPackages.flask - ++ optional enableAlternatives (import ./alternatives-plugin.nix { - inherit stdenv pythonPackages fetchFromGitHub; - }) - ++ optional enableCopyArtifacts (import ./copyartifacts-plugin.nix { - inherit stdenv pythonPackages fetchFromGitHub; - }); + pythonPackages.requests + ++ optional enableConvert ffmpeg + ++ optional enableDiscogs pythonPackages.discogs_client + ++ optional enableGmusic pythonPackages.gmusicapi + ++ optional enableKeyfinder keyfinder-cli + ++ optional enableLastfm pythonPackages.pylast + ++ optional enableMpd pythonPackages.mpd2 + ++ optional enableThumbnails pythonPackages.pyxdg + ++ optional enableWeb pythonPackages.flask + ++ optional enableAlternatives plugins.alternatives + ++ optional enableCopyArtifacts plugins.copyartifacts; buildInputs = with pythonPackages; [ beautifulsoup4 |