summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2010-10-10 22:34:48 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2010-10-10 22:34:48 +0000
commit0fcf6e1f404ebb7fae1d3c659334e12a78d89273 (patch)
treee4e0417588c759f6c1f5a43ada94fb717871d1b5 /pkgs
parent71b6bc2be54d5836bf131df1c7fcfddf0c25b187 (diff)
downloadnixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.tar
nixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.tar.gz
nixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.tar.bz2
nixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.tar.lz
nixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.tar.xz
nixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.tar.zst
nixlib-0fcf6e1f404ebb7fae1d3c659334e12a78d89273.zip
* Added xfce4-mixer. This requires gstreamer and gst-plugins-base.
* Allow gst-plugins-base to be built with a minimal set of dependencies
  (to prevent dependency bloat in Xfce).
* Updated gstreamer.

svn path=/nixpkgs/trunk/; revision=24207
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/desktops/xfce-4/applications/xfce4-mixer.nix38
-rw-r--r--pkgs/desktops/xfce-4/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/default.nix31
-rw-r--r--pkgs/development/libraries/gstreamer/gnonlin/default.nix2
-rw-r--r--pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix28
-rw-r--r--pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix8
-rw-r--r--pkgs/development/libraries/gstreamer/gstreamer/default.nix17
-rw-r--r--pkgs/top-level/all-packages.nix17
-rw-r--r--pkgs/top-level/release.nix1
10 files changed, 88 insertions, 60 deletions
diff --git a/pkgs/desktops/xfce-4/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4/applications/xfce4-mixer.nix
new file mode 100644
index 000000000000..db28274be072
--- /dev/null
+++ b/pkgs/desktops/xfce-4/applications/xfce4-mixer.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, pkgconfig, intltool, glib, gst_all, gtk
+, libxfce4util, libxfcegui4, xfce4panel, xfconf, makeWrapper }:
+
+let
+
+  # The usual Gstreamer plugins package has a zillion dependencies
+  # that we don't need for a simple mixer, so build a minimal package.
+  gstPluginsBase = gst_all.gstPluginsBase.override {
+    minimalDeps = true;
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  name = "xfce4-mixer-4.6.1";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/apps/xfce4-mixer/4.6/${name}.tar.bz2";
+    sha1 = "e86163782fc4fc31671c7cb212d23d34106ad3af";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool glib gst_all.gstreamer gstPluginsBase gtk
+      libxfce4util libxfcegui4 xfce4panel xfconf makeWrapper
+    ];
+
+  postInstall =
+    ''
+      mkdir -p $out/nix-support
+      echo ${gstPluginsBase} > $out/nix-support/propagated-user-env-packages
+    '';
+
+  meta = {
+    homepage = http://www.xfce.org/projects/xfce4-mixer;
+    description = "A volume control application for the Xfce desktop environment";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4/default.nix b/pkgs/desktops/xfce-4/default.nix
index 3d4abf9b3582..6f2eaf1b4bfe 100644
--- a/pkgs/desktops/xfce-4/default.nix
+++ b/pkgs/desktops/xfce-4/default.nix
@@ -57,6 +57,8 @@ rec {
 
   xfce4_power_manager = callPackage ./applications/xfce4-power-manager.nix { };
 
+  xfce4mixer = callPackage ./applications/xfce4-mixer.nix { };
+
   #### ART
 
   xfce4icontheme = callPackage ./art/xfce4-icon-theme.nix { };
diff --git a/pkgs/development/libraries/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/default.nix
index 3bb8ea84a2af..37c88580a8ac 100644
--- a/pkgs/development/libraries/gstreamer/default.nix
+++ b/pkgs/development/libraries/gstreamer/default.nix
@@ -1,32 +1,17 @@
-args: with args;
+{ callPackage, pkgs }:
+
 rec {
-  gstreamer = makeOverridable (import ./gstreamer) {
-    inherit (args) fetchurl stdenv perl bison flex
-       pkgconfig python which gtkdoc glib libxml2;
+  gstreamer = callPackage ./gstreamer {
+    flex = pkgs.flex2535;
   };
 
-  gstPluginsBase = makeOverridable (import ./gst-plugins-base) {
-    inherit gstreamer;
-    inherit (args) fetchurl stdenv pkgconfig python
-      libX11 libXv libXext alsaLib cdparanoia libogg libtheora
-      libvorbis freetype pango liboil gtk which gtkdoc;
-  };
+  gstPluginsBase = callPackage ./gst-plugins-base { };
 
-  gstPluginsGood = makeOverridable (import ./gst-plugins-good) {
-    inherit gstPluginsBase;
-    inherit (args) fetchurl stdenv pkgconfig aalib cairo flac hal
-      libjpeg zlib speex libpng libdv libcaca dbus libiec61883
-      libavc1394 ladspaH taglib gdbm pulseaudio libsoup libcap 
-      libtasn1;
-  };
+  gstPluginsGood = callPackage ./gst-plugins-good { };
 
-  gstFfmpeg = makeOverridable (import ./gst-ffmpeg) {
-    inherit fetchurl stdenv pkgconfig gstPluginsBase bzip2;
-  };
+  gstFfmpeg = callPackage ./gst-ffmpeg { };
 
-  gnonlin = makeOverridable (import ./gnonlin) {
-    inherit fetchurl stdenv pkgconfig gstreamer gstPluginsBase;
-  };
+  gnonlin = callPackage ./gnonlin { };
 
   # Header files are in include/${prefix}/
   prefix = "gstreamer-0.10";
diff --git a/pkgs/development/libraries/gstreamer/gnonlin/default.nix b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
index 35f7f3b09860..907f569faed5 100644
--- a/pkgs/development/libraries/gstreamer/gnonlin/default.nix
+++ b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
@@ -1,4 +1,4 @@
-args: with args;
+{ stdenv, fetchurl, pkgconfig, gstPluginsBase, gstreamer }:
 
 stdenv.mkDerivation rec {
   name = "gnonlin-0.10.14";
diff --git a/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix b/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix
index c45af907aaba..e8ea3f2152c7 100644
--- a/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-ffmpeg/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, pkgconfig, gstPluginsBase, bzip2 }:
+{ fetchurl, stdenv, pkgconfig, gstPluginsBase, bzip2, liboil }:
 
 stdenv.mkDerivation rec {
   name = "gst-ffmpeg-0.10.9";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ gstPluginsBase ];
   
-  buildInputs = [ pkgconfig bzip2 ];
+  buildInputs = [ pkgconfig bzip2 liboil ];
 
   configureFlags = "--enable-ladspa";
 
diff --git a/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix b/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix
index 37d0a058ffff..dc8d84886c0d 100644
--- a/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-plugins-base/default.nix
@@ -1,27 +1,37 @@
 { fetchurl, stdenv, pkgconfig, python, gstreamer
-, libX11, libXv, libXext, alsaLib, cdparanoia , libogg
+, xlibs, alsaLib, cdparanoia, libogg
 , libtheora, libvorbis, freetype, pango
-, liboil, gtk, which, gtkdoc }:
+, liboil, glib
+, # Whether to build no plugins that have external dependencies
+  # (except the ALSA plugin).
+  minimalDeps ? false
+}:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-base-0.10.26";
+  name = "gst-plugins-base-0.10.30";
 
   src = fetchurl {
     urls = [
       "${meta.homepage}/src/gst-plugins-base/${name}.tar.bz2"
       "mirror://gentoo/distfiles/${name}.tar.bz2"
       ];
-    sha256 = "0znxs3ls0hgc7vmllna3bazw217q1h9lmn5vhnclfadbb3flhvg0";
+    sha256 = "1mw5n1w7l0hgyzf75srdxlh3knfgrmddbs2ah1f97s8b710qd4v3";
   };
 
   patchPhase = "sed -i 's@/bin/echo@echo@g' configure";
 
-# TODO : v4l, libvisual
-  propagatedBuildInputs = [gstreamer libX11 libXv libXext alsaLib cdparanoia
-    libogg libtheora libvorbis freetype pango liboil gtk which gtkdoc];
-
-  buildInputs = [pkgconfig python];
+  # TODO : v4l, libvisual
+  buildInputs =
+    [ pkgconfig glib alsaLib ]
+    ++ stdenv.lib.optionals (!minimalDeps)
+      [ xlibs.xlibs xlibs.libXv cdparanoia libogg libtheora libvorbis
+        freetype pango liboil
+      ];
 
+  propagatedBuildInputs = [ gstreamer ];
+ 
+  postInstall = "rm -rf $out/share/gtk-doc";
+  
   meta = {
     homepage = http://gstreamer.freedesktop.org;
 
diff --git a/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix b/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix
index 2998c89a51ea..c90fbebee272 100644
--- a/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix
+++ b/pkgs/development/libraries/gstreamer/gst-plugins-good/default.nix
@@ -1,23 +1,23 @@
 { fetchurl, stdenv, pkgconfig, gstPluginsBase, aalib, cairo
 , flac , hal, libjpeg, zlib, speex, libpng, libdv, libcaca, dbus
 , libiec61883, libavc1394, ladspaH, taglib, gdbm, pulseaudio
-, libsoup, libcap, libtasn1
+, gnome, libcap, libtasn1, liboil
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-good-0.10.18";
+  name = "gst-plugins-good-0.10.20";
 
   src = fetchurl {
     urls = [
       "${meta.homepage}/src/gst-plugins-good/${name}.tar.bz2"
       "mirror://gentoo/distfiles/${name}.tar.bz2"
       ];
-    sha256 = "1fabn9h4z1p4h35nrw9fyjhcnl1z6cnikmpcb9q6fd312mr8hfqj";
+    sha256 = "11x3irvfm9v96rkyh0ajdqd94y4xhshd98lb2zapf7wykq7pyjrw";
   };
 
   propagatedBuildInputs = [gstPluginsBase aalib cairo flac hal libjpeg
     zlib speex libpng libdv libcaca dbus.libs libiec61883 libavc1394 ladspaH
-    taglib gdbm pulseaudio libsoup libcap libtasn1];
+    taglib gdbm pulseaudio gnome.libsoup libcap libtasn1 liboil];
   buildInputs = [pkgconfig];
 
   configureFlags = "--enable-ladspa";
diff --git a/pkgs/development/libraries/gstreamer/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/gstreamer/default.nix
index 91a699f564fa..0b43fa7d2c8d 100644
--- a/pkgs/development/libraries/gstreamer/gstreamer/default.nix
+++ b/pkgs/development/libraries/gstreamer/gstreamer/default.nix
@@ -1,25 +1,26 @@
-{ fetchurl, stdenv, perl, bison, flex, pkgconfig, python
-, which, gtkdoc, glib, libxml2 }:
+{ fetchurl, stdenv, perl, bison, flex, pkgconfig, glib, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "gstreamer-0.10.26";
-  # TODO: Remove gtkdoc dependency on next upgrade
+  name = "gstreamer-0.10.30";
 
   src = fetchurl {
     urls = [
       "${meta.homepage}/src/gstreamer/${name}.tar.bz2"
       "mirror://gentoo/distfiles/${name}.tar.bz2"
       ];
-    sha256 = "1gah0ggfavl5z2wmwmwgs3h3ppwk6q1a6k0klk7zj1ph5n2isbc6";
+    sha256 = "0ajkfkchwpk5zlcis19laqbv84mi61cn3cqbdbrpyy93whdk1vz8";
   };
 
-  buildInputs = [perl bison flex pkgconfig python which  gtkdoc ];
-  propagatedBuildInputs = [glib libxml2];
+  buildInputs = [ perl bison flex pkgconfig ];
+  propagatedBuildInputs = [ glib libxml2 ];
 
   configureFlags = ''
-    --enable-failing-tests --localstatedir=/var --disable-gtk-doc --disable-docbook
+    --disable-examples --enable-failing-tests --localstatedir=/var --disable-gtk-doc --disable-docbook
   '';
 
+  # Hm, apparently --disable-gtk-doc is ignored...
+  postInstall = "rm -rf $out/share/gtk-doc";
+
   meta = {
     homepage = http://gstreamer.freedesktop.org;
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 64eb6a115628..10cf515f97eb 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2942,19 +2942,9 @@ let
   #GMP ex-satellite, so better keep it near gmp
   mpfr = callPackage ../development/libraries/mpfr { };
 
-  gst_all = recurseIntoAttrs (import ../development/libraries/gstreamer {
-    inherit lib stdenv fetchurl perl bison pkgconfig libxml2
-      python alsaLib cdparanoia libogg libvorbis libtheora freetype liboil
-      libjpeg zlib speex libpng libdv aalib cairo libcaca flac hal libiec61883
-      dbus libavc1394 ladspaH taglib pulseaudio gdbm bzip2 which makeOverridable
-      libcap libtasn1;
-    flex = flex2535;
-    inherit (xorg) libX11 libXv libXext;
-    inherit (gtkLibs) glib pango gtk;
-    inherit (gnome) gnomevfs /* <- only passed for the no longer used older versions
-             it is deprecated and didn't build on amd64 due to samba dependency */ gtkdoc
-      libsoup;
-  });
+  gst_all = recurseIntoAttrs
+    (let callPackage = newScope pkgs.gst_all; in
+     import ../development/libraries/gstreamer { inherit callPackage pkgs; });
 
   gnet = callPackage ../development/libraries/gnet { };
 
@@ -2982,6 +2972,7 @@ let
 
   glib = gtkLibs.glib;
   gtk = gtkLibs.gtk;
+  pango = gtkLibs.pango;
 
   gtkLibs1x = recurseIntoAttrs (let callPackage = newScope pkgs.gtkLibs1x; in rec {
 
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 6b3fb2d808a6..09b3cd11522d 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -539,6 +539,7 @@ with (import ./release-lib.nix);
     thunar = linux;
     xfce4_power_manager = linux;
     xfce4icontheme = linux;
+    xfce4mixer = linux;
     xfce4panel = linux;
     xfce4session = linux;
     xfce4settings = linux;