commit:     b647d80dd8b2e7ea08e209a0744146c1a320428c
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Mon Nov 17 12:53:13 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec  4 12:16:21 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b647d80d

media-plugins/audacious-plugins: add 4.5.1

add github repo in metadata

useflags/deps :
remove unneeded option name in meson_use
libnotify : x11-libs/gdk-pixbuf required, move into gtk and qt6
move into gtk : x11-libs/gdk-pixbuf
move into qt6 : ampache, streamtuner, qtmedia (make it optional)
flac, media-libs/libvorbis is not required
jack, rm media-libs/bio2jack, no longer required since 3.6
mp3, enable by default instead of a warning
opengl w/ gtk, use media-libs/libglvnd[X] (GL/glx.h) instead of virtual/opengl
opengl w/ qt6, disable gles2-only support (#942872)
sdl, switch to libsdl3 (even if libsdl2 is still supported)
speedpitch, rm and use existing libsamplerate instead
add workaround for gtk+ (GDK_*X11 gl-spectrum.cc, GDK_*Wayland skins/plugin.cc)
remove / update min_req from meson files

install the skin gentoo_ice for Winamp (w/ X), moved from media-sound/audacious

the skin Winamp2.9 is copyrighted, so revert upstream' commit 367e7a3
see comments at https://www.gnome-look.org/p/1008229 and bug 965338

Closes: https://bugs.gentoo.org/941196
Closes: https://bugs.gentoo.org/942872
Closes: https://bugs.gentoo.org/959860
Closes: https://bugs.gentoo.org/965339
Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/44670
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-plugins/audacious-plugins/Manifest           |   2 +
 .../audacious-plugins-4.5.1.ebuild                 | 235 +++++++++++++++++++++
 media-plugins/audacious-plugins/metadata.xml       |   4 +
 3 files changed, 241 insertions(+)

diff --git a/media-plugins/audacious-plugins/Manifest 
b/media-plugins/audacious-plugins/Manifest
index a0ec4a1d2de9..37eb95c2d383 100644
--- a/media-plugins/audacious-plugins/Manifest
+++ b/media-plugins/audacious-plugins/Manifest
@@ -1 +1,3 @@
 DIST audacious-plugins-4.4.2.tar.bz2 1816431 BLAKE2B 
e25b8558f3238bcfa076b6aa192f33365da478dc6c1a9500ac36be8a7dd0a51265b5d951098247c1dd8532b2d9cc87cf4705f1226c917659bffb0b1d0a1a3bd2
 SHA512 
d7951b779a0d2d56efc2372125a4565cb2054bd64d7f1e25dfa7bb0042e7df0b6a40d776910b444fda61ba79aeb7bb010316ec1353a877f89f2bc8f1a3e9b342
+DIST audacious-plugins-4.5.1.tar.bz2 1907432 BLAKE2B 
de0e275184b44fcd9d82610e81b145cca19fbf83e1d743b38b256753c81de357ed198ef97afc0404e1d6c13a1605506d65d2900442dd73aa0642d67ec7224ac1
 SHA512 
432154033e23cb47f408d5441e1586e4790887d1bda5be6f01a2335e9933a2a9ca45d6c5b13bd70da014f86c54edb13517497e2a8af6dcdb391faab9e0d58960
+DIST gentoo_ice-xmms-0.2.tar.bz2 51839 BLAKE2B 
d3bf8dbfee675dd588bc0258f1015c76877b6b0a3835813d8e9621d149b924aaa33544d07f7ad44a01c058d41d7480b3908b0773c124af33b6e020c376b13d54
 SHA512 
e863a8f86073007c47ce8c20739aae4bff22e22a7ddc11556b12ae6ebb68654cec7310fdc9d05f2c47f81cf2591fe601b2eb12a2fd911c0a6118c9f3cc524f05

diff --git a/media-plugins/audacious-plugins/audacious-plugins-4.5.1.ebuild 
b/media-plugins/audacious-plugins/audacious-plugins-4.5.1.ebuild
new file mode 100644
index 000000000000..a5cd5732f767
--- /dev/null
+++ b/media-plugins/audacious-plugins/audacious-plugins-4.5.1.ebuild
@@ -0,0 +1,235 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic meson
+
+DESCRIPTION="Lightweight and versatile audio player"
+HOMEPAGE="https://audacious-media-player.org/";
+SRC_URI="
+       https://distfiles.audacious-media-player.org/${P}.tar.bz2
+       mirror://gentoo/gentoo_ice-xmms-0.2.tar.bz2
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~riscv ~x86"
+IUSE="
+       aac +alsa ampache bs2b cdda cue ffmpeg flac fluidsynth gme gtk http jack
+       lame libnotify libsamplerate lirc mms modplug +mp3 opengl openmpt opus
+       pipewire pulseaudio qt6 qtmedia scrobbler sdl sid sndfile soxr 
streamtuner
+       vorbis wavpack wayland X
+"
+
+REQUIRED_USE="
+       ampache? ( http )
+       streamtuner? ( http )
+"
+
+# The following plugins REQUIRE a GUI build of audacious, because non-GUI
+# builds do NOT install the libaudgui library & headers.
+# Plugins without a configure option:
+#   albumart{,-qt}
+#   blur-scope{,-qt}
+#   delete-files
+#   filebrowser-qt
+#   ladspa
+#   lyrics-{gtk,qt}
+#   playback-history-qt
+#   playlist-manager{,-qt}
+#   search-tool{,-qt}
+#   song-info-qt
+#   spectrum-analyzer
+#   statusicon{,-qt}
+#   skins{,-qt}
+# Plugins with a configure option:
+#   aosd (X+gtk)
+#   ampache (qt6)
+#   glspectrum (X) (handles qtglspectrum if qt6)
+#   gtkui
+#   hotkey (X) (handles qthotkey if qt6)
+#   notify
+#   qtui
+#   streamtuner (qt6)
+#   vumeter{,-qt} (forced)
+BDEPEND="
+       dev-util/gdbus-codegen
+       virtual/pkgconfig
+"
+DEPEND="
+       app-arch/unzip
+       dev-libs/glib:2
+       dev-libs/libxml2:2=
+       ~media-sound/audacious-${PV}[gtk=,qt6=]
+       virtual/zlib:=
+       aac? ( media-libs/faad2 )
+       alsa? ( >=media-libs/alsa-lib-1.0.16 )
+       bs2b? ( >=media-libs/libbs2b-3.0.0 )
+       cdda? (
+               >=dev-libs/libcdio-0.70:=
+               dev-libs/libcdio-paranoia:=
+               >=media-libs/libcddb-1.2.1
+       )
+       cue? ( media-libs/libcue:= )
+       ffmpeg? ( >=media-video/ffmpeg-2.8.1:= )
+       flac? ( >=media-libs/flac-1.2.1-r1:= )
+       fluidsynth? ( >=media-sound/fluidsynth-1.0.6:= )
+       gtk? (
+               >=dev-libs/json-glib-1.0
+               x11-libs/cairo
+               >=x11-libs/gdk-pixbuf-2.26:2
+               >=x11-libs/gtk+-3.22:3[wayland?,X?]
+               x11-libs/pango
+               libnotify? ( >=x11-libs/libnotify-0.7 )
+               X? (
+                       x11-libs/libX11
+                       x11-libs/libXcomposite
+                       x11-libs/libXrender
+                       opengl? ( media-libs/libglvnd[X] )
+               )
+       )
+       http? ( >=net-libs/neon-0.27:= )
+       jack? ( virtual/jack )
+       lame? ( media-sound/lame )
+       libsamplerate? ( media-libs/libsamplerate )
+       lirc? ( app-misc/lirc )
+       mms? ( >=media-libs/libmms-0.3 )
+       modplug? ( media-libs/libmodplug )
+       mp3? ( >=media-sound/mpg123-base-1.12 )
+       openmpt? ( >=media-libs/libopenmpt-0.2 )
+       opus? ( >=media-libs/opusfile-0.4 )
+       pipewire? ( >=media-video/pipewire-0.3.33:= )
+       pulseaudio? ( >=media-libs/libpulse-0.9.5 )
+       qt6? (
+               dev-qt/qtbase:6[gui,widgets]
+               ampache? ( >=media-libs/ampache_browser-1.0.7-r1 )
+               libnotify? (
+                       >=x11-libs/gdk-pixbuf-2.26:2
+                       >=x11-libs/libnotify-0.7
+               )
+               opengl? ( dev-qt/qtbase:6[-gles2-only,opengl] )
+               qtmedia? ( dev-qt/qtmultimedia:6 )
+               streamtuner? ( dev-qt/qtbase:6[network] )
+               X? (
+                       dev-qt/qtbase:6[X]
+                       x11-libs/libX11
+               )
+       )
+       scrobbler? ( >=net-misc/curl-7.9.7 )
+       sdl? ( >=media-libs/libsdl3-3.2.0 )
+       sid? ( >=media-libs/libsidplayfp-2.0:= )
+       sndfile? ( >=media-libs/libsndfile-1.0.17-r1 )
+       soxr? ( media-libs/soxr )
+       vorbis? (
+               >=media-libs/libogg-1.1.3
+               >=media-libs/libvorbis-1.2.0
+       )
+       wavpack? ( >=media-sound/wavpack-4.50.1-r1 )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       default
+       # avoid automagic for glspectrum
+       if ! use X; then
+               sed -i -e "s/dependency('x11',.*)/disabler()/" meson.build || 
die
+       fi
+}
+
+src_configure() {
+       # defang automagic dependencies
+       use X || append-cppflags -DGENTOO_GTK_HIDE_X11
+       use wayland || append-cppflags -DGENTOO_GTK_HIDE_WAYLAND
+
+       local emesonargs=(
+               # GUI toolkits
+               $(meson_use gtk)
+               -Dgtk2=false
+               $(meson_use qt6 qt)
+               -Dqt5=false
+
+               # container plugins
+               $(meson_use cue)
+
+               # transport plugins
+               $(meson_use mms)
+               $(meson_use http neon)
+
+               # input plugins
+               $(meson_use aac)
+               -Dadplug=false
+               $(meson_use fluidsynth amidiplug)
+               $(meson_use cdda cdaudio)
+               $(meson_use gme console)
+               $(meson_use ffmpeg ffaudio)
+               $(meson_use flac)
+               $(meson_use modplug)
+               $(meson_use mp3 mpg123)
+               $(meson_use openmpt)
+               $(meson_use opus)
+               $(meson_use sid)
+               $(meson_use sndfile)
+               $(meson_use vorbis)
+               $(meson_use wavpack)
+
+               # output plugins
+               $(meson_use alsa)
+               -Dcoreaudio=false
+               # filewriter
+               $(meson_use flac filewriter-flac)
+               $(meson_use lame filewriter-mp3)
+               $(meson_use vorbis filewriter-ogg)
+               $(meson_use jack)
+               -Doss=false
+               $(meson_use pipewire)
+               $(meson_use pulseaudio pulse)
+               $(meson_use qtmedia qtaudio)
+               $(meson_use sdl sdlout)
+               -Dsndio=false
+
+               # general plugins
+               $(meson_use ampache)
+               $(meson_use X aosd)
+               $(meson_use X hotkey)
+               $(meson_use lirc)
+               -Dmac-media-keys=false
+               -Dmpris2=true
+               $(meson_use libnotify notify)
+               $(meson_use scrobbler scrobbler2)
+               -Dsongchange=true
+               $(meson_use streamtuner)
+
+               # effect plugins
+               $(meson_use bs2b)
+               $(meson_use libsamplerate resample)
+               $(meson_use libsamplerate speedpitch)
+               $(meson_use soxr)
+
+               # visualization plugins
+               $(meson_use opengl gl-spectrum)
+               -Dvumeter=true
+       )
+
+       meson_src_configure
+}
+
+src_install() {
+       meson_src_install
+
+       # the skin Winamp2.9 is copyrighted, so revert upstream' commit 367e7a3
+       # see comments at https://www.gnome-look.org/p/1008229 and bug #965338
+       # part of skins-data which depends on gui
+       if use gtk || use qt6; then
+               rm -r "${ED}"/usr/share/audacious/Skins/Winamp2.9 || die
+       fi
+
+       # Gentoo_ice Winamp skin installation; bug #109772
+       # The Winamp interface is not supported on Wayland.
+       if use X; then
+               insinto /usr/share/audacious/Skins/gentoo_ice
+               doins -r "${WORKDIR}"/gentoo_ice/.
+               docinto gentoo_ice
+               dodoc "${WORKDIR}"/README
+       fi
+}

diff --git a/media-plugins/audacious-plugins/metadata.xml 
b/media-plugins/audacious-plugins/metadata.xml
index c4af189aeb30..634760589f7e 100644
--- a/media-plugins/audacious-plugins/metadata.xml
+++ b/media-plugins/audacious-plugins/metadata.xml
@@ -14,9 +14,13 @@
                <flag name="http">Support HTTP streams through neon</flag>
                <flag name="openmpt">Add support for OpenMPT</flag>
                <flag name="pipewire">Build the PipeWire output plugin</flag>
+               <flag name="qtmedia">Enable playback via 
<pkg>dev-qt/qtmultimedia</pkg></flag>
                <flag name="scrobbler">Build with scrobbler/LastFM submission 
support</flag>
                <flag name="soxr">Build with SoX Resampler support</flag>
                <flag name="speedpitch">Enable speed/pitch effects</flag>
                <flag name="streamtuner">Build the streamtuner plugin</flag>
        </use>
+       <upstream>
+               <remote-id 
type="github">audacious-media-player/audacious-plugins</remote-id>
+       </upstream>
 </pkgmetadata>

Reply via email to