chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / mu / muffin / package.nix
blobc1a67a0d2737955d612d41821b6bd244fbc97bf6
1 { stdenv
2 , lib
3 , fetchFromGitHub
4 , substituteAll
5 , cairo
6 , cinnamon-desktop
7 , dbus
8 , desktop-file-utils
9 , egl-wayland
10 , glib
11 , gobject-introspection
12 , graphene
13 , gtk3
14 , json-glib
15 , libcanberra
16 , libdrm
17 , libgnomekbd
18 , libgudev
19 , libinput
20 , libstartup_notification
21 , libwacom
22 , libxcvt
23 , libXdamage
24 , libxkbcommon
25 , libXtst
26 , mesa
27 , meson
28 , ninja
29 , pipewire
30 , pkg-config
31 , python3
32 , udev
33 , wayland
34 , wayland-protocols
35 , wayland-scanner
36 , wrapGAppsHook3
37 , xorgserver
38 , xwayland
39 , zenity
42 stdenv.mkDerivation rec {
43   pname = "muffin";
44   version = "6.2.0";
46   outputs = [ "out" "dev" "man" ];
48   src = fetchFromGitHub {
49     owner = "linuxmint";
50     repo = pname;
51     rev = version;
52     hash = "sha256-k8hUYA4/OzL2TB8s5DJpa2nFXV2U9eY09TLkqBDq9WE=";
53   };
55   patches = [
56     (substituteAll {
57       src = ./fix-paths.patch;
58       inherit zenity;
59     })
60   ];
62   nativeBuildInputs = [
63     desktop-file-utils
64     mesa # needed for gbm
65     meson
66     ninja
67     pkg-config
68     python3
69     wrapGAppsHook3
70     xorgserver # for cvt command
71     gobject-introspection
72     wayland-scanner
73   ];
75   buildInputs = [
76     cairo
77     cinnamon-desktop
78     dbus
79     egl-wayland
80     glib
81     gtk3
82     libcanberra
83     libdrm
84     libgnomekbd
85     libgudev
86     libinput
87     libstartup_notification
88     libwacom
89     libxcvt
90     libXdamage
91     libxkbcommon
92     pipewire
93     udev
94     wayland
95     wayland-protocols
96     xwayland
97   ];
99   propagatedBuildInputs = [
100     # required for pkg-config to detect muffin-clutter
101     json-glib
102     libXtst
103     graphene
104   ];
106   mesonFlags = [
107     # Based on Mint's debian/rules.
108     "-Degl_device=true"
109     "-Dwayland_eglstream=true"
110     "-Dxwayland_path=${lib.getExe xwayland}"
111   ];
113   postPatch = ''
114     patchShebangs src/backends/native/gen-default-modes.py
115   '';
117   meta = with lib; {
118     homepage = "https://github.com/linuxmint/muffin";
119     description = "Window management library for the Cinnamon desktop (libmuffin) and its sample WM binary (muffin)";
120     mainProgram = "muffin";
121     license = licenses.gpl2Plus;
122     platforms = platforms.linux;
123     maintainers = teams.cinnamon.members;
124   };