Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 beets,
4 buildPythonPackage,
5 fetchFromGitHub,
6 httpx,
7 packaging,
8 poetry-core,
9 pycountry,
10 pytest-cov-stub,
11 pytestCheckHook,
12 rich-tables,
13 filelock,
14 writableTmpDirAsHomeHook,
15 nix-update-script,
16}:
17
18let
19 version = "0.22.0";
20in
21buildPythonPackage {
22 pname = "beetcamp";
23 inherit version;
24 pyproject = true;
25
26 src = fetchFromGitHub {
27 owner = "snejus";
28 repo = "beetcamp";
29 tag = version;
30 hash = "sha256-5tcQtvYmXT213mZnzKz2kwE5K22rro++lRF65PjC5X0=";
31 };
32
33 patches = [
34 ./remove-git-pytest-option.diff
35 ];
36
37 build-system = [
38 poetry-core
39 ];
40
41 dependencies = [
42 beets
43 httpx
44 packaging
45 pycountry
46 ];
47
48 nativeCheckInputs = [
49 writableTmpDirAsHomeHook
50 pytestCheckHook
51 pytest-cov-stub
52 rich-tables
53 filelock
54 ];
55
56 passthru.updateScript = nix-update-script { };
57
58 meta = {
59 description = "Bandcamp autotagger source for beets (http://beets.io)";
60 homepage = "https://github.com/snejus/beetcamp";
61 license = lib.licenses.gpl2Only;
62 maintainers = [
63 lib.maintainers._9999years
64 ];
65 mainProgram = "beetcamp";
66 };
67}