beets: 1.4.9 -> unstable-2020-12-22
The maintainer has stopped cutting releases[1]. Since the last release, 1.4.9, includes a dependency that is filled with hate speech[2] it's all the more reason to package the unstable version and eliminate that requirement. Moreover a number of fixes, improvements, and features have landed since. [1]: https://github.com/beetbox/beets/issues/3625 [2]: https://github.com/NixOS/nixpkgs/pull/90504 Co-authored-by: Doron Behar <doron.behar@gmail.com>
This commit is contained in:
committed by
Doron Behar
co-authored by
Doron Behar
parent
52a4a170b9
commit
0faf72a557
@@ -0,0 +1,25 @@
|
||||
{ stdenv, fetchFromGitHub, beets, pythonPackages }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "beets-alternatives";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "beets-alternatives";
|
||||
owner = "geigerzaehler";
|
||||
# This is 0.8.2 with fixes against Beets 1.4.6 and Python 3 compatibility.
|
||||
rev = "v${version}";
|
||||
sha256 = "19160gwg5j6asy8mc21g2kf87mx4zs9x2gbk8q4r6330z4kpl5pm";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ beets pythonPackages.nose ];
|
||||
|
||||
checkPhase = "nosetests";
|
||||
|
||||
meta = {
|
||||
description = "Beets plugin to manage external files";
|
||||
homepage = "https://github.com/geigerzaehler/beets-alternatives";
|
||||
maintainers = [ stdenv.lib.maintainers.aszlig ];
|
||||
license = stdenv.lib.licenses.mit;
|
||||
};
|
||||
}
|
||||
@@ -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'])
|
||||
@@ -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 ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
{ stdenv, fetchFromGitHub, beets, pythonPackages, glibcLocales }:
|
||||
|
||||
pythonPackages.buildPythonApplication {
|
||||
name = "beets-copyartifacts";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "beets-copyartifacts";
|
||||
owner = "sbarakat";
|
||||
rev = "d0bb75c8fc8fe125e8191d73de7ade6212aec0fd";
|
||||
sha256 = "19b4lqq1p45n348ssmql60jylw2fw7vfj9j22nly5qj5qx51j3g5";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e '/install_requires/,/\]/{/beets/d}' setup.py
|
||||
sed -i -e '/namespace_packages/d' setup.py
|
||||
printf 'from pkgutil import extend_path\n__path__ = extend_path(__path__, __name__)\n' >beetsplug/__init__.py
|
||||
|
||||
# Skip test which is already failing upstream.
|
||||
sed -i -e '1i import unittest' \
|
||||
-e 's/\(^ *\)# failing/\1@unittest.skip/' \
|
||||
tests/test_reimport.py
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ beets pythonPackages.nose glibcLocales ];
|
||||
|
||||
checkPhase = "LANG=en_US.UTF-8 nosetests";
|
||||
|
||||
meta = {
|
||||
description = "Beets plugin to move non-music files during the import process";
|
||||
homepage = "https://github.com/sbarakat/beets-copyartifacts";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchFromGitHub, beets, pythonPackages }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "beets-extrafiles";
|
||||
version = "0.0.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "beets-extrafiles";
|
||||
owner = "Holzhaus";
|
||||
rev = "v${version}";
|
||||
sha256 = "0ah7mgax9zrhvvd5scf2z0v0bhd6xmmv5sdb6av840ixpl6vlvm6";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e '/install_requires/,/\]/{/beets/d}' setup.py
|
||||
sed -i -e '/namespace_packages/d' setup.py
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ beets ];
|
||||
|
||||
preCheck = ''
|
||||
HOME=$TEMPDIR
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/Holzhaus/beets-extrafiles";
|
||||
description = "A plugin for beets that copies additional files and directories during the import process";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user