Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / office / gtg / default.nix
blob44aaa6c7146e0c87b36f4f4d7c7d971c9b4cb644
1 { lib
2 , fetchFromGitHub
3 , fetchpatch
4 , meson
5 , python3Packages
6 , ninja
7 , gtk3
8 , wrapGAppsHook
9 , glib
10 , gtksourceview4
11 , itstool
12 , gettext
13 , pango
14 , gdk-pixbuf
15 , libsecret
16 , gobject-introspection
17 , xvfb-run
20 python3Packages.buildPythonApplication rec {
21   pname = "gtg";
22   version = "0.6";
24   src = fetchFromGitHub {
25     owner = "getting-things-gnome";
26     repo = "gtg";
27     rev = "v${version}";
28     sha256 = "sha256-O8qBD92P2g8QrBdMXa6j0Ozk+W80Ny5yk0KNTy7ekfE=";
29   };
31   nativeBuildInputs = [
32     meson
33     ninja
34     itstool
35     gettext
36     wrapGAppsHook
37     gobject-introspection
38   ];
40   buildInputs = [
41     glib
42     gtk3
43     gtksourceview4
44     pango
45     gdk-pixbuf
46     libsecret
47   ];
49   propagatedBuildInputs = with python3Packages; [
50     pycairo
51     pygobject3
52     lxml
53     gst-python
54     liblarch
55     caldav
56   ];
58   nativeCheckInputs = with python3Packages; [
59     nose
60     mock
61     xvfb-run
62     pytest
63   ];
65   preBuild = ''
66     export HOME="$TMP"
67   '';
69   format = "other";
71   checkPhase = "xvfb-run pytest ../tests/";
73   meta = with lib; {
74     description = " A personal tasks and TODO-list items organizer";
75     longDescription = ''
76       "Getting Things GNOME" (GTG) is a personal tasks and ToDo list organizer inspired by the "Getting Things Done" (GTD) methodology.
77       GTG is intended to help you track everything you need to do and need to know, from small tasks to large projects.
78     '';
79     homepage = "https://wiki.gnome.org/Apps/GTG";
80     downloadPage = "https://github.com/getting-things-gnome/gtg/releases";
81     license = licenses.gpl3Plus;
82     maintainers = with maintainers; [ oyren ];
83     platforms = platforms.linux;
84   };