1{
2 config,
3 lib,
4 stdenv,
5 fetchurl,
6 pkg-config,
7 gettext,
8 glib,
9 alsaSupport ? stdenv.hostPlatform.isLinux,
10 alsa-lib,
11 udev,
12 pulseaudioSupport ? config.pulseaudio or true,
13 libpulseaudio,
14 ossSupport ? false,
15 mateUpdateScript,
16}:
17
18stdenv.mkDerivation rec {
19 pname = "libmatemixer";
20 version = "1.28.0";
21
22 src = fetchurl {
23 url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
24 sha256 = "XXO5Ijl/YGiOPJUw61MrzkbDDiYtsbU1L6MsQNhwoMc=";
25 };
26
27 nativeBuildInputs = [
28 pkg-config
29 gettext
30 ];
31
32 buildInputs = [
33 glib
34 ]
35 ++ lib.optionals alsaSupport [
36 alsa-lib
37 udev
38 ]
39 ++ lib.optionals pulseaudioSupport [
40 libpulseaudio
41 ];
42
43 configureFlags = lib.optional ossSupport "--enable-oss";
44
45 enableParallelBuilding = true;
46
47 passthru.updateScript = mateUpdateScript { inherit pname; };
48
49 meta = with lib; {
50 description = "Mixer library for MATE";
51 homepage = "https://github.com/mate-desktop/libmatemixer";
52 license = licenses.lgpl2Plus;
53 platforms = platforms.linux;
54 teams = [ teams.mate ];
55 };
56}