diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest index 2053f25..45b0cb5 100644 --- a/media-video/pipewire/Manifest +++ b/media-video/pipewire/Manifest @@ -1,2 +1,2 @@ -DIST pipewire-1.2.0-docs.tar.xz 58528 BLAKE2B b7abdfecd46239050ab80695c8f3d1a4e6a2aded3f9d64c435c64c7dc54a4e6ae32c3526da0fb4f6e2a22a6dbc8c768450ac2c0824b685022284eb1e1990c038 SHA512 25792090f258acc6cd52231be3918f0edaefeeb6c757acc748710a2e6f40ff7861a44e376dc9651742173c40153d3f848c9532257036ab874940270559d9c7f3 -DIST pipewire-1.2.6.tar.bz2 1818268 BLAKE2B 8b70af60a77436ed14119d0e57eef663b98e7e18841b61302b76e31befabaf9a63b4d01b9d5d3d582f598adb1d92f9c5e3aa3fdc9bec26f6aa1d0916fbdc6cf9 SHA512 6bb2e0a89fbbb1fc23cad18c2f34cf539a8414626a80174512833545a28493f9aaad96db8db8715dcf2f036cbd5133680d01188a38f58a8bd01af8deb4c343e0 +DIST pipewire-1.4.0-docs.tar.xz 67012 BLAKE2B 5d9f7432e33c86a5172ea310742a8e50312870eabab7f4357a1234580b8258c9bb83daa73fdcc1228c61629eb8555c00b961704671e55c6ed030f6c95b043397 SHA512 33791b64a577ead6975e0a615b1e4382ecafcc6f3dd6409ebd360c533312cab5f55f92a394bc42629ec4f53f17790ddedfb26a2b35cb4aa06ea07fd30bfce3d6 +DIST pipewire-1.4.2.tar.bz2 1917345 BLAKE2B b88e34fe29268f72602410f0fd62f3c3decd2ccf363f7e4a0eac2e6770486775c6fc8317cda9a59f729023c25118e052bb8bab00457fa828ca7f4ceb02959ecd SHA512 3c4341560240fd4be957c5ad6ef87d46ffe74846ea1a9c75db4470dfc62a02ce8db26d71c63117e4b33ac074ea5165b3bdf29fc31028aee2317ef09b2eca4acc diff --git a/media-video/pipewire/pipewire-1.2.6-r1.ebuild b/media-video/pipewire/pipewire-1.4.2.ebuild similarity index 95% rename from media-video/pipewire/pipewire-1.2.6-r1.ebuild rename to media-video/pipewire/pipewire-1.4.2.ebuild index 7847bec..3da9c25 100644 --- a/media-video/pipewire/pipewire-1.2.6-r1.ebuild +++ b/media-video/pipewire/pipewire-1.4.2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -26,7 +26,7 @@ PIPEWIRE_DOCS_PREBUILT_DEV=sam PIPEWIRE_DOCS_VERSION="$(ver_cut 1-2).0" # Default to generating docs (inc. man pages) if no prebuilt; overridden later PIPEWIRE_DOCS_USEFLAG="+man" -PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_COMPAT=( python3_{10..13} ) inherit meson-multilib optfeature prefix python-any-r1 systemd tmpfiles udev if [[ ${PV} == 9999 ]]; then @@ -56,7 +56,7 @@ HOMEPAGE="https://pipewire.org/" LICENSE="MIT LGPL-2.1+ GPL-2" # ABI was broken in 0.3.42 for https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/49 SLOT="0/0.4" -IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 lv2" +IUSE="${PIPEWIRE_DOCS_USEFLAG} bluetooth elogind dbus doc echo-cancel extra ffmpeg flatpak gstreamer gsettings ieee1394 jack-client jack-sdk liblc3 loudness lv2" IUSE+=" modemmanager pipewire-alsa readline roc selinux sound-server ssl system-service systemd test v4l X zeroconf +libcamera" # Once replacing system JACK libraries is possible, it's likely that @@ -100,8 +100,8 @@ BDEPEND=" # * While udev could technically be optional, it's needed for a number of options, # and not really worth it, bug #877769. # -# * Supports both legacy webrtc-audio-processing:0 and new webrtc-audio-processing:1. -# We depend on :1 as it prefers that, it's not legacy, and to avoid automagic. +# * Supports both legacy webrtc-audio-processing:2 and new webrtc-audio-processing:1. +# Automagic but :2 isn't yet packaged. # # * Older Doxygen (<1.9.8) may work but inferior output is created: # - https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1778 @@ -123,6 +123,7 @@ RDEPEND=" >=net-wireless/bluez-4.101:= virtual/libusb:1 ) + elogind? ( sys-auth/elogind ) dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) echo-cancel? ( >=media-libs/webrtc-audio-processing-1.2:1 ) extra? ( >=media-libs/libsndfile-1.0.20 ) @@ -141,11 +142,12 @@ RDEPEND=" !media-sound/jack2 ) liblc3? ( media-sound/liblc3 ) + loudness? ( media-libs/libebur128:=[${MULTILIB_USEDEP}] ) lv2? ( media-libs/lilv ) modemmanager? ( >=net-misc/modemmanager-1.10.0 ) - pipewire-alsa? ( >=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}] ) + pipewire-alsa? ( >=media-libs/alsa-lib-1.2.10[${MULTILIB_USEDEP}] ) sound-server? ( !media-sound/pulseaudio-daemon ) - roc? ( >=media-libs/roc-toolkit-0.3.0:= ) + roc? ( >=media-libs/roc-toolkit-0.4.0:= ) readline? ( sys-libs/readline:= ) selinux? ( sys-libs/libselinux ) ssl? ( dev-libs/openssl:= ) @@ -192,6 +194,15 @@ src_prepare() { } multilib_src_configure() { + local logind=disabled + if multilib_is_native_abi ; then + if use systemd ; then + logind=enabled + elif use elogind ; then + logind=enabled + fi + fi + local emesonargs=( -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} @@ -207,6 +218,8 @@ multilib_src_configure() { $(meson_native_use_feature gstreamer gstreamer-device-provider) $(meson_native_use_feature gsettings) $(meson_native_use_feature systemd) + -Dlogind=${logind} + -Dlogind-provider=$(usex systemd 'libsystemd' 'libelogind') $(meson_native_use_feature system-service systemd-system-service) -Dsystemd-system-unit-dir="$(systemd_get_systemunitdir)" @@ -230,6 +243,7 @@ multilib_src_configure() { $(meson_native_use_feature bluetooth bluez5-codec-aac) $(meson_native_use_feature bluetooth bluez5-codec-aptx) $(meson_native_use_feature bluetooth bluez5-codec-ldac) + $(meson_native_use_feature bluetooth bluez5-codec-g722) $(meson_native_use_feature bluetooth opus) $(meson_native_use_feature bluetooth bluez5-codec-opus) $(meson_native_use_feature bluetooth libusb) # At least for now only used by bluez5 native (quirk detection of adapters) @@ -248,6 +262,7 @@ multilib_src_configure() { -Dtest=disabled # fakesink and fakesource plugins -Dbluez5-codec-lc3plus=disabled # unpackaged $(meson_native_use_feature liblc3 bluez5-codec-lc3) + $(meson_feature loudness ebur128) $(meson_native_use_feature lv2) $(meson_native_use_feature v4l v4l2) -Dlibcamera=enabled # libcamera is not in Portage tree @@ -323,8 +338,12 @@ multilib_src_install_all() { dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf fi + exeinto /etc/user/init.d + newexe "${FILESDIR}"/pipewire.initd pipewire # Enable required wireplumber alsa and bluez monitors if use sound-server; then + newexe "${FILESDIR}"/pipewire-pulse.initd pipewire-pulse + # Install sound-server enabler for wireplumber 0.5.0+ conf syntax insinto /etc/wireplumber/wireplumber.conf.d doins "${FILESDIR}"/gentoo-sound-server-enable-audio-bluetooth.conf