Update of skype expression: make the use of pulse audio optional based on the configuration setting for pulse audio (off by default).

Removing pulse audio from the build inputs when it is not used prevents the bug of Skype taking 100% cpu from showing up.
This demonstrates nicely nix' features: in other distributions the recomended solution was to remove read permission from the
pulse audio libs.

svn path=/nixpkgs/trunk/; revision=31959
This commit is contained in:
Arie Middelkoop 2012-02-01 22:09:35 +00:00
parent acda2c1967
commit cc145f2ae9
2 changed files with 13 additions and 4 deletions

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, alsaLib, libXv, libXi, libXrender, libXrandr, zlib, glib { stdenv, fetchurl, alsaLib, libXv, libXi, libXrender, libXrandr, zlib, glib
, libXext, libX11, libXScrnSaver, libSM, qt4, libICE, freetype, fontconfig , libXext, libX11, libXScrnSaver, libSM, qt4, libICE, freetype, fontconfig
, pulseaudio }: , pulseaudio, usePulseAudio, lib }:
assert stdenv.system == "i686-linux"; assert stdenv.system == "i686-linux";
@ -12,9 +12,9 @@ stdenv.mkDerivation rec {
sha256 = "157ba3ci12bq0nv2m8wlsab45ib5sccqagyna8nixnhqw9q72sxm"; sha256 = "157ba3ci12bq0nv2m8wlsab45ib5sccqagyna8nixnhqw9q72sxm";
}; };
buildInputs = [ buildInputs =
lib.optional usePulseAudio pulseaudio ++ [
alsaLib alsaLib
pulseaudio
stdenv.glibc stdenv.glibc
stdenv.gcc.gcc stdenv.gcc.gcc
libXv libXv

View File

@ -313,6 +313,11 @@ let
inherit stdenv; inherit stdenv;
}; };
makeAutostartItem = import ../build-support/make-startupitem {
inherit stdenv;
inherit lib;
};
makeInitrd = {contents}: import ../build-support/kernel/make-initrd.nix { makeInitrd = {contents}: import ../build-support/kernel/make-initrd.nix {
inherit stdenv perl cpio contents ubootChooser; inherit stdenv perl cpio contents ubootChooser;
}; };
@ -5256,6 +5261,8 @@ let
alsaUtils = callPackage ../os-specific/linux/alsa-utils { }; alsaUtils = callPackage ../os-specific/linux/alsa-utils { };
microcodeIntel = callPackage ../os-specific/linux/microcode/intel.nix { };
bcm43xx = callPackage ../os-specific/linux/firmware/bcm43xx { }; bcm43xx = callPackage ../os-specific/linux/firmware/bcm43xx { };
bluez = callPackage ../os-specific/linux/bluez { }; bluez = callPackage ../os-specific/linux/bluez { };
@ -7477,7 +7484,9 @@ let
siproxd = callPackage ../applications/networking/siproxd { }; siproxd = callPackage ../applications/networking/siproxd { };
skype_linux = callPackage_i686 ../applications/networking/skype { }; skype_linux = callPackage_i686 ../applications/networking/skype {
usePulseAudio = getConfig [ "pulseaudio" ] false; # disabled by default (the 100% cpu bug)
};
slim = callPackage ../applications/display-managers/slim { }; slim = callPackage ../applications/display-managers/slim { };