biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / applications / misc / nwg-displays / default.nix
blob22d4e20d5eef74a06f78d5af3ee492a1d20b87ae
1 { lib
2 , fetchFromGitHub
3 , atk
4 , gdk-pixbuf
5 , gobject-introspection
6 , gtk-layer-shell
7 , gtk3
8 , pango
9 , python310Packages
10 , wrapGAppsHook
11 , hyprlandSupport ? true
12 , wlr-randr
15 python310Packages.buildPythonApplication rec {
16   pname = "nwg-displays";
17   version = "0.3.16";
19   src = fetchFromGitHub {
20     owner = "nwg-piotr";
21     repo = "nwg-displays";
22     rev = "refs/tags/v${version}";
23     hash = "sha256-rnaBYDGEsc8oGw4yZ60NQFbNf+L0tmHYDYf+UDoDmSI=";
24   };
26   nativeBuildInputs = [
27     gobject-introspection
28     wrapGAppsHook
29   ];
31   buildInputs = [
32     gtk3
33   ];
35   propagatedBuildInputs = [
36     atk
37     gdk-pixbuf
38     gtk-layer-shell
39     pango
40     python310Packages.gst-python
41     python310Packages.i3ipc
42     python310Packages.pygobject3
43   ] ++ lib.optionals hyprlandSupport [
44     wlr-randr
45   ];
47   dontWrapGApps = true;
49   postInstall = ''
50     install -Dm444 nwg-displays.svg -t $out/share/icons/hicolor/scalable/apps
51     install -Dm444 nwg-displays.desktop -t $out/share/applications
52   '';
54   preFixup = ''
55     makeWrapperArgs+=("''${gappsWrapperArgs[@]}");
56   '';
58   # Upstream has no tests
59   doCheck = false;
61   meta = {
62     homepage = "https://github.com/nwg-piotr/nwg-displays";
63     description = "Output management utility for Sway and Hyprland";
64     license = lib.licenses.mit;
65     platforms = lib.platforms.linux;
66     maintainers = [ ];
67     mainProgram = "nwg-displays";
68   };