mastodon: 4.3.1 -> 4.3.2 (#361487)
[NixPkgs.git] / pkgs / by-name / do / dooit / package.nix
blob1c371a5a028c5492a9fe398bb76caa7fe288b1fc
2   lib,
3   fetchFromGitHub,
4   dooit,
5   python311,
6   testers,
7   nix-update-script,
8   extraPackages ? [ ],
9 }:
10 let
11   python3 = python311;
13 python3.pkgs.buildPythonApplication rec {
14   pname = "dooit";
15   version = "3.0.4";
16   pyproject = true;
18   src = fetchFromGitHub {
19     owner = "dooit-org";
20     repo = "dooit";
21     rev = "refs/tags/v${version}";
22     hash = "sha256-gWpmjpgAn37hfNv4aCCb+7pW/39Ngo8/Za9AdU4YCKA=";
23   };
25   build-system = with python3.pkgs; [ poetry-core ];
27   pythonRelaxDeps = [
28     "tzlocal"
29     "textual"
30     "sqlalchemy"
31   ];
33   propagatedBuildInputs =
34     with python3.pkgs;
35     [
36       pyperclip
37       textual
38       pyyaml
39       python-dateutil
40       sqlalchemy
41       platformdirs
42       tzlocal
43       click
44     ]
45     ++ extraPackages;
47   # /homeless-shelter
48   preBuild = ''
49     export HOME=$(mktemp -d)
50   '';
52   checkInputs = with python3.pkgs; [
53     pytestCheckHook
54     faker
55   ];
57   passthru = {
58     tests.version = testers.testVersion {
59       package = dooit;
60       command = "HOME=$(mktemp -d) dooit --version";
61     };
63     updateScript = nix-update-script { };
64   };
66   meta = with lib; {
67     description = "TUI todo manager";
68     homepage = "https://github.com/dooit-org/dooit";
69     changelog = "https://github.com/dooit-org/dooit/blob/v${version}/CHANGELOG.md";
70     license = licenses.mit;
71     maintainers = with maintainers; [
72       khaneliman
73       wesleyjrz
74       kraanzu
75     ];
76     mainProgram = "dooit";
77   };