|
|
|
@ -8,7 +8,9 @@ |
|
|
|
|
, enableDiscogs ? true |
|
|
|
|
, enableEmbyupdate ? true |
|
|
|
|
, enableFetchart ? true |
|
|
|
|
, enableGmusic ? true |
|
|
|
|
, enableKeyfinder ? true, keyfinder-cli ? null |
|
|
|
|
, enableKodiupdate ? true |
|
|
|
|
, enableLastfm ? true |
|
|
|
|
, enableMpd ? true |
|
|
|
|
, enableReplaygain ? true, bs1770gain ? null |
|
|
|
@ -27,9 +29,10 @@ assert enableBadfiles -> flac != null && mp3val != null; |
|
|
|
|
assert enableConvert -> ffmpeg != null; |
|
|
|
|
assert enableDiscogs -> pythonPackages.discogs_client != null; |
|
|
|
|
assert enableFetchart -> pythonPackages.responses != null; |
|
|
|
|
assert enableGmusic -> pythonPackages.gmusicapi != null; |
|
|
|
|
assert enableKeyfinder -> keyfinder-cli != null; |
|
|
|
|
assert enableLastfm -> pythonPackages.pylast != null; |
|
|
|
|
assert enableMpd -> pythonPackages.mpd != null; |
|
|
|
|
assert enableMpd -> pythonPackages.mpd2 != null; |
|
|
|
|
assert enableReplaygain -> bs1770gain != null; |
|
|
|
|
assert enableThumbnails -> pythonPackages.pyxdg != null; |
|
|
|
|
assert enableWeb -> pythonPackages.flask != null; |
|
|
|
@ -45,7 +48,9 @@ let |
|
|
|
|
discogs = enableDiscogs; |
|
|
|
|
embyupdate = enableEmbyupdate; |
|
|
|
|
fetchart = enableFetchart; |
|
|
|
|
gmusic = enableGmusic; |
|
|
|
|
keyfinder = enableKeyfinder; |
|
|
|
|
kodiupdate = enableKodiupdate; |
|
|
|
|
lastgenre = enableLastfm; |
|
|
|
|
lastimport = enableLastfm; |
|
|
|
|
mpdstats = enableMpd; |
|
|
|
@ -74,13 +79,13 @@ let |
|
|
|
|
|
|
|
|
|
in pythonPackages.buildPythonApplication rec { |
|
|
|
|
name = "beets-${version}"; |
|
|
|
|
version = "1.4.3"; |
|
|
|
|
version = "1.4.5"; |
|
|
|
|
|
|
|
|
|
src = fetchFromGitHub { |
|
|
|
|
owner = "beetbox"; |
|
|
|
|
repo = "beets"; |
|
|
|
|
rev = "v${version}"; |
|
|
|
|
sha256 = "0sh2ap7jbqh7p8h63kgrx1ja9lyqlxjpfnh6axxw9p1mh78cgc1v"; |
|
|
|
|
sha256 = "0fvfp9ckq3dhs4f8abg9fprfppyf0g6mv8br2xz99plg4wnffzmy"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
propagatedBuildInputs = [ |
|
|
|
@ -99,13 +104,15 @@ in pythonPackages.buildPythonApplication rec { |
|
|
|
|
] ++ 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.mpd |
|
|
|
|
++ optional enableMpd pythonPackages.mpd2 |
|
|
|
|
++ optional enableThumbnails pythonPackages.pyxdg |
|
|
|
|
++ optional enableWeb pythonPackages.flask |
|
|
|
|
++ optional enableAlternatives (import ./alternatives-plugin.nix { |
|
|
|
@ -146,7 +153,7 @@ in pythonPackages.buildPythonApplication rec { |
|
|
|
|
s,"mp3val","${mp3val}/bin/mp3val", |
|
|
|
|
}' beetsplug/badfiles.py |
|
|
|
|
'' + optionalString enableConvert '' |
|
|
|
|
sed -i -e 's,\(util\.command_output(\)\([^)]\+\)),\1[b"${ffmpeg.bin}/bin/ffmpeg" if args[0] == b"ffmpeg" else args[0]] + \2[1:]),' beetsplug/convert.py |
|
|
|
|
sed -i -e 's,\(util\.command_output(\)\([^)]\+\)),\1[b"${ffmpeg.bin}/bin/ffmpeg" if args[0] == b"ffmpeg" else args[0]] + \2[1:]),' beetsplug/convert.py |
|
|
|
|
'' + optionalString enableReplaygain '' |
|
|
|
|
sed -i -re ' |
|
|
|
|
s!^( *cmd *= *b?['\'''"])(bs1770gain['\'''"])!\1${bs1770gain}/bin/\2! |
|
|
|
|