1{
2 lib,
3 stdenv,
4 fetchurl,
5 pkg-config,
6 gettext,
7 glib,
8 libxklavier,
9 libcanberra-gtk3,
10 libnotify,
11 libmatekbd,
12 libmatemixer,
13 nss,
14 polkit,
15 dconf,
16 gtk3,
17 mate-desktop,
18 pulseaudioSupport ? stdenv.config.pulseaudio or true,
19 libpulseaudio,
20 wrapGAppsHook3,
21 mateUpdateScript,
22 udevCheckHook,
23}:
24
25stdenv.mkDerivation rec {
26 pname = "mate-settings-daemon";
27 version = "1.28.0";
28
29 src = fetchurl {
30 url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
31 sha256 = "TtfNraqkyZ7//AKCuEEXA7t24HLEHEtXmJ+MW0BhGjo=";
32 };
33
34 nativeBuildInputs = [
35 gettext
36 pkg-config
37 wrapGAppsHook3
38 udevCheckHook
39 ];
40
41 buildInputs = [
42 libxklavier
43 libcanberra-gtk3
44 libnotify
45 libmatekbd
46 libmatemixer
47 nss
48 polkit
49 gtk3
50 dconf
51 mate-desktop
52 ]
53 ++ lib.optional pulseaudioSupport libpulseaudio;
54
55 configureFlags = lib.optional pulseaudioSupport "--enable-pulse";
56
57 env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
58
59 enableParallelBuilding = true;
60
61 doInstallCheck = true;
62
63 passthru.updateScript = mateUpdateScript { inherit pname; };
64
65 meta = with lib; {
66 description = "MATE settings daemon";
67 homepage = "https://github.com/mate-desktop/mate-settings-daemon";
68 license = with licenses; [
69 gpl2Plus
70 gpl3Plus
71 lgpl2Plus
72 mit
73 ];
74 platforms = platforms.unix;
75 teams = [ teams.mate ];
76 };
77}