From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 2C99C158089 for ; Tue, 12 Sep 2023 00:43:38 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 659E82BC02D; Tue, 12 Sep 2023 00:43:37 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 47CB02BC02D for ; Tue, 12 Sep 2023 00:43:37 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 56068335C34 for ; Tue, 12 Sep 2023 00:43:36 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 817F5117C for ; Tue, 12 Sep 2023 00:43:33 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1694479382.8b6eb8028f4a0ff0457b47ea418dbce617d05d9f.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/pipewire/, media-video/pipewire/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: media-video/pipewire/files/gentoo-pipewire-launcher.in-r3 media-video/pipewire/pipewire-0.3.79-r3.ebuild media-video/pipewire/pipewire-9999.ebuild X-VCS-Directories: media-video/pipewire/ media-video/pipewire/files/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 8b6eb8028f4a0ff0457b47ea418dbce617d05d9f X-VCS-Branch: master Date: Tue, 12 Sep 2023 00:43:33 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 77a26386-54b9-43cc-8fa6-a4cfb7d22f41 X-Archives-Hash: d38e99045bd8dd02978f2adc0e85bb35 commit: 8b6eb8028f4a0ff0457b47ea418dbce617d05d9f Author: Sam James gentoo org> AuthorDate: Tue Sep 12 00:43:02 2023 +0000 Commit: Sam James gentoo org> CommitDate: Tue Sep 12 00:43:02 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8b6eb802 media-video/pipewire: handle procps-4 rename of pwait->pidwait Closes: https://bugs.gentoo.org/914030 Signed-off-by: Sam James gentoo.org> .../pipewire/files/gentoo-pipewire-launcher.in-r3 | 84 ++++++++++++++++++++++ ...ewire-9999.ebuild => pipewire-0.3.79-r3.ebuild} | 2 +- media-video/pipewire/pipewire-9999.ebuild | 2 +- 3 files changed, 86 insertions(+), 2 deletions(-) diff --git a/media-video/pipewire/files/gentoo-pipewire-launcher.in-r3 b/media-video/pipewire/files/gentoo-pipewire-launcher.in-r3 new file mode 100644 index 000000000000..abe9174c4253 --- /dev/null +++ b/media-video/pipewire/files/gentoo-pipewire-launcher.in-r3 @@ -0,0 +1,84 @@ +#!/bin/sh + +# PipeWire launcher script for XDG compliant desktops on OpenRC. +# +# systemd users are very _STRONGLY_ advised to use the much +# more reliable and predictable user units instead. + +# WARNING: This script assumes being run inside XDG compliant session, +# which means D-Bus session instance is expected to be correctly set up +# prior to this script starting. If that is not true, things may break! + +DATE_FORMAT='+%Y-%m-%dT%H:%M:%S%Z' + +CONF="${XDG_CONFIG_HOME:-${HOME}/.config}/gentoo-pipewire-launcher.conf" +if [ -f "${CONF}" ] +then + . "${CONF}" +else + GENTOO_PIPEWIRE_LOG='/dev/null' + GENTOO_PIPEWIRE_PULSE_LOG='/dev/null' + GENTOO_WIREPLUMBER_LOG='/dev/null' +fi +for L in \ + "${GENTOO_PIPEWIRE_LOG}" \ + "${GENTOO_PIPEWIRE_PULSE_LOG}" \ + "${GENTOO_WIREPLUMBER_LOG}" +do + if [ ! -e "${L}" ] + then + touch "${L}" + fi +done + +restart () { + echo "Terminating PipeWire processes ..." + pkill -u "${USER}" -x pipewire\|wireplumber 1>/dev/null 2>&1 + + # pidwait was renamed to pwait w/ procps-4 (bug #914030) + if command -v pidwait > /dev/null ; then + pidwait -u "${USER}" -x pipewire\|wireplumber + elif command -v pwait > /dev/null ; then + pwait -u "${USER}" -x pipewire\|wireplumber + fi + + echo "PipeWire terminated." +} + +if [ "${#}" -gt 0 ] +then + if [ "${1}" = 'restart' ] + then + restart + else + echo "Unrecognised argument." >&2 + echo "Usage: gentoo-pipewire-launcher [restart]" >&2 + exit 1 + fi +fi + +if pgrep -u "${USER}" -x pipewire\|wireplumber 1>/dev/null 2>&1 +then + echo "PipeWire already running, exiting." >&2 + echo "(Use 'gentoo-pipewire-launcher restart' to restart PipeWire and WirePlumber.)" >&2 + exit 1 +fi + +# The core daemon which by itself does probably nothing. +echo "[$(@GENTOO_PORTAGE_EPREFIX@/bin/date ${DATE_FORMAT})] Starting PipeWire." 1>>"${GENTOO_PIPEWIRE_LOG}" +@GENTOO_PORTAGE_EPREFIX@/usr/bin/pipewire 1>>"${GENTOO_PIPEWIRE_LOG}" 2>&1 & + +# The so called pipewire-pulse daemon used for PulseAudio compatibility. +# Commenting this out will stop the PA proxying daemon from starting, +# however ALSA (with pipewire-alsa), JACK (with jack-sdk) and PW API using +# clients will still have access to audio and may end up clashing with +# non-PW apps over HW control (most notably, /usr/bin/pulseaudio daemon). +echo "[$(@GENTOO_PORTAGE_EPREFIX@/bin/date ${DATE_FORMAT})] Starting PipeWire-Pulse." 1>>"${GENTOO_PIPEWIRE_PULSE_LOG}" +@GENTOO_PORTAGE_EPREFIX@/usr/bin/pipewire -c pipewire-pulse.conf 1>>"${GENTOO_PIPEWIRE_PULSE_LOG}" 2>&1 & + +# Hack for bug #822498 +sleep 1 + +# Finally a session manager is required for PipeWire to do anything. +echo "[$(@GENTOO_PORTAGE_EPREFIX@/bin/date ${DATE_FORMAT})] Starting WirePlumber." 1>>"${GENTOO_WIREPLUMBER_LOG}" +exec @GENTOO_PORTAGE_EPREFIX@/usr/bin/wireplumber 1>>"${GENTOO_WIREPLUMBER_LOG}" 2>&1 diff --git a/media-video/pipewire/pipewire-9999.ebuild b/media-video/pipewire/pipewire-0.3.79-r3.ebuild similarity index 99% copy from media-video/pipewire/pipewire-9999.ebuild copy to media-video/pipewire/pipewire-0.3.79-r3.ebuild index 9ae26c068a6e..7a471fb632bf 100644 --- a/media-video/pipewire/pipewire-9999.ebuild +++ b/media-video/pipewire/pipewire-0.3.79-r3.ebuild @@ -300,7 +300,7 @@ multilib_src_install_all() { newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r2 gentoo-pipewire-launcher + newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher doman "${FILESDIR}"/gentoo-pipewire-launcher.1 diff --git a/media-video/pipewire/pipewire-9999.ebuild b/media-video/pipewire/pipewire-9999.ebuild index 9ae26c068a6e..7a471fb632bf 100644 --- a/media-video/pipewire/pipewire-9999.ebuild +++ b/media-video/pipewire/pipewire-9999.ebuild @@ -300,7 +300,7 @@ multilib_src_install_all() { newins "${FILESDIR}"/pipewire.desktop-r2 pipewire.desktop exeinto /usr/bin - newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r2 gentoo-pipewire-launcher + newexe "${FILESDIR}"/gentoo-pipewire-launcher.in-r3 gentoo-pipewire-launcher doman "${FILESDIR}"/gentoo-pipewire-launcher.1