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" {} ''
|
jack-libs = pkgs.runCommand "jack-libs" {} ''
|
||||||
mkdir -p "$out/lib"
|
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" {} ''
|
pulse-libs = pkgs.runCommand "pulse-libs" {} ''
|
||||||
mkdir -p "$out/lib"
|
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 {
|
in {
|
||||||
|
|
||||||
|
@ -39,7 +39,15 @@ stdenv.mkDerivation rec {
|
|||||||
pname = "pipewire";
|
pname = "pipewire";
|
||||||
version = "0.3.9";
|
version = "0.3.9";
|
||||||
|
|
||||||
outputs = [ "out" "lib" "dev" "doc" "installedTests" ];
|
outputs = [
|
||||||
|
"out"
|
||||||
|
"lib"
|
||||||
|
"pulse"
|
||||||
|
"jack"
|
||||||
|
"dev"
|
||||||
|
"doc"
|
||||||
|
"installedTests"
|
||||||
|
];
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.freedesktop.org";
|
domain = "gitlab.freedesktop.org";
|
||||||
@ -95,6 +103,8 @@ stdenv.mkDerivation rec {
|
|||||||
"-Dgstreamer=true"
|
"-Dgstreamer=true"
|
||||||
"-Dudevrulesdir=lib/udev/rules.d"
|
"-Dudevrulesdir=lib/udev/rules.d"
|
||||||
"-Dinstalled_tests=true"
|
"-Dinstalled_tests=true"
|
||||||
|
"-Dlibpulse-path=${placeholder "pulse"}/lib"
|
||||||
|
"-Dlibjack-path=${placeholder "jack"}/lib"
|
||||||
] ++ stdenv.lib.optional nativeHspSupport "-Dbluez5-backend-native=true"
|
] ++ stdenv.lib.optional nativeHspSupport "-Dbluez5-backend-native=true"
|
||||||
++ stdenv.lib.optional ofonoSupport "-Dbluez5-backend-ofono=true";
|
++ stdenv.lib.optional ofonoSupport "-Dbluez5-backend-ofono=true";
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user