From ba3cf8bd445a1df59d067c5483f5794650d1d0d5 Mon Sep 17 00:00:00 2001 From: Cameron Nemo Date: Sun, 7 Aug 2022 12:26:05 -0700 Subject: [PATCH 1/3] pipewire: update to 0.3.64 Split pipewire-media-session. Wireplumber should be used by most users instead. pipewire-media-session will be re-added as a standalone package. --- .../patches/autostart-media-session.patch | 17 ------------- srcpkgs/pipewire/template | 24 +++++-------------- 2 files changed, 6 insertions(+), 35 deletions(-) delete mode 100644 srcpkgs/pipewire/patches/autostart-media-session.patch diff --git a/srcpkgs/pipewire/patches/autostart-media-session.patch b/srcpkgs/pipewire/patches/autostart-media-session.patch deleted file mode 100644 index c5753a3719c2..000000000000 --- a/srcpkgs/pipewire/patches/autostart-media-session.patch +++ /dev/null @@ -1,17 +0,0 @@ -Upstream's config does not autostart pipewire-media-session anymore, which -is an essential component. It's not easy to start it externally in a script -since it needs the pipewire socket up, and Void doesn't have a mechanism to -ensure it (systemd socket activation). -diff --git a/src/daemon/pipewire.conf.in.orig b/src/daemon/pipewire.conf.in -index 95632c2..ab0b097 100644 ---- a/src/daemon/pipewire.conf.in.orig -+++ b/src/daemon/pipewire.conf.in -@@ -236,7 +236,7 @@ - # but it is better to start it as a systemd service. - # Run the session manager with -h for options. - # -- @sm_comment@{ path = "@session_manager_path@" args = "@session_manager_args@" } -+ { path = "@session_manager_path@" args = "@session_manager_args@" } - # - # You can optionally start the pulseaudio-server here as well - # but it is better to start it as a systemd service. diff --git a/srcpkgs/pipewire/template b/srcpkgs/pipewire/template index 5aa0d03d04b2..2a29ec7e3b1d 100644 --- a/srcpkgs/pipewire/template +++ b/srcpkgs/pipewire/template @@ -1,10 +1,7 @@ # Template file for 'pipewire' pkgname=pipewire -version=0.3.63 +version=0.3.64 revision=1 -_pms_version=0.4.1 -create_wrksrc=yes -build_wrksrc="${pkgname}-${version}" build_style=meson configure_args=" --auto-features=enabled @@ -16,9 +13,8 @@ configure_args=" -Dsystemd=disabled -Dudevrulesdir=/usr/lib/udev/rules.d -Dvulkan=enabled - -Dmedia-session:systemd=disabled -Dbluez5-codec-lc3plus=disabled - -Dsession-managers=media-session + -Dsession-managers=[] " hostmakedepends="doxygen graphviz pkg-config python3-docutils gettext" makedepends="$(vopt_if sdl2 SDL2-devel) gst-plugins-base1-devel jack-devel @@ -35,13 +31,10 @@ maintainer="Stefano Ragni " license="MIT" homepage="https://pipewire.org/" changelog="https://gitlab.freedesktop.org/pipewire/pipewire/-/raw/master/NEWS" -distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz - https://gitlab.freedesktop.org/pipewire/media-session/-/archive/${_pms_version}/media-session-${_pms_version}.tar.gz" -checksum="1c10cc15ae8889ff0ff1653c088561ba6d46e3b1e5d4e5aacc9b01e6c1bb64b1 - 119c9216070b54018217552c7924f9888da270c3c4647c5e2b85ffa6b1574975" +distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz" +checksum=a1ab25d4ff85aefa3da3452cb41e972487b1a2da613ccd207a5d312e5c241d7c make_dirs="/var/lib/pipewire 0755 _pipewire _pipewire" system_accounts="_pipewire" -patch_args="-Np1 --directory=${build_wrksrc}" build_options="sdl2" @@ -58,18 +51,13 @@ else configure_args+=" -Dbluez5-codec-ldac=disabled" fi -post_extract() { - mv media-session-${_pms_version} ${build_wrksrc}/subprojects/media-session -} - post_install() { vlicense LICENSE vdoc "${FILESDIR}/README.voidlinux" vsv pipewire vsv pipewire-pulse - vmkdir usr/share/applications - cp "${FILESDIR}/pipewire.desktop" ${DESTDIR}/usr/share/applications/pipewire.desktop - cp "${FILESDIR}/pipewire-pulse.desktop" ${DESTDIR}/usr/share/applications/pipewire-pulse.desktop + vinstall "${FILESDIR}/pipewire.desktop" 644 usr/share/applications + vinstall "${FILESDIR}/pipewire-pulse.desktop" 644 usr/share/applications } libpipewire_package() { From b10df856861e69f16bba21ea6f9aca29b0c60b56 Mon Sep 17 00:00:00 2001 From: Cameron Nemo Date: Fri, 9 Dec 2022 21:24:37 -0800 Subject: [PATCH 2/3] New package: pipewire-media-session-0.4.1 --- .../files/pipewire-media-session.desktop | 8 ++++ .../patches/deprecated.patch | 45 +++++++++++++++++++ srcpkgs/pipewire-media-session/template | 29 ++++++++++++ 3 files changed, 82 insertions(+) create mode 100644 srcpkgs/pipewire-media-session/files/pipewire-media-session.desktop create mode 100644 srcpkgs/pipewire-media-session/patches/deprecated.patch create mode 100644 srcpkgs/pipewire-media-session/template diff --git a/srcpkgs/pipewire-media-session/files/pipewire-media-session.desktop b/srcpkgs/pipewire-media-session/files/pipewire-media-session.desktop new file mode 100644 index 000000000000..f420d8ee3db1 --- /dev/null +++ b/srcpkgs/pipewire-media-session/files/pipewire-media-session.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=PipeWire Media Session +Comment=Start the example PipeWire Media Session +Icon=pipewire +Exec=pipewire-media-session +Terminal=false +Type=Application +NoDisplay=true diff --git a/srcpkgs/pipewire-media-session/patches/deprecated.patch b/srcpkgs/pipewire-media-session/patches/deprecated.patch new file mode 100644 index 000000000000..61b83b0d56d3 --- /dev/null +++ b/srcpkgs/pipewire-media-session/patches/deprecated.patch @@ -0,0 +1,45 @@ +commit d9d1fffa224d222a4adee088dd94055c9c6a6cec +Author: Wim Taymans +Date: Tue Jan 10 21:34:15 2023 +0100 + + enable deprecated properties + +diff --git a/src/policy-ep.c b/src/policy-ep.c +index 01e442b5e..2a4f9bfc1 100644 +--- a/src/policy-ep.c ++++ b/src/policy-ep.c +@@ -28,6 +28,8 @@ + #include + #include + ++#define PW_ENABLE_DEPRECATED ++ + #include "config.h" + + #include +diff --git a/src/policy-node.c b/src/policy-node.c +index eeb74a15c..25002e8dc 100644 +--- a/src/policy-node.c ++++ b/src/policy-node.c +@@ -28,6 +28,8 @@ + #include + #include + ++#define PW_ENABLE_DEPRECATED ++ + #include "config.h" + + #include +diff --git a/src/stream-endpoint.c b/src/stream-endpoint.c +index 7d480aa6d..c60d06ee9 100644 +--- a/src/stream-endpoint.c ++++ b/src/stream-endpoint.c +@@ -28,6 +28,8 @@ + #include + #include + ++#define PW_ENABLE_DEPRECATED ++ + #include "config.h" + + #include diff --git a/srcpkgs/pipewire-media-session/template b/srcpkgs/pipewire-media-session/template new file mode 100644 index 000000000000..150b40dea6e9 --- /dev/null +++ b/srcpkgs/pipewire-media-session/template @@ -0,0 +1,29 @@ +# Template file for 'pipewire-media-session' +pkgname=pipewire-media-session +version=0.4.1 +revision=1 +build_style=meson +configure_args=" + --auto-features=enabled + -Db_ndebug=false + -Ddocs=enabled + -Dsystemd=disabled +" +hostmakedepends="doxygen pkg-config gettext" +makedepends="dbus-devel pipewire-devel alsa-lib-devel jack-devel + pulseaudio-devel" +depends="pipewire>=0.3.61_2" +checkdepends="pipewire" +short_desc="Example session manager for PipeWire" +maintainer="Stefano Ragni " +license="MIT" +homepage="https://pipewire.org/" +changelog="https://gitlab.freedesktop.org/pipewire/media-session/-/raw/master/NEWS" +distfiles="https://gitlab.freedesktop.org/pipewire/media-session/-/archive/${version}/media-session-${version}.tar.gz" +checksum="119c9216070b54018217552c7924f9888da270c3c4647c5e2b85ffa6b1574975" +conflicts="wireplumber" + +post_install() { + vlicense LICENSE + vinstall "${FILESDIR}/pipewire-media-session.desktop" 644 usr/share/applications +} From 7e5d0fdaf88277a2ed6f12795aabcb9dc4cc5caa Mon Sep 17 00:00:00 2001 From: Cameron Nemo Date: Fri, 9 Dec 2022 21:38:10 -0800 Subject: [PATCH 3/3] wireplumber: depend pipewire, conflict p-m-s Add a dependency on pipewire Add a conflict with pipewire-media-session Add a Desktop Application file --- srcpkgs/wireplumber/files/wireplumber.desktop | 8 ++++++++ srcpkgs/wireplumber/template | 5 ++++- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/wireplumber/files/wireplumber.desktop diff --git a/srcpkgs/wireplumber/files/wireplumber.desktop b/srcpkgs/wireplumber/files/wireplumber.desktop new file mode 100644 index 000000000000..38a3b2101844 --- /dev/null +++ b/srcpkgs/wireplumber/files/wireplumber.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=WirePlumber +Comment=Start WirePlumber +Icon=pipewire +Exec=wireplumber +Terminal=false +Type=Application +NoDisplay=true diff --git a/srcpkgs/wireplumber/template b/srcpkgs/wireplumber/template index 7f901a6ab2a0..45ceda33da0f 100644 --- a/srcpkgs/wireplumber/template +++ b/srcpkgs/wireplumber/template @@ -1,12 +1,13 @@ # Template file for 'wireplumber' pkgname=wireplumber version=0.4.13 -revision=1 +revision=2 build_style=meson build_helper=gir configure_args="-Dintrospection=enabled -Dsystem-lua=true" hostmakedepends="pkg-config glib-devel python3-lxml doxygen gettext" makedepends="libglib-devel pipewire-devel lua54-devel" +depends="pipewire" checkdepends="pipewire dbus" short_desc="Session and policy manager implementation for PipeWire" maintainer="Érico Nogueira " @@ -15,10 +16,12 @@ homepage="https://pipewire.pages.freedesktop.org/wireplumber" changelog="https://gitlab.freedesktop.org/pipewire/wireplumber/-/raw/master/NEWS.rst" distfiles="https://gitlab.freedesktop.org/pipewire/wireplumber/-/archive/$version/wireplumber-$version.tar.gz" checksum=2c3cd85a743249d418a64b137adaea475e9d36a3bb31e4230da83458c4d99e48 +conflicts="pipewire-media-session" post_install() { vlicense LICENSE vsv wireplumber + vinstall "${FILESDIR}/wireplumber.desktop" 644 usr/share/applications } wireplumber-devel_package() {