From 03c8e9fd0b612b2aa9f7e0e6a587e8e0bdf9540c 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 | 10 ++++++++++ 2 files changed, 11 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..9c5c00287667 --- /dev/null +++ b/srcpkgs/pipewire-session-manager-bootstrap/template @@ -0,0 +1,10 @@ +# 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}" From a9bad4c3a3d89c3d650dfe9972585d83d4cc5ce3 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/files/wireplumber.desktop | 8 ++++++++ srcpkgs/wireplumber/template | 4 +++- 2 files changed, 11 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..cf2231a000ce 100644 --- a/srcpkgs/wireplumber/template +++ b/srcpkgs/wireplumber/template @@ -1,7 +1,7 @@ # 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" @@ -15,10 +15,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 +provides="pipewire-session-manager-2023.01.25_1" post_install() { vlicense LICENSE vsv wireplumber + vinstall "${FILESDIR}/wireplumber.desktop" 644 usr/share/applications } wireplumber-devel_package() { From 78daff39c8355ee0ca3d68aad5600af8f8cdf1df 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: update to 0.3.64, depend on new virtual session manager --- .../patches/autostart-media-session.patch | 17 ------------ srcpkgs/pipewire/template | 26 +++++-------------- 2 files changed, 7 insertions(+), 36 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..164312dca72f 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 @@ -28,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="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() {