diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix index 3efbea97c5e9c..ae292993b86b9 100644 --- a/pkgs/development/libraries/pipewire/default.nix +++ b/pkgs/development/libraries/pipewire/default.nix @@ -1,40 +1,93 @@ -{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, doxygen, graphviz, valgrind -, glib, dbus, gst_all_1, alsaLib, ffmpeg, libjack2, udev, libva, xorg -, sbc, SDL2, makeFontsConf +{ stdenv +, fetchFromGitLab +, fetchpatch +, meson +, ninja +, pkgconfig +, doxygen +, graphviz +, valgrind +, glib +, dbus +, gst_all_1 +, alsaLib +, ffmpeg +, libjack2 +, udev +, libva +, xorg +, sbc +, SDL2 +, libsndfile +, bluez +, vulkan-headers +, vulkan-loader +, libpulseaudio +, makeFontsConf }: let fontsConf = makeFontsConf { - fontDirectories = [ ]; + fontDirectories = []; }; -in stdenv.mkDerivation rec { +in +stdenv.mkDerivation rec { pname = "pipewire"; - version = "0.2.7"; + version = "0.3.0"; - src = fetchFromGitHub { - owner = "PipeWire"; + outputs = [ "out" "lib" "dev" "doc" ]; + + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + owner = "pipewire"; repo = "pipewire"; rev = version; - sha256 = "1q5wrqnhhs6r49p8yvkw1pl0cnsd4rndxy4h5lvdydwgf1civcwc"; + sha256 = "0wrgvn0sc7h2k5zwgwzffyzv70jknnlj9qg8cqfzjib516zz37lj"; }; - outputs = [ "out" "lib" "dev" "doc" ]; + patches = [ + # https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/235 + (fetchpatch { + url = "https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/42993d1402042dfbd023b3afe099c39709618daf.patch"; + sha256 = "1yvlajfz9nbksrjv80cg4af7w04n9z4ajncl2jg0d0mfxzpmv8vc"; + }) + ]; nativeBuildInputs = [ - meson ninja pkgconfig doxygen graphviz valgrind + doxygen + graphviz + meson + ninja + pkgconfig + valgrind ]; + buildInputs = [ - glib dbus gst_all_1.gst-plugins-base gst_all_1.gstreamer - alsaLib ffmpeg libjack2 udev libva xorg.libX11 sbc SDL2 + SDL2 + alsaLib + bluez + dbus + ffmpeg + glib + gst_all_1.gst-plugins-base + gst_all_1.gstreamer + libjack2 + libpulseaudio + libsndfile + libva + sbc + udev + vulkan-headers + vulkan-loader + xorg.libX11 ]; mesonFlags = [ "-Ddocs=true" - "-Dgstreamer=enabled" + "-Dman=false" # we don't have xmltoman + "-Dgstreamer=true" ]; - PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR = "${placeholder "out"}/lib/systemd/user"; - FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file doCheck = true; @@ -42,7 +95,7 @@ in stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Server and user space API to deal with multimedia pipelines"; homepage = https://pipewire.org/; - license = licenses.lgpl21; + license = licenses.mit; platforms = platforms.linux; maintainers = with maintainers; [ jtojnar ]; };