btrbk: add mainProgram
[NixPkgs.git] / pkgs / by-name / st / sticky / package.nix
blobdd54d9c645918d73cf1fe655e97c97c7f4868592
1 { stdenv
2 , lib
3 , fetchFromGitHub
4 , gobject-introspection
5 , meson
6 , ninja
7 , python3
8 , wrapGAppsHook3
9 , xapp
10 , glib
11 , gspell
12 , gtk3
13 , gitUpdater
16 stdenv.mkDerivation rec {
17   pname = "sticky";
18   version = "1.22";
20   src = fetchFromGitHub {
21     owner = "linuxmint";
22     repo = pname;
23     rev = version;
24     hash = "sha256-JrzBME1d4qvGjF2zdiqCX7h+sFadLsRQqZKnQj7elHs=";
25   };
27   postPatch = ''
28     sed -i -e "s|/usr/lib|$out/lib|" usr/bin/sticky
29     sed -i -e "s|/usr/share|$out/share|" usr/lib/sticky/*.py
30   '';
32   nativeBuildInputs = [
33     gobject-introspection
34     meson
35     ninja
36     python3.pkgs.wrapPython
37     wrapGAppsHook3
38   ];
40   buildInputs = [
41     xapp
42     glib
43     gspell
44     gtk3
45     python3 # for patchShebangs
46   ];
48   pythonPath = with python3.pkgs; [
49     pygobject3
50     python-xapp
51   ];
53   dontWrapGApps = true;
55   preFixup = ''
56     buildPythonPath "$out $pythonPath"
58     wrapProgram $out/bin/sticky \
59       --prefix PYTHONPATH : "$program_PYTHONPATH" \
60       ''${gappsWrapperArgs[@]}
61   '';
63   passthru = {
64     updateScript = gitUpdater {
65       ignoredVersions = ''master.*'';
66     };
67   };
69   meta = with lib; {
70     description = "Sticky notes app for the linux desktop";
71     mainProgram = "sticky";
72     homepage = "https://github.com/linuxmint/sticky";
73     license = licenses.gpl2Only;
74     platforms = platforms.linux;
75     maintainers = with maintainers; [ linsui bobby285271 ];
76   };