Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 70 additions & 17 deletions pkgs/development/libraries/pipewire/default.nix
Original file line number Diff line number Diff line change
@@ -1,48 +1,101 @@
{ 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
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I opened this patch so we don't have to do

PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR = "${placeholder "out"}/lib/systemd/user";

(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;

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 ];
};
Expand Down