summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Väth <martin@mvath.de>2022-05-13 21:09:01 +0200
committerMartin Väth <martin@mvath.de>2022-05-13 21:09:01 +0200
commit2c7e2fa53800118284b5496782839e2b1ac99ed2 (patch)
tree87e5f37ef5e784d968714b6b483f9581ac637792 /media-video
parentapp-portage/eix: BDEPEND on virtual/pkgconfig (diff)
downloadmv-2c7e2fa53800118284b5496782839e2b1ac99ed2.tar.gz
mv-2c7e2fa53800118284b5496782839e2b1ac99ed2.tar.bz2
mv-2c7e2fa53800118284b5496782839e2b1ac99ed2.zip
media-video/pipewire: Version bump
Signed-off-by: Martin Väth <martin@mvath.de>
Diffstat (limited to 'media-video')
-rw-r--r--media-video/pipewire/Manifest2
-rw-r--r--media-video/pipewire/files/99-pipewire-default-hook.conf17
-rw-r--r--media-video/pipewire/pipewire-0.3.51-r1.ebuild (renamed from media-video/pipewire/pipewire-0.3.50.ebuild)22
3 files changed, 34 insertions, 7 deletions
diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest
index 63ae294d..d1440dc4 100644
--- a/media-video/pipewire/Manifest
+++ b/media-video/pipewire/Manifest
@@ -1 +1 @@
-DIST pipewire-0.3.50.tar.gz 1773182 BLAKE2B d286b73553471795ea8ed60c82e12c955f1835a7a3a8d45baeda6b1e20a795221230b50c21619af4ef5b2b4962d2783de00b1ab2b22b091220970c334de8b9dc SHA512 e29a626258ab28d74e35e310037fac374fe009fb56e0fa41cef7abb1ec6abb26f828cff1b17500f92f1dd4c95c1e0e98f6af497d315dd463f81c2649d1e8ee23
+DIST pipewire-0.3.51.tar.gz 1789070 BLAKE2B 8538eb9f2178efa26365f30b324b707826e580caa1fd9c09b62c561c140c14186e0d2b04808fa78eb5642ddccf1a347def19934ecd654be06b215a693075b6fc SHA512 a762fd260b4b14ad9ef142be11ab1c22268da6726e2179559ffb254f0ce7daf7a502779e33c64313a9c6a9fc1bd15150b76be04ec81aa27c35dbb4333cecdb4a
diff --git a/media-video/pipewire/files/99-pipewire-default-hook.conf b/media-video/pipewire/files/99-pipewire-default-hook.conf
new file mode 100644
index 00000000..7145acce
--- /dev/null
+++ b/media-video/pipewire/files/99-pipewire-default-hook.conf
@@ -0,0 +1,17 @@
+# Load pipewire configuration at conf hook processing time. This allows to
+# override pulseaudio defaults configuration which is also applied via hook.
+#
+# Note since hooks are run after @GENTOO_PORTAGE_EPREFIX@/etc/asound.conf and ~/.asoundrc are applied,
+# we load these again here make sure that user configuration takes precedence.
+
+@hooks [
+ {
+ func load
+ files [
+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/alsa/alsa.conf.d/99-pipewire-default.conf"
+ "@GENTOO_PORTAGE_EPREFIX@/etc/asound.conf"
+ "~/.asoundrc"
+ ]
+ errors false
+ }
+]
diff --git a/media-video/pipewire/pipewire-0.3.50.ebuild b/media-video/pipewire/pipewire-0.3.51-r1.ebuild
index e496f75f..48897304 100644
--- a/media-video/pipewire/pipewire-0.3.50.ebuild
+++ b/media-video/pipewire/pipewire-0.3.51-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
-inherit meson-multilib optfeature prefix python-any-r1 systemd udev
+inherit flag-o-matic meson-multilib optfeature prefix python-any-r1 systemd udev
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
@@ -28,7 +28,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="alsa bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk lv2 pipewire-alsa ssl system-service systemd test v4l X zeroconf"
+IUSE="alsa bluetooth doc echo-cancel extra gstreamer jack-client jack-sdk lv2 pipewire-alsa ssl system-service systemd test udev v4l X zeroconf"
# Once replacing system JACK libraries is possible, it's likely that
# jack-client IUSE will need blocking to avoid users accidentally
@@ -60,7 +60,6 @@ RDEPEND="
sys-libs/readline:=
sys-libs/ncurses:=[unicode(+)]
virtual/libintl[${MULTILIB_USEDEP}]
- virtual/libudev[${MULTILIB_USEDEP}]
bluetooth? (
media-libs/fdk-aac
media-libs/libldac
@@ -86,7 +85,6 @@ RDEPEND="
lv2? ( media-libs/lilv )
pipewire-alsa? (
>=media-libs/alsa-lib-1.1.7[${MULTILIB_USEDEP}]
- !media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio]
)
!pipewire-alsa? ( alsa? ( media-plugins/alsa-plugins[${MULTILIB_USEDEP},pulseaudio] ) )
ssl? ( dev-libs/openssl:= )
@@ -95,6 +93,7 @@ RDEPEND="
acct-user/pipewire
acct-group/pipewire
)
+ udev? ( virtual/libudev[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l )
X? (
media-libs/libcanberra
@@ -154,6 +153,9 @@ src_prepare() {
}
multilib_src_configure() {
+ # https://bugs.gentoo.org/838301
+ filter-flags -fno-semantic-interposition
+
local emesonargs=(
-Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
@@ -206,7 +208,7 @@ multilib_src_configure() {
-Dvolume=enabled # Matches upstream
-Dvulkan=disabled # Uses pre-compiled Vulkan compute shader to provide a CGI video source (dev thing; disabled by upstream)
$(meson_native_use_feature extra pw-cat)
- -Dudev=enabled
+ $(meson_feature udev)
-Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
-Dsdl2=disabled # Controls SDL2 dependent code (currently only examples when -Dinstalled_tests=enabled which we never install)
$(meson_native_use_feature extra sndfile) # Enables libsndfile dependent code (currently only pw-cat)
@@ -234,10 +236,16 @@ multilib_src_install_all() {
if use pipewire-alsa; then
dodir /etc/alsa/conf.d
+
+ # Install pipewire conf loader hook
+ insinto /usr/share/alsa/alsa.conf.d
+ doins "${FILESDIR}"/99-pipewire-default-hook.conf
+ eprefixify "${ED}"/usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf
+
# These will break if someone has /etc that is a symbolic link to a subfolder! See #724222
# And the current dosym8 -r implementation is likely affected by the same issue, too.
dosym ../../../usr/share/alsa/alsa.conf.d/50-pipewire.conf /etc/alsa/conf.d/50-pipewire.conf
- dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/99-pipewire-default.conf
+ dosym ../../../usr/share/alsa/alsa.conf.d/99-pipewire-default-hook.conf /etc/alsa/conf.d/99-pipewire-default-hook.conf
fi
if ! use systemd; then
@@ -251,6 +259,8 @@ multilib_src_install_all() {
}
pkg_postinst() {
+ use udev && udev_reload
+
elog "It is recommended to raise RLIMIT_MEMLOCK to 256 for users"
elog "using PipeWire. Do it either manually or add yourself"
elog "to the 'audio' group:"