beets.externalPlugins.check: init at 0.12.0
This commit is contained in:
parent
be13df6c76
commit
171ceb38ff
3 changed files with 60 additions and 0 deletions
17
pkgs/tools/audio/beets/beet-check-tests.patch
Normal file
17
pkgs/tools/audio/beets/beet-check-tests.patch
Normal file
|
@ -0,0 +1,17 @@
|
|||
diff --git a/test/cli_test.py b/test/cli_test.py
|
||||
index 26df140..2eb913c 100644
|
||||
--- a/test/cli_test.py
|
||||
+++ b/test/cli_test.py
|
||||
@@ -372,12 +372,6 @@ class ToolListTest(TestHelper, TestCase):
|
||||
self.assertIn('flac', stdout.getvalue())
|
||||
self.assertIn('oggz-validate', stdout.getvalue())
|
||||
|
||||
- def test_found_mp3val(self):
|
||||
- shutil.copy('/bin/echo', os.path.join(self.temp_dir, 'mp3val'))
|
||||
- with captureStdout() as stdout:
|
||||
- beets.ui._raw_main(['check', '--list-tools'])
|
||||
- self.assertRegexpMatches(stdout.getvalue(), r'mp3val *found')
|
||||
-
|
||||
def test_oggz_validate_not_found(self):
|
||||
with captureStdout() as stdout:
|
||||
beets.ui._raw_main(['check', '--list-tools'])
|
35
pkgs/tools/audio/beets/check-plugin.nix
Normal file
35
pkgs/tools/audio/beets/check-plugin.nix
Normal file
|
@ -0,0 +1,35 @@
|
|||
{ stdenv, fetchFromGitHub, beets, pythonPackages, flac, liboggz, mp3val }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
name = "beets-check";
|
||||
version = "0.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "beets-check";
|
||||
owner = "geigerzaehler";
|
||||
rev = "v${version}";
|
||||
sha256 = "0b2ijjf0gycs6b40sm33ida3sjygjiv4spb5mba52vysc7iwmnjn";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ beets ];
|
||||
checkInputs = [ pythonPackages.nose flac liboggz mp3val ];
|
||||
propagatedBuildInputs = [ flac liboggz mp3val ];
|
||||
|
||||
# patch out broken tests
|
||||
patches = [ ./beet-check-tests.patch ];
|
||||
|
||||
# patch out futures dependency, it is only needed for Python2 which we don't
|
||||
# support.
|
||||
prePatch = ''
|
||||
sed -i "/futures/d" setup.py
|
||||
'';
|
||||
|
||||
checkPhase = "nosetests";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Beets plugin to Verify and store checksums in your library";
|
||||
homepage = https://github.com/geigerzaehler/beets-check;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ lovesegfault ];
|
||||
};
|
||||
}
|
|
@ -29,6 +29,7 @@
|
|||
|
||||
# External plugins
|
||||
, enableAlternatives ? false
|
||||
, enableCheck ? false, liboggz ? null
|
||||
, enableCopyArtifacts ? false
|
||||
|
||||
, bashInteractive, bash-completion
|
||||
|
@ -37,6 +38,7 @@
|
|||
assert enableAbsubmit -> essentia-extractor != null;
|
||||
assert enableAcoustid -> pythonPackages.pyacoustid != null;
|
||||
assert enableBadfiles -> flac != null && mp3val != null;
|
||||
assert enableCheck -> flac != null && mp3val != null && liboggz != null;
|
||||
assert enableConvert -> ffmpeg != null;
|
||||
assert enableDiscogs -> pythonPackages.discogs_client != null;
|
||||
assert enableFetchart -> pythonPackages.responses != null;
|
||||
|
@ -106,6 +108,7 @@ let
|
|||
|
||||
plugins = {
|
||||
alternatives = callPackage ./alternatives-plugin.nix pluginArgs;
|
||||
check = callPackage ./check-plugin.nix pluginArgs;
|
||||
copyartifacts = callPackage ./copyartifacts-plugin.nix pluginArgs;
|
||||
};
|
||||
|
||||
|
@ -142,6 +145,7 @@ in pythonPackages.buildPythonApplication rec {
|
|||
|| enableSubsonicupdate
|
||||
|| enableAcousticbrainz)
|
||||
pythonPackages.requests
|
||||
++ optional enableCheck plugins.check
|
||||
++ optional enableConvert ffmpeg
|
||||
++ optional enableDiscogs pythonPackages.discogs_client
|
||||
++ optional enableGmusic pythonPackages.gmusicapi
|
||||
|
@ -246,6 +250,10 @@ in pythonPackages.buildPythonApplication rec {
|
|||
|
||||
makeWrapperArgs = [ "--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\"" "--set GST_PLUGIN_SYSTEM_PATH_1_0 \"$GST_PLUGIN_SYSTEM_PATH_1_0\"" ];
|
||||
|
||||
passthru = {
|
||||
externalPlugins = plugins;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Music tagger and library organizer";
|
||||
homepage = http://beets.io;
|
||||
|
|
Loading…
Reference in a new issue