summary refs log tree commit diff
path: root/pkgs/desktops/xfce
diff options
context:
space:
mode:
authorNikolay Amiantov <ab@fmap.me>2014-10-23 03:14:21 +0400
committerVladimír Čunát <vcunat@gmail.com>2014-11-08 21:48:51 +0100
commitaeaa96f7e48bcc88cab1e9b8c66ad764ec554959 (patch)
tree5c7886cdbf1e0f17a2f21374563cd5e8d9b2cd28 /pkgs/desktops/xfce
parentbc7b19111b97bb6e38491fee8222bc1af0aabff1 (diff)
downloadnixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.tar
nixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.tar.gz
nixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.tar.bz2
nixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.tar.lz
nixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.tar.xz
nixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.tar.zst
nixlib-aeaa96f7e48bcc88cab1e9b8c66ad764ec554959.zip
xfce4-volumed: add package (close #4628)
Diffstat (limited to 'pkgs/desktops/xfce')
-rw-r--r--pkgs/desktops/xfce/applications/xfce4-volumed-pulse.nix29
-rw-r--r--pkgs/desktops/xfce/applications/xfce4-volumed.nix46
-rw-r--r--pkgs/desktops/xfce/default.nix4
3 files changed, 79 insertions, 0 deletions
diff --git a/pkgs/desktops/xfce/applications/xfce4-volumed-pulse.nix b/pkgs/desktops/xfce/applications/xfce4-volumed-pulse.nix
new file mode 100644
index 000000000000..087ba0f2c815
--- /dev/null
+++ b/pkgs/desktops/xfce/applications/xfce4-volumed-pulse.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, pkgconfig, pulseaudio
+, gtk2, libnotify
+, keybinder, xfconf
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.2.0";
+  name = "xfce4-volumed-pulse-${version}";
+
+  src = fetchurl {
+    url = "https://launchpad.net/xfce4-volumed-pulse/trunk/${version}/+download/${name}.tar.bz2";
+    sha256 = "0l75gl96skm0zn10w70mwvsjd12p1zjshvn7yc3439dz61506c39";
+  };
+
+  buildInputs =
+    [ pulseaudio gtk2
+      keybinder xfconf libnotify
+    ];
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  meta = with stdenv.lib; {
+    homepage = https://launchpad.net/xfce4-volumed-pulse;
+    description = "A volume keys control daemon for the Xfce desktop environment (Xubuntu fork)";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.abbradar ];
+  };
+}
diff --git a/pkgs/desktops/xfce/applications/xfce4-volumed.nix b/pkgs/desktops/xfce/applications/xfce4-volumed.nix
new file mode 100644
index 000000000000..b603229e938d
--- /dev/null
+++ b/pkgs/desktops/xfce/applications/xfce4-volumed.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, pkgconfig, makeWrapper
+, gstreamer, gtk2, gst_plugins_base, libnotify
+, keybinder, xfconf
+}:
+
+let
+  # The usual Gstreamer plugins package has a zillion dependencies
+  # that we don't need for a simple mixer, so build a minimal package.
+  gst_plugins_minimal = gst_plugins_base.override {
+    minimalDeps = true;
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  p_name  = "xfce4-volumed";
+  ver_maj = "0.1";
+  ver_min = "13";
+
+  src = fetchurl {
+    url = "mirror://xfce/src/apps/${p_name}/${ver_maj}/${name}.tar.bz2";
+    sha256 = "1aa0a1sbf9yzi7bc78kw044m0xzg1li3y4w9kf20wqv5kfjs7v2c";
+  };
+  name = "${p_name}-${ver_maj}.${ver_min}";
+
+  buildInputs =
+    [ gstreamer gst_plugins_minimal gtk2
+      keybinder xfconf libnotify
+    ];
+
+  nativeBuildInputs = [ pkgconfig makeWrapper ];
+
+  postInstall =
+    ''
+      wrapProgram "$out/bin/xfce4-volumed" \
+        --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH"
+    '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.xfce.org/projects/xfce4-volumed; # referenced but inactive
+    description = "A volume keys control daemon for the Xfce desktop environment";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.abbradar ];
+  };
+}
diff --git a/pkgs/desktops/xfce/default.nix b/pkgs/desktops/xfce/default.nix
index 2d4ef5583480..3844633839ed 100644
--- a/pkgs/desktops/xfce/default.nix
+++ b/pkgs/desktops/xfce/default.nix
@@ -51,6 +51,10 @@ xfce_self = rec { # the lines are very long but it seems better than the even-od
   xfce4taskmanager= callPackage ./applications/xfce4-taskmanager.nix { };
   xfce4terminal   = callPackage ./applications/terminal.nix { };
   xfce4screenshooter   = callPackage ./applications/xfce4-screenshooter.nix { };
+  xfce4volumed    = let
+    gst = callPackage ./applications/xfce4-volumed.nix { };
+    pulse = callPackage ./applications/xfce4-volumed-pulse.nix { };
+  in if config.pulseaudio or false then pulse else gst;
 
   #### ART                  from "mirror://xfce/src/art/${p_name}/${ver_maj}/${name}.tar.bz2"