mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-11-16 06:47:09 +03:00
pipewire: split pulse and jack emulation out
This splits PulseAudio and JACK emulation into separate outputs. Doing so provides a number of benefits. First it fixes pw-pulse and pw-jack. Prior to this they pointed to bogus locations because the environment variables were not evaluated. Technically fixing this only requires setting libpulse-path and libjack-path to any absolute path not necessarily separate outputs but it comes as a nice result. Secondly it allows overriding libpulseaudio with pipewire.pulse in many packages. This is possible because the new outputs have a more standard layout.
This commit is contained in:
parent
f01be2978b
commit
3377257d0b
@ -11,11 +11,11 @@ let
|
||||
|
||||
jack-libs = pkgs.runCommand "jack-libs" {} ''
|
||||
mkdir -p "$out/lib"
|
||||
ln -s "${pkgs.pipewire.lib}"/lib/pipewire-*/jack "$out/lib/pipewire"
|
||||
ln -s "${pkgs.pipewire.jack}/lib" "$out/lib/pipewire"
|
||||
'';
|
||||
pulse-libs = pkgs.runCommand "pulse-libs" {} ''
|
||||
mkdir -p "$out/lib"
|
||||
ln -s "${pkgs.pipewire.lib}"/lib/pipewire-*/pulse "$out/lib/pipewire"
|
||||
ln -s "${pkgs.pipewire.pulse}/lib" "$out/lib/pipewire"
|
||||
'';
|
||||
in {
|
||||
|
||||
|
@ -39,7 +39,15 @@ stdenv.mkDerivation rec {
|
||||
pname = "pipewire";
|
||||
version = "0.3.9";
|
||||
|
||||
outputs = [ "out" "lib" "dev" "doc" "installedTests" ];
|
||||
outputs = [
|
||||
"out"
|
||||
"lib"
|
||||
"pulse"
|
||||
"jack"
|
||||
"dev"
|
||||
"doc"
|
||||
"installedTests"
|
||||
];
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
@ -95,6 +103,8 @@ stdenv.mkDerivation rec {
|
||||
"-Dgstreamer=true"
|
||||
"-Dudevrulesdir=lib/udev/rules.d"
|
||||
"-Dinstalled_tests=true"
|
||||
"-Dlibpulse-path=${placeholder "pulse"}/lib"
|
||||
"-Dlibjack-path=${placeholder "jack"}/lib"
|
||||
] ++ stdenv.lib.optional nativeHspSupport "-Dbluez5-backend-native=true"
|
||||
++ stdenv.lib.optional ofonoSupport "-Dbluez5-backend-ofono=true";
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user