From b09c9858d20ae91e2599572a75c1cfb2956c4820 Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" Date: Wed, 25 Jan 2023 21:40:15 -0500 Subject: [PATCH 1/3] New package: pipewire-session-manager-bootstrap-2023.01.25 This dummy package will be the default provider for the the session manager pulled in by pipewire, breaking a build cycle. --- etc/defaults.virtual | 1 + srcpkgs/pipewire-session-manager-bootstrap/template | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 srcpkgs/pipewire-session-manager-bootstrap/template diff --git a/etc/defaults.virtual b/etc/defaults.virtual index 083ab6349eac..f399b1299840 100644 --- a/etc/defaults.virtual +++ b/etc/defaults.virtual @@ -28,6 +28,7 @@ nodejs-runtime nodejs ntp-daemon chrony phonon-backend phonon-backend-gstreamer phonon-qt5-backend phonon-qt5-backend-gstreamer +pipewire-session-manager pipewire-session-manager-bootstrap rkt-stage1 rkt-stage1-coreos smtp-server opensmtpd tex texlive diff --git a/srcpkgs/pipewire-session-manager-bootstrap/template b/srcpkgs/pipewire-session-manager-bootstrap/template new file mode 100644 index 000000000000..1164bafcffae --- /dev/null +++ b/srcpkgs/pipewire-session-manager-bootstrap/template @@ -0,0 +1,11 @@ +# Template file for 'pipewire-session-manager-bootstrap' +pkgname=pipewire-session-manager-bootstrap +version=2023.01.25 +revision=1 +build_style=meta +short_desc="Dummy pipewire-session-manager provider" +maintainer="Andrew J. Hesford " +license="Public Domain" +homepage="https://voidlinux.org" +provides="pipewire-session-manager-${version}_${revision}" +repository=bootstrap From f0e08f5afafd2a7a1998c0bf07ef63d0438d685c Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" Date: Fri, 9 Dec 2022 21:38:10 -0800 Subject: [PATCH 2/3] wireplumber: provide virtual pipewire-session-manager Also provide a desktop file for convenient autostart. Continues work started in #38521. --- srcpkgs/wireplumber/template | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/srcpkgs/wireplumber/template b/srcpkgs/wireplumber/template index fb9fa438c348..9e8f474b303e 100644 --- a/srcpkgs/wireplumber/template +++ b/srcpkgs/wireplumber/template @@ -1,7 +1,7 @@ # Template file for 'wireplumber' pkgname=wireplumber version=0.4.13 -revision=2 +revision=3 build_style=meson build_helper=gir configure_args="-Dintrospection=enabled -Dsystem-lua=true" @@ -15,6 +15,7 @@ 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 +provides="pipewire-session-manager-2023.01.25_1" post_install() { vlicense LICENSE From 29045a30baa74a8eab06b74487c8272f459e0ebf Mon Sep 17 00:00:00 2001 From: "Andrew J. Hesford" Date: Sun, 7 Aug 2022 12:26:05 -0700 Subject: [PATCH 3/3] pipewire: drop pipewire-media-session, depend on virtual session manager --- .../patches/autostart-media-session.patch | 17 ------------- srcpkgs/pipewire/template | 25 ++++++------------- 2 files changed, 7 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 0466b1a5987d..31bb078d13de 100644 --- a/srcpkgs/pipewire/template +++ b/srcpkgs/pipewire/template @@ -1,9 +1,7 @@ # Template file for 'pipewire' pkgname=pipewire version=0.3.65 -revision=1 -_pms_version=0.4.2 -build_wrksrc="${pkgname}-${version}" +revision=2 build_style=meson configure_args=" --auto-features=enabled @@ -15,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 glib-devel" makedepends="$(vopt_if sdl2 SDL2-devel) gst-plugins-base1-devel jack-devel @@ -27,20 +24,17 @@ makedepends="$(vopt_if sdl2 SDL2-devel) gst-plugins-base1-devel jack-devel readline-devel openssl-devel lilv-devel libcanberra-devel dbus-devel" depends="libspa-alsa>=${version}_${revision} libspa-audioconvert>=${version}_${revision} libspa-audiomixer>=${version}_${revision} libspa-control>=${version}_${revision} - libspa-v4l2>=${version}_${revision} pulseaudio-utils" + libspa-v4l2>=${version}_${revision} pulseaudio-utils virtual?pipewire-session-manager" checkdepends="pulseaudio-utils" short_desc="Server and user space API to deal with multimedia pipelines" 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="bb76f938136d0ce8c35bffa99e002dc2dbaeab5e14c6c34154e7f750013d1d6b - 4cf8577d4431e08b0e6f29c1ad6bf8662765ab66986ea6f0151883101811c119" +distfiles="https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/${version}/pipewire-${version}.tar.gz" +checksum=bb76f938136d0ce8c35bffa99e002dc2dbaeab5e14c6c34154e7f750013d1d6b make_dirs="/var/lib/pipewire 0755 _pipewire _pipewire" system_accounts="_pipewire" -patch_args="-Np1 --directory=${build_wrksrc}" build_options="sdl2" @@ -57,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() {