From 55bd8adbe7f7d0f3b20de955d171916fb0507be1 Mon Sep 17 00:00:00 2001 From: Nicolas PARLANT Date: Mon, 17 Nov 2025 13:46:45 +0100 Subject: [PATCH] media-sound/audacious: add 4.5.1 add github repo in metadata enable the test add missing bdeps gettext (msgfmt) and gdbus-codegen move the skin gentoo_ice for Winamp into audacious-plugins like other skins Winamp is only usable with X11/XWayland : patch to avoid superfluous handling for X11/Wayland for gtk+, warn in pkg_postinst instead Closes: https://bugs.gentoo.org/965338 Signed-off-by: Nicolas PARLANT Part-of: https://github.com/gentoo/gentoo/pull/44670 Signed-off-by: Sam James --- media-sound/audacious/Manifest | 1 + media-sound/audacious/audacious-4.5.1.ebuild | 92 +++++++++++++++++++ .../audacious-4.5.1-rm_gdk_symbols.patch | 12 +++ media-sound/audacious/metadata.xml | 3 + 4 files changed, 108 insertions(+) create mode 100644 media-sound/audacious/audacious-4.5.1.ebuild create mode 100644 media-sound/audacious/files/audacious-4.5.1-rm_gdk_symbols.patch diff --git a/media-sound/audacious/Manifest b/media-sound/audacious/Manifest index fce17d529237..58b8741dbc6b 100644 --- a/media-sound/audacious/Manifest +++ b/media-sound/audacious/Manifest @@ -1,2 +1,3 @@ DIST audacious-4.4.2.tar.bz2 636838 BLAKE2B 6e0b4e099660249d3631091e6c38e2b2ad40e2fafeb9e85bb365134fe1c28f128f294bdeadf50643329569c21475fc6d0da8e41fb9839cff0131ddce61597c72 SHA512 a1a561ac969863555aa349c068d85398bc6e58c3f11b74842799c7ed1287a826bd6ce9624421b9da47354a632d2e0ccb8326de27c0730028d98dd85fa0c061c1 +DIST audacious-4.5.1.tar.bz2 642359 BLAKE2B f1862541e95ec4fac16515c9a65a93252cd9f465fc2727a4b296439b0cca77b98f2e3ef994ed5f23c49de2a8a502ddfd5a630566cd2415ccfc5988a48f6ca740 SHA512 e30408164df84a1d3fa3ee116f3690c5c03c6894fa474f01c17af79bf2e4ba72a1b89ca8056581a878d92ecc33e2e1f008d1c927372fb074245b1dcc4d403156 DIST gentoo_ice-xmms-0.2.tar.bz2 51839 BLAKE2B d3bf8dbfee675dd588bc0258f1015c76877b6b0a3835813d8e9621d149b924aaa33544d07f7ad44a01c058d41d7480b3908b0773c124af33b6e020c376b13d54 SHA512 e863a8f86073007c47ce8c20739aae4bff22e22a7ddc11556b12ae6ebb68654cec7310fdc9d05f2c47f81cf2591fe601b2eb12a2fd911c0a6118c9f3cc524f05 diff --git a/media-sound/audacious/audacious-4.5.1.ebuild b/media-sound/audacious/audacious-4.5.1.ebuild new file mode 100644 index 000000000000..5c66ec3ae1f2 --- /dev/null +++ b/media-sound/audacious/audacious-4.5.1.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson xdg + +DESCRIPTION="Lightweight and versatile audio player" +HOMEPAGE="https://audacious-media-player.org/" +SRC_URI="https://distfiles.audacious-media-player.org/${P}.tar.bz2" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~riscv ~x86" +IUSE="gtk qt6 test" +REQUIRED_USE="test? ( qt6 )" +RESTRICT="!test? ( test )" + +BDEPEND=" + dev-util/gdbus-codegen + sys-devel/gettext + virtual/pkgconfig +" +DEPEND=" + dev-libs/glib:2 + virtual/freedesktop-icon-theme + gtk? ( + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + >=x11-libs/gtk+-3.18:3 + x11-libs/pango + ) + qt6? ( + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtsvg:6 + ) +" +RDEPEND="${DEPEND}" +PDEPEND="~media-plugins/audacious-plugins-${PV}[gtk=,qt6=]" + +PATCHES=( + # Avoid superfluous handling for X11/Wayland with gtk+, warn in pkg_postinst instead. + "${FILESDIR}"/${PN}-4.5.1-rm_gdk_symbols.patch +) + +src_configure() { + # D-Bus is a mandatory dependency. Remote control, + # session management and some plugins depend on this. + # Building without D-Bus is *unsupported* and a USE-flag + # will not be added due to the bug reports that will result. + # Bugs #197894, #199069, #207330, #208606 + local emesonargs=( + -Ddbus=true + $(meson_use qt6 qt) + -Dqt5=false + $(meson_use gtk) + -Dgtk2=false + -Dlibarchive=false + -Dbuildstamp="Gentoo ${P}" + -Dvalgrind=false + ) + meson_src_configure + + if use test; then + emesonargs=() + EMESON_SOURCE="${S}"/src/libaudcore/tests \ + BUILD_DIR="${WORKDIR}"/${P}-libaudcore_tests-build \ + meson_src_configure + fi +} + +src_compile() { + meson_src_compile + + if use test; then + EMESON_SOURCE="${S}"/src/libaudcore/tests \ + BUILD_DIR="${WORKDIR}"/${P}-libaudcore_tests-build \ + meson_src_compile + fi +} + +src_test() { + BUILD_DIR="${WORKDIR}"/${P}-libaudcore_tests-build meson_src_test +} + +pkg_postinst() { + if use gtk || use qt6; then + ewarn "Audacious without X11/XWayland is unsupported." + ewarn "Especially the Winamp interface is not usable yet on Wayland." + fi + xdg_pkg_postinst +} diff --git a/media-sound/audacious/files/audacious-4.5.1-rm_gdk_symbols.patch b/media-sound/audacious/files/audacious-4.5.1-rm_gdk_symbols.patch new file mode 100644 index 000000000000..5743340b5934 --- /dev/null +++ b/media-sound/audacious/files/audacious-4.5.1-rm_gdk_symbols.patch @@ -0,0 +1,12 @@ +Avoid superfluous handling for X11/Wayland with gtk+, warn in pkg_postinst intead. +--- a/src/libaudgui/init.cc ++++ b/src/libaudgui/init.cc +@@ -342,7 +342,7 @@ EXPORT void audgui_init () + if (init_count ++) + return; + +-#if defined(GDK_WINDOWING_WAYLAND) && defined(GDK_WINDOWING_X11) ++#if 0 /// Avoid handling X11/Wayland just for that. Warn in pkg_postinst instead + // Use X11/XWayland by default, but allow to overwrite it. + // Especially the Winamp interface is not usable yet on Wayland + // due to limitations regarding application-side window positioning. diff --git a/media-sound/audacious/metadata.xml b/media-sound/audacious/metadata.xml index 93423219a5bc..233f1917a7b0 100644 --- a/media-sound/audacious/metadata.xml +++ b/media-sound/audacious/metadata.xml @@ -5,4 +5,7 @@ sound@gentoo.org Gentoo Sound project + + audacious-media-player/audacious +