vuls: init at 0.27.0 (#348530)
[NixPkgs.git] / pkgs / by-name / hy / hydrapaper / package.nix
blobca638091fb3c4fdaf57083a532788dcb4d161913
1 { lib
2 , python3Packages
3 , fetchFromGitLab
4 , meson
5 , ninja
6 , glib
7 , pkg-config
8 , pandoc
9 , appstream
10 , blueprint-compiler
11 , gobject-introspection
12 , wrapGAppsHook4
13 , dbus
14 , libadwaita
15 , xdg-user-dirs
18 python3Packages.buildPythonApplication rec {
19   pname = "hydrapaper";
20   version = "3.3.2";
21   pyproject = false;
23   src = fetchFromGitLab {
24     owner = "gabmus";
25     repo = "HydraPaper";
26     rev = version;
27     hash = "sha256-IDaM8bM/0KH9h59523WqLKe400V5lLNyJ4faPf980Ro=";
28   };
30   nativeBuildInputs = [
31     meson
32     ninja
33     glib
34     pkg-config
35     pandoc
36     appstream
37     blueprint-compiler
38     gobject-introspection
39     wrapGAppsHook4
40   ];
42   buildInputs = [
43     dbus
44     glib
45     libadwaita
46   ];
48   propagatedBuildInputs = with python3Packages; [
49     dbus-python
50     pygobject3
51     pillow
52   ];
54   # wrapGAppsHook4 propogates gtk4 -- which provides gtk4-update-icon-cache instead
55   postPatch = ''
56     substituteInPlace meson_post_install.py \
57       --replace-fail gtk-update-icon-cache gtk4-update-icon-cache
58   '';
60   dontWrapGApps = true;
62   preFixup = ''
63     gappsWrapperArgs+=(
64       --prefix PATH : ${lib.makeBinPath [ glib xdg-user-dirs ]}
65     )
66     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
67   '';
69   meta = {
70     description = "GNOME utility for setting different wallpapers on individual monitors";
71     homepage = "https://hydrapaper.gabmus.org";
72     license = lib.licenses.gpl3Plus;
73     maintainers = with lib.maintainers; [ lachrymal ];
74     mainProgram = "hydrapaper";
75     platforms = lib.platforms.linux;
76   };