diff --git a/media-video/wireplumber/Manifest b/media-video/wireplumber/Manifest index 51ca28e208bc4..a211509b9491b 100644 --- a/media-video/wireplumber/Manifest +++ b/media-video/wireplumber/Manifest @@ -1,2 +1,3 @@ DIST wireplumber-0.5.10.tar.bz2 423061 BLAKE2B ec39d4687e5e16a46178cbbe53dcf8f21aa697a6db9304f26d21cedda19131fd1e097c29255819578966bc5026110f44599efc94aa6a069ded8d5eb827fa3fed SHA512 53e1518ccc9f607dcbef9cfdc459804ac077ca11b79f215a2466332f5c67e9eace1b9bc05f1e7320e34a915c99a1b3ffdbb8963fadbdd1e3af85b3d0af09a32d +DIST wireplumber-0.5.11.tar.bz2 436646 BLAKE2B 5044ad0d0b0cfc948ba28e61f21dfe390fa3a29ccf121959be81e48623b65bc6b9c25c872197fd5d49391bd4bb8b73ee0fd101116ae7eb5b1741a5348bc3b830 SHA512 782b266a4be9663c73f892f01a4de5b154ddfc1dfcc51a17e0783a30660168991905c37aa604609a107432d05da7199d1ed770d806864c588fc116762bb06c6e DIST wireplumber-0.5.8.tar.bz2 419851 BLAKE2B 2d811534771d57206bcac467b2241e0b6f67259a7399de2d28f758768317d652aa1c9cd2cc5327e3528928e3aa59cef2c94873688d9ecc935aaecb4078a81db9 SHA512 bb3a4a3bc9fd0ece7fccb4efa32d01b02d68738b7766dd4b3310471c4bb98cc499b324ef0643079665d175e3267c1b4e53deef6ebdd9600e49a9560adb22ad88 diff --git a/media-video/wireplumber/wireplumber-0.5.11.ebuild b/media-video/wireplumber/wireplumber-0.5.11.ebuild new file mode 100644 index 0000000000000..25ddc1c5fa567 --- /dev/null +++ b/media-video/wireplumber/wireplumber-0.5.11.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# 1. Please regularly check (even at the point of bumping) Fedora's packaging +# for needed backports at https://src.fedoraproject.org/rpms/wireplumber/tree/rawhide +# +# 2. Keep an eye on git master (for both PipeWire and WirePlumber) as things +# continue to move quickly. It's not uncommon for fixes to be made shortly +# after releases. + +LUA_COMPAT=( lua5-{3,4} ) +PYTHON_COMPAT=( python3_{11..14} ) + +inherit lua-single meson python-any-r1 systemd + +DESCRIPTION="Replacement for pipewire-media-session" +HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber" + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/pipewire/${PN}.git" + EGIT_BRANCH="master" + inherit git-r3 +else + SRC_URI="https://gitlab.freedesktop.org/pipewire/${PN}/-/archive/${PV}/${P}.tar.bz2" + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="MIT" +SLOT="0/0.5" +IUSE="elogind system-service systemd test" + +REQUIRED_USE=" + ${LUA_REQUIRED_USE} + ?? ( elogind systemd ) + system-service? ( systemd ) +" + +RESTRICT="!test? ( test )" + +# introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building +BDEPEND=" + ${PYTHON_DEPS} + dev-libs/glib + dev-util/gdbus-codegen + dev-util/glib-utils + sys-devel/gettext + test? ( sys-apps/dbus ) +" +DEPEND=" + ${LUA_DEPS} + >=dev-libs/glib-2.68 + >=media-video/pipewire-1.0.5-r1:= + virtual/libintl + elogind? ( sys-auth/elogind ) + systemd? ( sys-apps/systemd ) +" +RDEPEND=" + ${DEPEND} + system-service? ( + acct-user/pipewire + acct-group/pipewire + ) +" + +DOCS=( {NEWS,README}.rst ) + +PATCHES=( + # Defer enabling sound server parts to media-video/pipewire + # TODO: Soon, we should be able to migrate to just a dropin at + # /usr/share. See https://gitlab.freedesktop.org/pipewire/wireplumber/-/issues/652#note_2399735. + "${FILESDIR}"/${PN}-0.5.6-config-disable-sound-server-parts.patch +) + +pkg_setup() { + lua-single_pkg_setup + python-any-r1_pkg_setup +} + +src_configure() { + local emesonargs=( + -Ddaemon=true + -Dtools=true + -Dmodules=true + # Ebuild not wired up yet (Sphinx, Doxygen?) + -Ddoc=disabled + # Only used for Sphinx doc generation + -Dintrospection=disabled + -Dsystem-lua=true + -Dsystem-lua-version=$(ver_cut 1-2 $(lua_get_version)) + $(meson_feature elogind) + $(meson_feature systemd) + $(meson_use system-service systemd-system-service) + $(meson_use systemd systemd-user-service) + -Dsystemd-system-unit-dir=$(systemd_get_systemunitdir) + -Dsystemd-user-unit-dir=$(systemd_get_userunitdir) + $(meson_use test tests) + $(meson_use test dbus-tests) + ) + + meson_src_configure +} + +src_install() { + meson_src_install + + exeinto /etc/user/init.d + newexe "${FILESDIR}"/wireplumber.initd wireplumber + + mv "${ED}"/usr/share/doc/wireplumber/* "${ED}"/usr/share/doc/${PF} || die + rmdir "${ED}"/usr/share/doc/wireplumber || die +} + +pkg_postinst() { + if use system-service; then + ewarn + ewarn "WARNING: you have enabled the system-service USE flag, which installs" + ewarn "the system-wide systemd units that enable WirePlumber to run as a system" + ewarn "service. This is more than likely NOT what you want. You are strongly" + ewarn "advised not to enable this mode and instead stick with systemd user" + ewarn "units. The default configuration files will likely not work out of" + ewarn "box, and you are on your own with configuration." + ewarn + fi +} diff --git a/media-video/wireplumber/wireplumber-9999.ebuild b/media-video/wireplumber/wireplumber-9999.ebuild index 0e78c0d09113a..25ddc1c5fa567 100644 --- a/media-video/wireplumber/wireplumber-9999.ebuild +++ b/media-video/wireplumber/wireplumber-9999.ebuild @@ -11,8 +11,9 @@ EAPI=8 # after releases. LUA_COMPAT=( lua5-{3,4} ) +PYTHON_COMPAT=( python3_{11..14} ) -inherit lua-single meson systemd +inherit lua-single meson python-any-r1 systemd DESCRIPTION="Replacement for pipewire-media-session" HOMEPAGE="https://gitlab.freedesktop.org/pipewire/wireplumber" @@ -40,6 +41,7 @@ RESTRICT="!test? ( test )" # introspection? ( dev-libs/gobject-introspection ) is valid but likely only used for doc building BDEPEND=" + ${PYTHON_DEPS} dev-libs/glib dev-util/gdbus-codegen dev-util/glib-utils @@ -71,6 +73,11 @@ PATCHES=( "${FILESDIR}"/${PN}-0.5.6-config-disable-sound-server-parts.patch ) +pkg_setup() { + lua-single_pkg_setup + python-any-r1_pkg_setup +} + src_configure() { local emesonargs=( -Ddaemon=true