1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 nix-update-script,
7
8 # build dependencies
9 poetry-core,
10
11 # dependencies
12 babelfish,
13 pyyaml,
14 rebulk,
15 unidecode,
16
17 # tests
18 pytestCheckHook,
19}:
20
21buildPythonPackage rec {
22 pname = "trakit";
23 version = "0.2.2";
24 pyproject = true;
25
26 disabled = pythonOlder "3.9";
27
28 src = fetchFromGitHub {
29 owner = "ratoaq2";
30 repo = "trakit";
31 rev = version;
32 hash = "sha256-VV+pdsQ5WEALYZgu4AmvNce1rCTLSYPZtTMjh+aExsU=";
33 };
34
35 build-system = [ poetry-core ];
36
37 dependencies = [
38 babelfish
39 pyyaml
40 rebulk
41 ];
42
43 nativeCheckInputs = [
44 pytestCheckHook
45 unidecode
46 ];
47
48 disabledTests = [
49 # requires network access
50 "test_generate_config"
51 ];
52
53 pythonImportsCheck = [ "trakit" ];
54
55 passthru.updateScript = nix-update-script { };
56
57 meta = {
58 description = "Guess additional information from track titles";
59 homepage = "https://github.com/ratoaq2/trakit";
60 changelog = "https://github.com/ratoaq2/trakit/releases/tag/${version}";
61 license = lib.licenses.mit;
62 maintainers = with lib.maintainers; [ eljamm ];
63 };
64}