Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/pipewire/, media-video/pipewire/files/
Date: Wed, 13 Oct 2021 21:11:57
Message-Id: 1634159500.c800486441999e00c2e17300e7af2fe1e844dbc0.asturm@gentoo
1 commit: c800486441999e00c2e17300e7af2fe1e844dbc0
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Wed Oct 13 21:00:23 2021 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Wed Oct 13 21:11:40 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8004864
7
8 media-video/pipewire: Drop old
9
10 Overshadowed by multiple newer versions.
11
12 Package-Manager: Portage-3.0.28, Repoman-3.0.3
13 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
14
15 media-video/pipewire/Manifest | 4 -
16 .../pipewire-0.3.31-non-systemd-integration.patch | 17 --
17 ...pewire-0.3.31-revert-openaptx-restriction.patch | 30 ---
18 ...pipewire-0.3.33-revert-libfreeaptx-switch.patch | 38 ---
19 media-video/pipewire/pipewire-0.3.32.ebuild | 272 --------------------
20 media-video/pipewire/pipewire-0.3.33-r1.ebuild | 275 --------------------
21 media-video/pipewire/pipewire-0.3.34.ebuild | 276 --------------------
22 media-video/pipewire/pipewire-0.3.35.ebuild | 281 ---------------------
23 8 files changed, 1193 deletions(-)
24
25 diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest
26 index a76808c0197..b4f40211f2c 100644
27 --- a/media-video/pipewire/Manifest
28 +++ b/media-video/pipewire/Manifest
29 @@ -1,8 +1,4 @@
30 DIST pipewire-0.3.30.tar.gz 1540950 BLAKE2B 69b35743e3ad9a8caf68d9bb16cf395203efed6c3046b3f4ea33bbcdd6649f5d425d813042c12396a7cd5ff4e8ed91dbc395a96fe55935ad50f9c3f3918b0407 SHA512 ec525e0fb7e5c5313245fcc745b971fd7d4a1caa7ab9fe1fa38dc20d50f03e5969197e86b60659971676bec0f79aa7b7951c8209bfe9565a3fd1dcac1b8535b3
31 -DIST pipewire-0.3.32.tar.gz 1604622 BLAKE2B cab83a17a2b27f710e1377a2ad2ad7003053ef3e8b55423362f0b428e22d52c2ce564da00aab71cc93262d4cb21f239fffea195d05937fdf3489dc540b77d58d SHA512 8a7fe26a78071fdd8d4c9e2d9bf3791af8e0cb53b976b45d39dcab4ad08196808f416911fb1b366cc85e3fa80592ec79c4e4556bb3a390f4a10229b4bf9893f7
32 -DIST pipewire-0.3.33.tar.gz 1629559 BLAKE2B de48956ac87ed6d63a08dd354b1e4abf81b9db99825ca65cbb5b522e71eb6920b35173e1c3abd9a710c28709e2b0a459db67654cfeac42149cdfa91c84833a8b SHA512 bc3d5658d6fda11dd55f22ba5293b4ff6c3e9a8d083b0cf7b3356bc18f4f65967557602a0d6603a2a2a548ecb42c6b7fbb9d315ed0fce435f4bb884ab4dd263b
33 -DIST pipewire-0.3.34.tar.gz 1682396 BLAKE2B 1a3524a833bde6facf637071f905bb0237f3fc53a86d6160083f36c7a42fb7c71c873a0dc9eea04cfb08cbec08807557c2b83efc1ac403adf6a9998d83441338 SHA512 cbf8eb410d2cd1923e67ac9ee9eca0e74567bb7e8ea407a536e64b3ec27b5bbb1e7fdd74a5a7cbffbac3f9996d8a08f8c723401fb44cb2920f044a3a2f3a6c18
34 -DIST pipewire-0.3.35.tar.gz 1704419 BLAKE2B 5c0debd19b29a9488be26125794f04e57e8b3cd3842654cb935decae18ffefc4137927d969448f60f1c1c2985d54db139fc3dcf07e36e81014021d63490096d8 SHA512 08a2e305fe4e9d3c3f4533c163b725dd32d26513e51a9f476bd18d6157ebf67e97e48b8df9595d45c81599f416e6b3f76e90df575dd460a8d26fe951db30e0f6
35 DIST pipewire-0.3.36.tar.gz 1708209 BLAKE2B 20fce0d7f88347fe594491d4fae7b6a8edee67ff7749f1a40b807a5d5094d792e61e3efd05dca2221f781c263e34ff0a50ad3c162231911d4b1d87704df6c775 SHA512 f0fc68ea005018b420a4f65a24dc9c85eb6263c24e66852a7ce2b03f966990d62487b388c7d73ff5adfc10c80c439b1200ae876e41d78f91db190036a1799a14
36 DIST pipewire-0.3.37.tar.gz 1716320 BLAKE2B ce98b28015de69a0c91953a4839d5f86a29cfa19e2058ba0a2476a75a03b782ae67239b418306e4ed7dab81fe7e77928a417b966ff3c72ac552006cea66e3218 SHA512 3f4cf1ac66117a56a7a264262e2e238a54060457da6a986bd9227f51cc7e8d1a8fd282aef8462c096819282c5baec22779d2025c2e1918bbfb3d6ff75829aea6
37 DIST pipewire-0.3.38.tar.gz 1727371 BLAKE2B dac7f3e1992b9690195df1dbc04575d386d21d06d1727b004b851e300709b3707806b7b20d36c1e74225d91a2df5428c913376903b286592f87083857347e53e SHA512 c3c6c822bf4e5e77fed8d6ef09059d3e43195957692ab7baddc349af3d759d892a9af0e7802d389e2a9a15e5fece4c08ec963ac42df931233eec6057bad67eb6
38
39 diff --git a/media-video/pipewire/files/pipewire-0.3.31-non-systemd-integration.patch b/media-video/pipewire/files/pipewire-0.3.31-non-systemd-integration.patch
40 deleted file mode 100644
41 index ccc89f1310b..00000000000
42 --- a/media-video/pipewire/files/pipewire-0.3.31-non-systemd-integration.patch
43 +++ /dev/null
44 @@ -1,17 +0,0 @@
45 ---- a/src/daemon/pipewire.conf.in 2021-06-30 22:22:09.520402459 +0200
46 -+++ b/src/daemon/pipewire.conf.in 2021-06-30 22:22:30.620404999 +0200
47 -@@ -234,12 +234,12 @@
48 - # but it is better to start it as a systemd service.
49 - # Run the session manager with -h for options.
50 - #
51 -- @comment@{ path = "@session_manager_path@" args = "@session_manager_args@" }
52 -+ { path = "@session_manager_path@" args = "@session_manager_args@" }
53 - #
54 - # You can optionally start the pulseaudio-server here as well
55 - # but it is better to start it as a systemd service.
56 - # It can be interesting to start another daemon here that listens
57 - # on another address with the -a option (eg. -a tcp:4713).
58 - #
59 -- @comment@{ path = "@pipewire_path@" args = "-c pipewire-pulse.conf" }
60 -+ { path = "@pipewire_path@" args = "-c pipewire-pulse.conf" }
61 - ]
62
63 diff --git a/media-video/pipewire/files/pipewire-0.3.31-revert-openaptx-restriction.patch b/media-video/pipewire/files/pipewire-0.3.31-revert-openaptx-restriction.patch
64 deleted file mode 100644
65 index d8496bc5a69..00000000000
66 --- a/media-video/pipewire/files/pipewire-0.3.31-revert-openaptx-restriction.patch
67 +++ /dev/null
68 @@ -1,30 +0,0 @@
69 -From 3449214466c4dac866ec9f47ecc573efaf4505bb Mon Sep 17 00:00:00 2001
70 -From: Thomas Deutschmann <whissi@g.o>
71 -Date: Fri, 21 May 2021 10:32:52 +0200
72 -Subject: [PATCH] Revert "openaptx: Blacklist >= 0.2.1 due to license change"
73 -
74 -This reverts commit d08b6fac6bec0d334ee9fc785d551a67832f95fe.
75 -
76 -Doesn't apply to us.
77 -
78 -Bug: https://bugs.gentoo.org/785634
79 ----
80 - spa/meson.build | 2 +-
81 - 1 file changed, 1 insertion(+), 1 deletion(-)
82 -
83 -diff --git a/spa/meson.build b/spa/meson.build
84 -index e13802e94..885b25405 100644
85 ---- a/spa/meson.build
86 -+++ b/spa/meson.build
87 -@@ -28,7 +28,7 @@ if not get_option('spa-plugins').disabled()
88 - summary({'LDAC': ldac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
89 - ldac_abr_dep = dependency('ldacBT-abr', required : get_option('bluez5-codec-ldac'))
90 - summary({'LDAC ABR': ldac_abr_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
91 -- aptx_dep = dependency('libopenaptx', version : '< 0.2.1', required : get_option('bluez5-codec-aptx'))
92 -+ aptx_dep = dependency('libopenaptx', required : get_option('bluez5-codec-aptx'))
93 - summary({'aptX': aptx_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
94 - fdk_aac_dep = dependency('fdk-aac', required : get_option('bluez5-codec-aac'))
95 - summary({'AAC': fdk_aac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
96 ---
97 -2.32.0
98 -
99
100 diff --git a/media-video/pipewire/files/pipewire-0.3.33-revert-libfreeaptx-switch.patch b/media-video/pipewire/files/pipewire-0.3.33-revert-libfreeaptx-switch.patch
101 deleted file mode 100644
102 index 94d4b7dcb0c..00000000000
103 --- a/media-video/pipewire/files/pipewire-0.3.33-revert-libfreeaptx-switch.patch
104 +++ /dev/null
105 @@ -1,38 +0,0 @@
106 -commit f405a4e6069725934f9ae0f1b978497a34197d8d
107 -Author: Thomas Deutschmann <whissi@g.o>
108 -AuthorDate: Tue Aug 24 14:22:36 2021 +0200
109 -Commit: Thomas Deutschmann <whissi@g.o>
110 -CommitDate: Tue Aug 24 14:22:43 2021 +0200
111 -
112 - Revert "bluez5: Use libfreeaptx instead of libopenaptx"
113 -
114 - This reverts commit 1216371f8c06f548f8ade6468b66612f43df1436.
115 -
116 - Delay decision for now since both aptx libs haven't diverged yet.
117 -
118 -diff --git a/spa/meson.build b/spa/meson.build
119 -index 483536b54..e13802e94 100644
120 ---- a/spa/meson.build
121 -+++ b/spa/meson.build
122 -@@ -28,7 +28,7 @@ if not get_option('spa-plugins').disabled()
123 - summary({'LDAC': ldac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
124 - ldac_abr_dep = dependency('ldacBT-abr', required : get_option('bluez5-codec-ldac'))
125 - summary({'LDAC ABR': ldac_abr_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
126 -- aptx_dep = dependency('libfreeaptx', required : get_option('bluez5-codec-aptx'))
127 -+ aptx_dep = dependency('libopenaptx', version : '< 0.2.1', required : get_option('bluez5-codec-aptx'))
128 - summary({'aptX': aptx_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
129 - fdk_aac_dep = dependency('fdk-aac', required : get_option('bluez5-codec-aac'))
130 - summary({'AAC': fdk_aac_dep.found()}, bool_yn: true, section: 'Bluetooth audio codecs')
131 -diff --git a/spa/plugins/bluez5/a2dp-codec-aptx.c b/spa/plugins/bluez5/a2dp-codec-aptx.c
132 -index f8d7d6dd8..62ecde348 100644
133 ---- a/spa/plugins/bluez5/a2dp-codec-aptx.c
134 -+++ b/spa/plugins/bluez5/a2dp-codec-aptx.c
135 -@@ -32,7 +32,7 @@
136 -
137 - #include <sbc/sbc.h>
138 -
139 --#include <freeaptx.h>
140 -+#include <openaptx.h>
141 -
142 - #include "defs.h"
143 - #include "rtp.h"
144
145 diff --git a/media-video/pipewire/pipewire-0.3.32.ebuild b/media-video/pipewire/pipewire-0.3.32.ebuild
146 deleted file mode 100644
147 index 7c5256744ee..00000000000
148 --- a/media-video/pipewire/pipewire-0.3.32.ebuild
149 +++ /dev/null
150 @@ -1,272 +0,0 @@
151 -# Copyright 1999-2021 Gentoo Authors
152 -# Distributed under the terms of the GNU General Public License v2
153 -
154 -EAPI="7"
155 -
156 -PYTHON_COMPAT=( python3_{7..10} )
157 -
158 -inherit meson-multilib optfeature python-any-r1 udev
159 -
160 -if [[ ${PV} == 9999 ]]; then
161 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
162 - inherit git-r3
163 -else
164 - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
165 - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
166 -fi
167 -
168 -DESCRIPTION="Multimedia processing graphs"
169 -HOMEPAGE="https://pipewire.org/"
170 -
171 -LICENSE="MIT LGPL-2.1+ GPL-2"
172 -SLOT="0/0.3"
173 -IUSE="bluetooth doc extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l"
174 -
175 -# Once replacing system JACK libraries is possible, it's likely that
176 -# jack-client IUSE will need blocking to avoid users accidentally
177 -# configuring their systems to send PW sink output to the emulated
178 -# JACK's sink - doing so is likely to yield no audio, cause a CPU
179 -# cycles consuming loop (and may even cause GUI crashes)!
180 -
181 -REQUIRED_USE="jack-sdk? ( !jack-client )"
182 -
183 -RESTRICT="!test? ( test )"
184 -
185 -BDEPEND="
186 - app-doc/xmltoman
187 - virtual/pkgconfig
188 - ${PYTHON_DEPS}
189 - doc? (
190 - app-doc/doxygen
191 - media-gfx/graphviz
192 - )
193 -"
194 -RDEPEND="
195 - acct-group/audio
196 - media-libs/alsa-lib
197 - sys-apps/dbus[${MULTILIB_USEDEP}]
198 - sys-libs/ncurses:=[unicode(+)]
199 - virtual/libintl[${MULTILIB_USEDEP}]
200 - virtual/libudev[${MULTILIB_USEDEP}]
201 - bluetooth? (
202 - media-libs/fdk-aac
203 - media-libs/libldac
204 - media-libs/libopenaptx
205 - media-libs/sbc
206 - >=net-wireless/bluez-4.101:=
207 - )
208 - extra? (
209 - >=media-libs/libsndfile-1.0.20
210 - )
211 - gstreamer? (
212 - >=dev-libs/glib-2.32.0:2
213 - >=media-libs/gstreamer-1.10.0:1.0
214 - media-libs/gst-plugins-base:1.0
215 - )
216 - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] )
217 - jack-sdk? (
218 - !media-sound/jack-audio-connection-kit
219 - !media-sound/jack2
220 - )
221 - pipewire-alsa? (
222 - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
223 - || (
224 - media-plugins/alsa-plugins[-pulseaudio]
225 - !media-plugins/alsa-plugins
226 - )
227 - )
228 - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
229 - systemd? ( sys-apps/systemd )
230 - v4l? ( media-libs/libv4l )
231 -"
232 -
233 -DEPEND="${RDEPEND}"
234 -
235 -# Present RDEPEND that are currently always disabled due to the PW
236 -# code using them being required to be disabled by Gentoo guidelines
237 -# (i.e. developer binaries not meant for users) and unready code
238 -# media-video/ffmpeg:=
239 -# media-libs/libsdl2
240 -# >=media-libs/vulkan-loader-1.1.69
241 -#
242 -# Ditto for DEPEND
243 -# >=dev-util/vulkan-headers-1.1.69
244 -
245 -DOCS=( {README,INSTALL}.md NEWS )
246 -
247 -PATCHES=(
248 - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch
249 - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch
250 -)
251 -
252 -# limitsdfile related code taken from =sys-auth/realtime-base-0.1
253 -# with changes as necessary.
254 -limitsdfile=40-${PN}.conf
255 -
256 -src_prepare() {
257 - default
258 -
259 - if ! use systemd; then
260 - # This can be applied non-conditionally but would make for a
261 - # significantly worse user experience on systemd then.
262 - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch
263 - fi
264 -
265 - einfo "Generating ${limitsdfile}"
266 - cat > ${limitsdfile} <<- EOF || die
267 - # Start of ${limitsdfile} from ${P}
268 -
269 - @audio - memlock 256
270 -
271 - # End of ${limitsdfile} from ${P}
272 - EOF
273 -}
274 -
275 -multilib_src_configure() {
276 - local emesonargs=(
277 - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
278 - $(meson_native_use_feature doc docs)
279 - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session
280 - $(meson_native_enabled media-session)
281 - $(meson_native_enabled man)
282 - $(meson_feature test tests)
283 - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests
284 - $(meson_native_use_feature gstreamer)
285 - $(meson_native_use_feature gstreamer gstreamer-device-provider)
286 - $(meson_native_use_feature systemd)
287 - -Dsystemd-system-service=disabled # Matches upstream
288 - $(meson_native_use_feature systemd systemd-user-service)
289 - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph
290 - -Dspa-plugins=enabled
291 - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this)
292 - -Daudiomixer=enabled # Matches upstream
293 - -Daudioconvert=enabled # Matches upstream
294 - $(meson_native_use_feature bluetooth bluez5)
295 - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native)
296 - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native)
297 - $(meson_native_use_feature bluetooth bluez5-backend-ofono)
298 - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd)
299 - $(meson_native_use_feature bluetooth bluez5-codec-aac)
300 - $(meson_native_use_feature bluetooth bluez5-codec-aptx)
301 - $(meson_native_use_feature bluetooth bluez5-codec-ldac)
302 - -Dcontrol=enabled # Matches upstream
303 - -Daudiotestsrc=enabled # Matches upstream
304 - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020
305 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph
306 - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client
307 - $(meson_feature jack-sdk jack-devel)
308 - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '')
309 - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink
310 - -Devl=disabled # Matches upstream
311 - -Dtest=disabled # fakesink and fakesource plugins
312 - $(meson_native_use_feature v4l v4l2)
313 - -Dlibcamera=disabled # libcamera is not in Portage tree
314 - -Dvideoconvert=enabled # Matches upstream
315 - -Dvideotestsrc=enabled # Matches upstream
316 - -Dvolume=enabled # Matches upstream
317 - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream)
318 - $(meson_native_use_feature extra pw-cat)
319 - -Dudev=enabled
320 - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
321 - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install)
322 - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat)
323 - )
324 -
325 - meson_src_configure
326 -}
327 -
328 -multilib_src_install() {
329 - # Our customs DOCS do not exist in multilib source directory
330 - DOCS= meson_src_install
331 -}
332 -
333 -multilib_src_install_all() {
334 - einstalldocs
335 -
336 - insinto /etc/security/limits.d
337 - doins ${limitsdfile}
338 -
339 - if use pipewire-alsa; then
340 - dodir /etc/alsa/conf.d
341 - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222
342 - # And the current dosym8 -r implementation is likely affected by the same issue, too.
343 - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf
344 - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf
345 - fi
346 -
347 - if ! use systemd; then
348 - insinto /etc/xdg/autostart
349 - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop
350 -
351 - exeinto /usr/libexec
352 - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher
353 - fi
354 -}
355 -
356 -pkg_postinst() {
357 - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users"
358 - elog "using PipeWire. Do it either manually or add yourself"
359 - elog "to the 'audio' group:"
360 - elog
361 - elog " usermod -aG audio <youruser>"
362 - elog
363 -
364 - if ! use jack-sdk; then
365 - elog "JACK emulation is incomplete and not all programs will work. PipeWire's"
366 - elog "alternative libraries have been installed to a non-default location."
367 - elog "To use them, put pw-jack <application> before every JACK application."
368 - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack"
369 - elog "provider is still needed to compile the JACK applications themselves."
370 - elog
371 - fi
372 -
373 - if use systemd; then
374 - elog "To use PipeWire for audio, the user units must be manually enabled:"
375 - elog
376 - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket"
377 - elog
378 - elog "When switching from PulseAudio, do not forget to disable PulseAudio:"
379 - elog
380 - elog " systemctl --user disable pulseaudio.service pulseaudio.socket"
381 - elog
382 - elog "A reboot is recommended to avoid interferences from still running"
383 - elog "PulseAudio daemon."
384 - elog
385 - elog "Both, new users and those upgrading, need to enable pipewire-media-session:"
386 - elog
387 - elog " systemctl --user enable pipewire-media-session.service"
388 - elog
389 - else
390 - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users"
391 - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable "
392 - elog "autospawn'ing of the original daemon by setting:"
393 - elog
394 - elog " autospawn = no"
395 - elog
396 - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!"
397 - elog
398 - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit"
399 - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant"
400 - elog "command near the end of the file:"
401 - elog
402 - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }"
403 - elog
404 - elog "NOTE:"
405 - elog "Starting with PipeWire-0.3.30, package is no longer installing config"
406 - elog "into ${EROOT}/etc/pipewire by default. In case you need to change"
407 - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire"
408 - elog "and just override sections you want to change."
409 - fi
410 -
411 - elog "For latest tips and tricks, troubleshooting information and documentation"
412 - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire"
413 - elog
414 -
415 - optfeature_header "The following can be installed for optional runtime features:"
416 - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit
417 - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here!
418 - if use bluetooth; then
419 - optfeature "better BT headset support (daemon startup required)" net-misc/ofono
420 - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd
421 - fi
422 -}
423
424 diff --git a/media-video/pipewire/pipewire-0.3.33-r1.ebuild b/media-video/pipewire/pipewire-0.3.33-r1.ebuild
425 deleted file mode 100644
426 index d0320fcb4b3..00000000000
427 --- a/media-video/pipewire/pipewire-0.3.33-r1.ebuild
428 +++ /dev/null
429 @@ -1,275 +0,0 @@
430 -# Copyright 1999-2021 Gentoo Authors
431 -# Distributed under the terms of the GNU General Public License v2
432 -
433 -EAPI="7"
434 -
435 -PYTHON_COMPAT=( python3_{7..10} )
436 -
437 -inherit meson-multilib optfeature python-any-r1 udev
438 -
439 -if [[ ${PV} == 9999 ]]; then
440 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
441 - inherit git-r3
442 -else
443 - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
444 - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
445 -fi
446 -
447 -DESCRIPTION="Multimedia processing graphs"
448 -HOMEPAGE="https://pipewire.org/"
449 -
450 -LICENSE="MIT LGPL-2.1+ GPL-2"
451 -SLOT="0/0.3"
452 -IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l"
453 -
454 -# Once replacing system JACK libraries is possible, it's likely that
455 -# jack-client IUSE will need blocking to avoid users accidentally
456 -# configuring their systems to send PW sink output to the emulated
457 -# JACK's sink - doing so is likely to yield no audio, cause a CPU
458 -# cycles consuming loop (and may even cause GUI crashes)!
459 -
460 -REQUIRED_USE="jack-sdk? ( !jack-client )"
461 -
462 -RESTRICT="!test? ( test )"
463 -
464 -BDEPEND="
465 - app-doc/xmltoman
466 - virtual/pkgconfig
467 - ${PYTHON_DEPS}
468 - doc? (
469 - app-doc/doxygen
470 - media-gfx/graphviz
471 - )
472 -"
473 -RDEPEND="
474 - acct-group/audio
475 - media-libs/alsa-lib
476 - sys-apps/dbus[${MULTILIB_USEDEP}]
477 - sys-libs/ncurses:=[unicode(+)]
478 - virtual/libintl[${MULTILIB_USEDEP}]
479 - virtual/libudev[${MULTILIB_USEDEP}]
480 - bluetooth? (
481 - media-libs/fdk-aac
482 - media-libs/libldac
483 - media-libs/libopenaptx
484 - media-libs/sbc
485 - >=net-wireless/bluez-4.101:=
486 - )
487 - echo-cancel? ( media-libs/webrtc-audio-processing:0 )
488 - extra? (
489 - >=media-libs/libsndfile-1.0.20
490 - )
491 - gstreamer? (
492 - >=dev-libs/glib-2.32.0:2
493 - >=media-libs/gstreamer-1.10.0:1.0
494 - media-libs/gst-plugins-base:1.0
495 - )
496 - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] )
497 - jack-sdk? (
498 - !media-sound/jack-audio-connection-kit
499 - !media-sound/jack2
500 - )
501 - pipewire-alsa? (
502 - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
503 - || (
504 - media-plugins/alsa-plugins[-pulseaudio]
505 - !media-plugins/alsa-plugins
506 - )
507 - )
508 - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
509 - systemd? ( sys-apps/systemd )
510 - v4l? ( media-libs/libv4l )
511 -"
512 -
513 -DEPEND="${RDEPEND}"
514 -
515 -# Present RDEPEND that are currently always disabled due to the PW
516 -# code using them being required to be disabled by Gentoo guidelines
517 -# (i.e. developer binaries not meant for users) and unready code
518 -# media-video/ffmpeg:=
519 -# media-libs/libsdl2
520 -# >=media-libs/vulkan-loader-1.1.69
521 -#
522 -# Ditto for DEPEND
523 -# >=dev-util/vulkan-headers-1.1.69
524 -
525 -DOCS=( {README,INSTALL}.md NEWS )
526 -
527 -PATCHES=(
528 - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch
529 - "${FILESDIR}"/${PN}-0.3.33-revert-libfreeaptx-switch.patch
530 - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch
531 -)
532 -
533 -# limitsdfile related code taken from =sys-auth/realtime-base-0.1
534 -# with changes as necessary.
535 -limitsdfile=40-${PN}.conf
536 -
537 -src_prepare() {
538 - default
539 -
540 - if ! use systemd; then
541 - # This can be applied non-conditionally but would make for a
542 - # significantly worse user experience on systemd then.
543 - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch
544 - fi
545 -
546 - einfo "Generating ${limitsdfile}"
547 - cat > ${limitsdfile} <<- EOF || die
548 - # Start of ${limitsdfile} from ${P}
549 -
550 - @audio - memlock 256
551 -
552 - # End of ${limitsdfile} from ${P}
553 - EOF
554 -}
555 -
556 -multilib_src_configure() {
557 - local emesonargs=(
558 - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
559 - $(meson_native_use_feature doc docs)
560 - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session
561 - $(meson_native_enabled media-session)
562 - $(meson_native_enabled man)
563 - $(meson_feature test tests)
564 - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests
565 - $(meson_native_use_feature gstreamer)
566 - $(meson_native_use_feature gstreamer gstreamer-device-provider)
567 - $(meson_native_use_feature systemd)
568 - -Dsystemd-system-service=disabled # Matches upstream
569 - $(meson_native_use_feature systemd systemd-user-service)
570 - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph
571 - -Dspa-plugins=enabled
572 - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this)
573 - -Daudiomixer=enabled # Matches upstream
574 - -Daudioconvert=enabled # Matches upstream
575 - $(meson_native_use_feature bluetooth bluez5)
576 - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native)
577 - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native)
578 - $(meson_native_use_feature bluetooth bluez5-backend-ofono)
579 - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd)
580 - $(meson_native_use_feature bluetooth bluez5-codec-aac)
581 - $(meson_native_use_feature bluetooth bluez5-codec-aptx)
582 - $(meson_native_use_feature bluetooth bluez5-codec-ldac)
583 - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889
584 - -Dcontrol=enabled # Matches upstream
585 - -Daudiotestsrc=enabled # Matches upstream
586 - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020
587 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph
588 - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client
589 - $(meson_feature jack-sdk jack-devel)
590 - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '')
591 - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink
592 - -Devl=disabled # Matches upstream
593 - -Dtest=disabled # fakesink and fakesource plugins
594 - $(meson_native_use_feature v4l v4l2)
595 - -Dlibcamera=disabled # libcamera is not in Portage tree
596 - -Dvideoconvert=enabled # Matches upstream
597 - -Dvideotestsrc=enabled # Matches upstream
598 - -Dvolume=enabled # Matches upstream
599 - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream)
600 - $(meson_native_use_feature extra pw-cat)
601 - -Dudev=enabled
602 - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
603 - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install)
604 - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat)
605 - )
606 -
607 - meson_src_configure
608 -}
609 -
610 -multilib_src_install() {
611 - # Our customs DOCS do not exist in multilib source directory
612 - DOCS= meson_src_install
613 -}
614 -
615 -multilib_src_install_all() {
616 - einstalldocs
617 -
618 - insinto /etc/security/limits.d
619 - doins ${limitsdfile}
620 -
621 - if use pipewire-alsa; then
622 - dodir /etc/alsa/conf.d
623 - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222
624 - # And the current dosym8 -r implementation is likely affected by the same issue, too.
625 - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf
626 - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf
627 - fi
628 -
629 - if ! use systemd; then
630 - insinto /etc/xdg/autostart
631 - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop
632 -
633 - exeinto /usr/libexec
634 - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher
635 - fi
636 -}
637 -
638 -pkg_postinst() {
639 - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users"
640 - elog "using PipeWire. Do it either manually or add yourself"
641 - elog "to the 'audio' group:"
642 - elog
643 - elog " usermod -aG audio <youruser>"
644 - elog
645 -
646 - if ! use jack-sdk; then
647 - elog "JACK emulation is incomplete and not all programs will work. PipeWire's"
648 - elog "alternative libraries have been installed to a non-default location."
649 - elog "To use them, put pw-jack <application> before every JACK application."
650 - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack"
651 - elog "provider is still needed to compile the JACK applications themselves."
652 - elog
653 - fi
654 -
655 - if use systemd; then
656 - elog "To use PipeWire for audio, the user units must be manually enabled:"
657 - elog
658 - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket"
659 - elog
660 - elog "When switching from PulseAudio, do not forget to disable PulseAudio:"
661 - elog
662 - elog " systemctl --user disable pulseaudio.service pulseaudio.socket"
663 - elog
664 - elog "A reboot is recommended to avoid interferences from still running"
665 - elog "PulseAudio daemon."
666 - elog
667 - elog "Both, new users and those upgrading, need to enable pipewire-media-session:"
668 - elog
669 - elog " systemctl --user enable pipewire-media-session.service"
670 - elog
671 - else
672 - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users"
673 - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable "
674 - elog "autospawn'ing of the original daemon by setting:"
675 - elog
676 - elog " autospawn = no"
677 - elog
678 - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!"
679 - elog
680 - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit"
681 - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant"
682 - elog "command near the end of the file:"
683 - elog
684 - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }"
685 - elog
686 - elog "NOTE:"
687 - elog "Starting with PipeWire-0.3.30, package is no longer installing config"
688 - elog "into ${EROOT}/etc/pipewire by default. In case you need to change"
689 - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire"
690 - elog "and just override sections you want to change."
691 - fi
692 -
693 - elog "For latest tips and tricks, troubleshooting information and documentation"
694 - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire"
695 - elog
696 -
697 - optfeature_header "The following can be installed for optional runtime features:"
698 - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit
699 - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here!
700 - if use bluetooth; then
701 - optfeature "better BT headset support (daemon startup required)" net-misc/ofono
702 - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd
703 - fi
704 -}
705
706 diff --git a/media-video/pipewire/pipewire-0.3.34.ebuild b/media-video/pipewire/pipewire-0.3.34.ebuild
707 deleted file mode 100644
708 index 2ce80ce5a7d..00000000000
709 --- a/media-video/pipewire/pipewire-0.3.34.ebuild
710 +++ /dev/null
711 @@ -1,276 +0,0 @@
712 -# Copyright 1999-2021 Gentoo Authors
713 -# Distributed under the terms of the GNU General Public License v2
714 -
715 -EAPI="7"
716 -
717 -PYTHON_COMPAT=( python3_{7..10} )
718 -
719 -inherit meson-multilib optfeature python-any-r1 udev
720 -
721 -if [[ ${PV} == 9999 ]]; then
722 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
723 - inherit git-r3
724 -else
725 - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
726 - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
727 -fi
728 -
729 -DESCRIPTION="Multimedia processing graphs"
730 -HOMEPAGE="https://pipewire.org/"
731 -
732 -LICENSE="MIT LGPL-2.1+ GPL-2"
733 -SLOT="0/0.3"
734 -IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l"
735 -
736 -# Once replacing system JACK libraries is possible, it's likely that
737 -# jack-client IUSE will need blocking to avoid users accidentally
738 -# configuring their systems to send PW sink output to the emulated
739 -# JACK's sink - doing so is likely to yield no audio, cause a CPU
740 -# cycles consuming loop (and may even cause GUI crashes)!
741 -
742 -REQUIRED_USE="jack-sdk? ( !jack-client )"
743 -
744 -RESTRICT="!test? ( test )"
745 -
746 -BDEPEND="
747 - app-doc/xmltoman
748 - >=dev-util/meson-0.59
749 - virtual/pkgconfig
750 - ${PYTHON_DEPS}
751 - doc? (
752 - app-doc/doxygen
753 - media-gfx/graphviz
754 - )
755 -"
756 -RDEPEND="
757 - acct-group/audio
758 - media-libs/alsa-lib
759 - sys-apps/dbus[${MULTILIB_USEDEP}]
760 - sys-libs/ncurses:=[unicode(+)]
761 - virtual/libintl[${MULTILIB_USEDEP}]
762 - virtual/libudev[${MULTILIB_USEDEP}]
763 - bluetooth? (
764 - media-libs/fdk-aac
765 - media-libs/libldac
766 - media-libs/libopenaptx
767 - media-libs/sbc
768 - >=net-wireless/bluez-4.101:=
769 - )
770 - echo-cancel? ( media-libs/webrtc-audio-processing:0 )
771 - extra? (
772 - >=media-libs/libsndfile-1.0.20
773 - )
774 - gstreamer? (
775 - >=dev-libs/glib-2.32.0:2
776 - >=media-libs/gstreamer-1.10.0:1.0
777 - media-libs/gst-plugins-base:1.0
778 - )
779 - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] )
780 - jack-sdk? (
781 - !media-sound/jack-audio-connection-kit
782 - !media-sound/jack2
783 - )
784 - pipewire-alsa? (
785 - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
786 - || (
787 - media-plugins/alsa-plugins[-pulseaudio]
788 - !media-plugins/alsa-plugins
789 - )
790 - )
791 - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
792 - systemd? ( sys-apps/systemd )
793 - v4l? ( media-libs/libv4l )
794 -"
795 -
796 -DEPEND="${RDEPEND}"
797 -
798 -# Present RDEPEND that are currently always disabled due to the PW
799 -# code using them being required to be disabled by Gentoo guidelines
800 -# (i.e. developer binaries not meant for users) and unready code
801 -# media-video/ffmpeg:=
802 -# media-libs/libsdl2
803 -# >=media-libs/vulkan-loader-1.1.69
804 -#
805 -# Ditto for DEPEND
806 -# >=dev-util/vulkan-headers-1.1.69
807 -
808 -DOCS=( {README,INSTALL}.md NEWS )
809 -
810 -PATCHES=(
811 - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch
812 - "${FILESDIR}"/${PN}-0.3.33-revert-libfreeaptx-switch.patch
813 - "${FILESDIR}"/${PN}-0.3.31-revert-openaptx-restriction.patch
814 -)
815 -
816 -# limitsdfile related code taken from =sys-auth/realtime-base-0.1
817 -# with changes as necessary.
818 -limitsdfile=40-${PN}.conf
819 -
820 -src_prepare() {
821 - default
822 -
823 - if ! use systemd; then
824 - # This can be applied non-conditionally but would make for a
825 - # significantly worse user experience on systemd then.
826 - eapply "${FILESDIR}"/${PN}-0.3.31-non-systemd-integration.patch
827 - fi
828 -
829 - einfo "Generating ${limitsdfile}"
830 - cat > ${limitsdfile} <<- EOF || die
831 - # Start of ${limitsdfile} from ${P}
832 -
833 - @audio - memlock 256
834 -
835 - # End of ${limitsdfile} from ${P}
836 - EOF
837 -}
838 -
839 -multilib_src_configure() {
840 - local emesonargs=(
841 - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
842 - $(meson_native_use_feature doc docs)
843 - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session
844 - $(meson_native_enabled media-session)
845 - $(meson_native_enabled man)
846 - $(meson_feature test tests)
847 - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests
848 - $(meson_native_use_feature gstreamer)
849 - $(meson_native_use_feature gstreamer gstreamer-device-provider)
850 - $(meson_native_use_feature systemd)
851 - -Dsystemd-system-service=disabled # Matches upstream
852 - $(meson_native_use_feature systemd systemd-user-service)
853 - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph
854 - -Dspa-plugins=enabled
855 - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this)
856 - -Daudiomixer=enabled # Matches upstream
857 - -Daudioconvert=enabled # Matches upstream
858 - $(meson_native_use_feature bluetooth bluez5)
859 - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native)
860 - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native)
861 - $(meson_native_use_feature bluetooth bluez5-backend-ofono)
862 - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd)
863 - $(meson_native_use_feature bluetooth bluez5-codec-aac)
864 - $(meson_native_use_feature bluetooth bluez5-codec-aptx)
865 - $(meson_native_use_feature bluetooth bluez5-codec-ldac)
866 - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889
867 - -Dcontrol=enabled # Matches upstream
868 - -Daudiotestsrc=enabled # Matches upstream
869 - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020
870 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph
871 - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client
872 - $(meson_use jack-sdk jack-devel)
873 - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '')
874 - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink
875 - -Devl=disabled # Matches upstream
876 - -Dtest=disabled # fakesink and fakesource plugins
877 - $(meson_native_use_feature v4l v4l2)
878 - -Dlibcamera=disabled # libcamera is not in Portage tree
879 - -Dvideoconvert=enabled # Matches upstream
880 - -Dvideotestsrc=enabled # Matches upstream
881 - -Dvolume=enabled # Matches upstream
882 - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream)
883 - $(meson_native_use_feature extra pw-cat)
884 - -Dudev=enabled
885 - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
886 - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install)
887 - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat)
888 - )
889 -
890 - meson_src_configure
891 -}
892 -
893 -multilib_src_install() {
894 - # Our customs DOCS do not exist in multilib source directory
895 - DOCS= meson_src_install
896 -}
897 -
898 -multilib_src_install_all() {
899 - einstalldocs
900 -
901 - insinto /etc/security/limits.d
902 - doins ${limitsdfile}
903 -
904 - if use pipewire-alsa; then
905 - dodir /etc/alsa/conf.d
906 - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222
907 - # And the current dosym8 -r implementation is likely affected by the same issue, too.
908 - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf
909 - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf
910 - fi
911 -
912 - if ! use systemd; then
913 - insinto /etc/xdg/autostart
914 - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop
915 -
916 - exeinto /usr/libexec
917 - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher
918 - fi
919 -}
920 -
921 -pkg_postinst() {
922 - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users"
923 - elog "using PipeWire. Do it either manually or add yourself"
924 - elog "to the 'audio' group:"
925 - elog
926 - elog " usermod -aG audio <youruser>"
927 - elog
928 -
929 - if ! use jack-sdk; then
930 - elog "JACK emulation is incomplete and not all programs will work. PipeWire's"
931 - elog "alternative libraries have been installed to a non-default location."
932 - elog "To use them, put pw-jack <application> before every JACK application."
933 - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack"
934 - elog "provider is still needed to compile the JACK applications themselves."
935 - elog
936 - fi
937 -
938 - if use systemd; then
939 - elog "To use PipeWire for audio, the user units must be manually enabled:"
940 - elog
941 - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket"
942 - elog
943 - elog "When switching from PulseAudio, do not forget to disable PulseAudio:"
944 - elog
945 - elog " systemctl --user disable pulseaudio.service pulseaudio.socket"
946 - elog
947 - elog "A reboot is recommended to avoid interferences from still running"
948 - elog "PulseAudio daemon."
949 - elog
950 - elog "Both, new users and those upgrading, need to enable pipewire-media-session:"
951 - elog
952 - elog " systemctl --user enable pipewire-media-session.service"
953 - elog
954 - else
955 - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users"
956 - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable "
957 - elog "autospawn'ing of the original daemon by setting:"
958 - elog
959 - elog " autospawn = no"
960 - elog
961 - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!"
962 - elog
963 - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit"
964 - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant"
965 - elog "command near the end of the file:"
966 - elog
967 - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }"
968 - elog
969 - elog "NOTE:"
970 - elog "Starting with PipeWire-0.3.30, package is no longer installing config"
971 - elog "into ${EROOT}/etc/pipewire by default. In case you need to change"
972 - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire"
973 - elog "and just override sections you want to change."
974 - fi
975 -
976 - elog "For latest tips and tricks, troubleshooting information and documentation"
977 - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire"
978 - elog
979 -
980 - optfeature_header "The following can be installed for optional runtime features:"
981 - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit
982 - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here!
983 - if use bluetooth; then
984 - optfeature "better BT headset support (daemon startup required)" net-misc/ofono
985 - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd
986 - fi
987 -}
988
989 diff --git a/media-video/pipewire/pipewire-0.3.35.ebuild b/media-video/pipewire/pipewire-0.3.35.ebuild
990 deleted file mode 100644
991 index d68355c9f4c..00000000000
992 --- a/media-video/pipewire/pipewire-0.3.35.ebuild
993 +++ /dev/null
994 @@ -1,281 +0,0 @@
995 -# Copyright 1999-2021 Gentoo Authors
996 -# Distributed under the terms of the GNU General Public License v2
997 -
998 -EAPI="7"
999 -
1000 -PYTHON_COMPAT=( python3_{8..10} )
1001 -
1002 -inherit meson-multilib optfeature python-any-r1 udev
1003 -
1004 -if [[ ${PV} == 9999 ]]; then
1005 - EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
1006 - inherit git-r3
1007 -else
1008 - SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
1009 - KEYWORDS="~amd64 ~arm ~riscv"
1010 -fi
1011 -
1012 -DESCRIPTION="Multimedia processing graphs"
1013 -HOMEPAGE="https://pipewire.org/"
1014 -
1015 -LICENSE="MIT LGPL-2.1+ GPL-2"
1016 -SLOT="0/0.3"
1017 -IUSE="bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk pipewire-alsa systemd test v4l"
1018 -
1019 -# Once replacing system JACK libraries is possible, it's likely that
1020 -# jack-client IUSE will need blocking to avoid users accidentally
1021 -# configuring their systems to send PW sink output to the emulated
1022 -# JACK's sink - doing so is likely to yield no audio, cause a CPU
1023 -# cycles consuming loop (and may even cause GUI crashes)!
1024 -
1025 -REQUIRED_USE="jack-sdk? ( !jack-client )"
1026 -
1027 -RESTRICT="!test? ( test )"
1028 -
1029 -BDEPEND="
1030 - app-doc/xmltoman
1031 - >=dev-util/meson-0.59
1032 - virtual/pkgconfig
1033 - ${PYTHON_DEPS}
1034 - $(python_gen_any_dep 'dev-python/docutils[${PYTHON_USEDEP}]')
1035 - doc? (
1036 - app-doc/doxygen
1037 - media-gfx/graphviz
1038 - )
1039 -"
1040 -RDEPEND="
1041 - acct-group/audio
1042 - media-libs/alsa-lib
1043 - sys-apps/dbus[${MULTILIB_USEDEP}]
1044 - sys-libs/ncurses:=[unicode(+)]
1045 - virtual/libintl[${MULTILIB_USEDEP}]
1046 - virtual/libudev[${MULTILIB_USEDEP}]
1047 - bluetooth? (
1048 - media-libs/fdk-aac
1049 - media-libs/libldac
1050 - media-libs/libfreeaptx
1051 - media-libs/sbc
1052 - >=net-wireless/bluez-4.101:=
1053 - )
1054 - echo-cancel? ( media-libs/webrtc-audio-processing:0 )
1055 - extra? (
1056 - >=media-libs/libsndfile-1.0.20
1057 - )
1058 - gstreamer? (
1059 - >=dev-libs/glib-2.32.0:2
1060 - >=media-libs/gstreamer-1.10.0:1.0
1061 - media-libs/gst-plugins-base:1.0
1062 - )
1063 - jack-client? ( >=media-sound/jack2-1.9.10:2[dbus] )
1064 - jack-sdk? (
1065 - !media-sound/jack-audio-connection-kit
1066 - !media-sound/jack2
1067 - )
1068 - pipewire-alsa? (
1069 - >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
1070 - || (
1071 - media-plugins/alsa-plugins[-pulseaudio]
1072 - !media-plugins/alsa-plugins
1073 - )
1074 - )
1075 - !pipewire-alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] )
1076 - systemd? ( sys-apps/systemd )
1077 - v4l? ( media-libs/libv4l )
1078 -"
1079 -
1080 -DEPEND="${RDEPEND}"
1081 -
1082 -# Present RDEPEND that are currently always disabled due to the PW
1083 -# code using them being required to be disabled by Gentoo guidelines
1084 -# (i.e. developer binaries not meant for users) and unready code
1085 -# media-video/ffmpeg:=
1086 -# media-libs/libsdl2
1087 -# >=media-libs/vulkan-loader-1.1.69
1088 -#
1089 -# Ditto for DEPEND
1090 -# >=dev-util/vulkan-headers-1.1.69
1091 -
1092 -DOCS=( {README,INSTALL}.md NEWS )
1093 -
1094 -PATCHES=(
1095 - "${FILESDIR}"/${PN}-0.3.25-enable-failed-mlock-warning.patch
1096 -)
1097 -
1098 -# limitsdfile related code taken from =sys-auth/realtime-base-0.1
1099 -# with changes as necessary.
1100 -limitsdfile=40-${PN}.conf
1101 -
1102 -python_check_deps() {
1103 - has_version -b "dev-python/docutils[${PYTHON_USEDEP}]"
1104 -}
1105 -
1106 -src_prepare() {
1107 - default
1108 -
1109 - if ! use systemd; then
1110 - # This can be applied non-conditionally but would make for a
1111 - # significantly worse user experience on systemd then.
1112 - eapply "${FILESDIR}"/${PN}-0.3.35-non-systemd-integration.patch
1113 - fi
1114 -
1115 - einfo "Generating ${limitsdfile}"
1116 - cat > ${limitsdfile} <<- EOF || die
1117 - # Start of ${limitsdfile} from ${P}
1118 -
1119 - @audio - memlock 256
1120 -
1121 - # End of ${limitsdfile} from ${P}
1122 - EOF
1123 -}
1124 -
1125 -multilib_src_configure() {
1126 - local emesonargs=(
1127 - -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
1128 - $(meson_native_use_feature doc docs)
1129 - $(meson_native_enabled examples) # Disabling this implicitly disables -Dmedia-session
1130 - # Replaced upstream by -Dsession-managers=..., needs more work, bug #812809
1131 - # but default is same as before and right now, this is fatal with unreleased Meson.
1132 - #$(meson_native_enabled media-session)
1133 - $(meson_native_enabled man)
1134 - $(meson_feature test tests)
1135 - -Dinstalled_tests=disabled # Matches upstream; Gentoo never installs tests
1136 - $(meson_native_use_feature gstreamer)
1137 - $(meson_native_use_feature gstreamer gstreamer-device-provider)
1138 - $(meson_native_use_feature systemd)
1139 - -Dsystemd-system-service=disabled # Matches upstream
1140 - $(meson_native_use_feature systemd systemd-user-service)
1141 - $(meson_feature pipewire-alsa) # Allows integrating ALSA apps into PW graph
1142 - -Dspa-plugins=enabled
1143 - -Dalsa=enabled # Allows using kernel ALSA for sound I/O (-Dmedia-session depends on this)
1144 - -Daudiomixer=enabled # Matches upstream
1145 - -Daudioconvert=enabled # Matches upstream
1146 - $(meson_native_use_feature bluetooth bluez5)
1147 - $(meson_native_use_feature bluetooth bluez5-backend-hsp-native)
1148 - $(meson_native_use_feature bluetooth bluez5-backend-hfp-native)
1149 - $(meson_native_use_feature bluetooth bluez5-backend-ofono)
1150 - $(meson_native_use_feature bluetooth bluez5-backend-hsphfpd)
1151 - $(meson_native_use_feature bluetooth bluez5-codec-aac)
1152 - $(meson_native_use_feature bluetooth bluez5-codec-aptx)
1153 - $(meson_native_use_feature bluetooth bluez5-codec-ldac)
1154 - $(meson_native_use_feature echo-cancel echo-cancel-webrtc) #807889
1155 - -Dcontrol=enabled # Matches upstream
1156 - -Daudiotestsrc=enabled # Matches upstream
1157 - -Dffmpeg=disabled # Disabled by upstream and no major developments to spa/plugins/ffmpeg/ since May 2020
1158 - -Dpipewire-jack=enabled # Allows integrating JACK apps into PW graph
1159 - $(meson_native_use_feature jack-client jack) # Allows PW to act as a JACK client
1160 - $(meson_use jack-sdk jack-devel)
1161 - $(usex jack-sdk "-Dlibjack-path=${EPREFIX}/usr/$(get_libdir)" '')
1162 - -Dsupport=enabled # Miscellaneous/common plugins, such as null sink
1163 - -Devl=disabled # Matches upstream
1164 - -Dtest=disabled # fakesink and fakesource plugins
1165 - $(meson_native_use_feature v4l v4l2)
1166 - -Dlibcamera=disabled # libcamera is not in Portage tree
1167 - -Dvideoconvert=enabled # Matches upstream
1168 - -Dvideotestsrc=enabled # Matches upstream
1169 - -Dvolume=enabled # Matches upstream
1170 - -Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream)
1171 - $(meson_native_use_feature extra pw-cat)
1172 - -Dudev=enabled
1173 - -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
1174 - -Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install)
1175 - $(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat)
1176 - )
1177 -
1178 - meson_src_configure
1179 -}
1180 -
1181 -multilib_src_install() {
1182 - # Our customs DOCS do not exist in multilib source directory
1183 - DOCS= meson_src_install
1184 -}
1185 -
1186 -multilib_src_install_all() {
1187 - einstalldocs
1188 -
1189 - insinto /etc/security/limits.d
1190 - doins ${limitsdfile}
1191 -
1192 - if use pipewire-alsa; then
1193 - dodir /etc/alsa/conf.d
1194 - # These will break if someone has /etc that is a symbol link to a subfolder! See #724222
1195 - # And the current dosym8 -r implementation is likely affected by the same issue, too.
1196 - dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf
1197 - dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf
1198 - fi
1199 -
1200 - if ! use systemd; then
1201 - insinto /etc/xdg/autostart
1202 - newins "${FILESDIR}"/pipewire.desktop pipewire.desktop
1203 -
1204 - exeinto /usr/libexec
1205 - newexe "${FILESDIR}"/pipewire-launcher.sh pipewire-launcher
1206 - fi
1207 -}
1208 -
1209 -pkg_postinst() {
1210 - elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users"
1211 - elog "using PipeWire. Do it either manually or add yourself"
1212 - elog "to the 'audio' group:"
1213 - elog
1214 - elog " usermod -aG audio <youruser>"
1215 - elog
1216 -
1217 - if ! use jack-sdk; then
1218 - elog "JACK emulation is incomplete and not all programs will work. PipeWire's"
1219 - elog "alternative libraries have been installed to a non-default location."
1220 - elog "To use them, put pw-jack <application> before every JACK application."
1221 - elog "When using pw-jack, do not run jackd/jackdbus. However, a virtual/jack"
1222 - elog "provider is still needed to compile the JACK applications themselves."
1223 - elog
1224 - fi
1225 -
1226 - if use systemd; then
1227 - elog "To use PipeWire for audio, the user units must be manually enabled:"
1228 - elog
1229 - elog " systemctl --user enable pipewire.socket pipewire-pulse.socket"
1230 - elog
1231 - elog "When switching from PulseAudio, do not forget to disable PulseAudio:"
1232 - elog
1233 - elog " systemctl --user disable pulseaudio.service pulseaudio.socket"
1234 - elog
1235 - elog "A reboot is recommended to avoid interferences from still running"
1236 - elog "PulseAudio daemon."
1237 - elog
1238 - elog "Both, new users and those upgrading, need to enable pipewire-media-session:"
1239 - elog
1240 - elog " systemctl --user enable pipewire-media-session.service"
1241 - elog
1242 - else
1243 - elog "This ebuild auto-enables PulseAudio replacement. Because of that, users"
1244 - elog "are recommended to edit: ${EROOT}/etc/pulse/client.conf and disable "
1245 - elog "autospawn'ing of the original daemon by setting:"
1246 - elog
1247 - elog " autospawn = no"
1248 - elog
1249 - elog "Please note that the semicolon (;) must _NOT_ be at the beginning of the line!"
1250 - elog
1251 - elog "Alternatively, if replacing PulseAudio daemon is not desired, edit"
1252 - elog "${EROOT}/etc/pipewire/pipewire.conf by commenting out the relevant"
1253 - elog "command near the end of the file:"
1254 - elog
1255 - elog "#\"/usr/bin/pipewire\" = { args = \"-c pipewire-pulse.conf\" }"
1256 - elog
1257 - elog "NOTE:"
1258 - elog "Starting with PipeWire-0.3.30, package is no longer installing config"
1259 - elog "into ${EROOT}/etc/pipewire by default. In case you need to change"
1260 - elog "config, please start by copying default config from ${EROOT}/usr/share/pipewire"
1261 - elog "and just override sections you want to change."
1262 - fi
1263 -
1264 - elog "For latest tips and tricks, troubleshooting information and documentation"
1265 - elog "in general, please refer to https://wiki.gentoo.org/wiki/PipeWire"
1266 - elog
1267 -
1268 - optfeature_header "The following can be installed for optional runtime features:"
1269 - optfeature "restricted realtime capabilities via D-Bus" sys-auth/rtkit
1270 - # Once hsphfpd lands in tree, both it and ofono will need to be checked for presence here!
1271 - if use bluetooth; then
1272 - optfeature "better BT headset support (daemon startup required)" net-misc/ofono
1273 - #optfeature "an oFono alternative (not packaged)" foo-bar/hsphfpd
1274 - fi
1275 -}