commit:     2f8d59f16c233e10ddcb5cef3607e9441f542ef9
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Mon Dec 15 10:47:15 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Dec 15 16:22:56 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f8d59f1

media-sound/mixxx: Bump to 2.5.4

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

 media-sound/mixxx/Manifest           |   1 +
 media-sound/mixxx/mixxx-2.5.4.ebuild | 171 +++++++++++++++++++++++++++++++++++
 2 files changed, 172 insertions(+)

diff --git a/media-sound/mixxx/Manifest b/media-sound/mixxx/Manifest
index 7e489cb75fd4..b61c8467bb42 100644
--- a/media-sound/mixxx/Manifest
+++ b/media-sound/mixxx/Manifest
@@ -1 +1,2 @@
 DIST mixxx-2.5.3.tar.gz 40055675 BLAKE2B 
613d6eb774345eff58525442d4240227fe10910854f20833358640783bf4f7b429cbedded3b644c96dd7a7bdb9ff022458c4b0398a29c8d6723d7faeb7519607
 SHA512 
3dbb87fdc02e2dc38a370a7c78ce66140d69b6b84f6b5db986da83dc559de0a7ed9b9c72a52e94363eb86b94fee2176718b3d8fbc921fce1741a144bd693ea9d
+DIST mixxx-2.5.4.tar.gz 40315669 BLAKE2B 
130073f0484dc34e76e3ea306c71281dc153ffb731e8a64c51ede2d42d8b00f39778b50dc3290de008311b7365485e40604e19d8312858e682e479b86940421b
 SHA512 
ded35b6c3e6934de2f6d36c7dedc8c36b5d37cea675faf1adba870b1c1d64d8b86f12783fe5bb42828b6fbd2029fec5b2725752c295d71da70c3aa125cc13b9c

diff --git a/media-sound/mixxx/mixxx-2.5.4.ebuild 
b/media-sound/mixxx/mixxx-2.5.4.ebuild
new file mode 100644
index 000000000000..284303bcb6f6
--- /dev/null
+++ b/media-sound/mixxx/mixxx-2.5.4.ebuild
@@ -0,0 +1,171 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake dot-a udev xdg
+
+DESCRIPTION="Advanced Digital DJ tool based on Qt"
+HOMEPAGE="https://mixxx.org/";
+if [[ ${PV} == *9999 ]] ; then
+       inherit git-r3
+       if [[ ${PV} == ?.?.9999 ]] ; then
+               EGIT_BRANCH=${PV%.9999}
+       fi
+       EGIT_REPO_URI="https://github.com/mixxxdj/${PN}.git";
+else
+       SRC_URI="https://github.com/mixxxdj/${PN}/archive/${PV}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+# gles2-only: at least not before 2.6 for keyworded ebuild
+IUSE="aac benchmark ffmpeg keyfinder lv2 midi modplug mp3 mp4 opus"
+IUSE+=" qtkeychain rubberband shout test upower wavpack +X"
+REQUIRED_USE="
+       benchmark? ( test )
+       qtkeychain? ( shout )
+       test? ( aac ffmpeg midi mp3 opus rubberband )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       dev-db/sqlite:3
+       dev-cpp/abseil-cpp:=
+       dev-libs/hidapi
+       dev-libs/protobuf:=
+       dev-qt/qt5compat:6
+       
dev-qt/qtbase:6[concurrent,dbus,-gles2-only,gui,icu,network,opengl,sql,sqlite,ssl,widgets,xml,X?]
+       dev-qt/qtdeclarative:6
+       dev-qt/qtshadertools:6
+       dev-qt/qtsvg:6
+       media-libs/chromaprint:=
+       media-libs/flac:=
+       media-libs/libebur128:=
+       media-libs/libglvnd[X?]
+       media-libs/libogg
+       media-libs/libsndfile
+       media-libs/libsoundtouch:=
+       media-libs/libvorbis
+       media-libs/portaudio
+       media-libs/taglib:=
+       media-sound/lame
+       virtual/libusb:1
+       virtual/udev
+       aac? (
+               media-libs/faad2
+               media-libs/libmp4v2
+       )
+       benchmark? (
+               dev-cpp/benchmark:=
+               dev-cpp/gtest:=
+               dev-util/google-perftools:=
+       )
+       ffmpeg? ( media-video/ffmpeg:= )
+       keyfinder? ( media-libs/libkeyfinder )
+       lv2? ( media-libs/lilv )
+       midi? ( media-libs/portmidi )
+       modplug? ( media-libs/libmodplug )
+       mp3? (
+               media-libs/libid3tag:=
+               media-libs/libmad
+       )
+       mp4? ( media-libs/libmp4v2 )
+       opus? (
+               media-libs/opus
+               media-libs/opusfile
+       )
+       qtkeychain? ( >=dev-libs/qtkeychain-0.14.2:=[qt6(+)] )
+       rubberband? ( media-libs/rubberband:= )
+       shout? ( dev-libs/openssl:= )
+       upower? (
+               dev-libs/glib:2
+               sys-power/upower:=
+       )
+       wavpack? ( media-sound/wavpack )
+       X? ( x11-libs/libX11 )
+"
+DEPEND="
+       ${RDEPEND}
+       dev-cpp/gtest
+       dev-cpp/ms-gsl
+"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+       # Try OpenGL::OpenGL first for X11-less system
+       # Make libX11 optional. Merged in main branch.
+       "${FILESDIR}"/${PN}-2.5.2-x11_opt.patch
+)
+
+CMAKE_SKIP_TESTS=(
+       # need HID controller
+       LegacyControllerMappingValidationTest.HidMappingsValid
+       # randomly fails
+       # https://github.com/mixxxdj/mixxx/issues/12554
+       EngineBufferE2ETest
+)
+
+src_configure() {
+       # prevent ld error as package builds static libs.
+       lto-guarantee-fat
+
+       local mycmakeargs=(
+               -DBATTERY="$(usex upower)"
+               -DBROADCAST="$(usex shout)"
+               -DBUILD_SHARED_LIBS=ON
+               -DBUILD_TESTING="$(usex test)"
+               -DBUILD_BENCH="$(usex benchmark)"
+               # prevent duplicate call
+               -DCCACHE_SUPPORT=OFF
+               -DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex !X)
+               -DENGINEPRIME=OFF
+               -DFAAD="$(usex aac)"
+               -DFFMPEG="$(usex ffmpeg)"
+               -DGPERFTOOLS="$(usex benchmark)"
+               -DGPERFTOOLSPROFILER="$(usex benchmark)"
+               -DHID=ON
+               -DINSTALL_USER_UDEV_RULES=OFF
+               -DKEYFINDER="$(usex keyfinder)"
+               -DLILV="$(usex lv2)"
+               -DMAD="$(usex mp3)"
+               -DMODPLUG="$(usex modplug)"
+               -DOPTIMIZE=OFF
+               -DOPUS="$(usex opus)"
+               -DPORTMIDI="$(usex midi)"
+               # new QML-UI, experimental and not functionnal for now
+               -DQML=OFF
+               -DQTKEYCHAIN="$(usex qtkeychain)"
+               -DRUBBERBAND="$(usex rubberband)"
+               -DVINYLCONTROL=ON
+               -DWAVPACK="$(usex wavpack)"
+       )
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       use benchmark && dobin "${BUILD_DIR}"/mixxx-test
+       udev_newrules "${S}"/res/linux/mixxx-usb-uaccess.rules 
69-mixxx-usb-uaccess.rules
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+       udev_reload
+
+       elog "Manuals are no longer part of the package."
+       elog "Please refer to https://downloads.mixxx.org/manual/ for 
up-to-date manuals."
+       if use benchmark; then
+               elog ""
+               elog "Launch benchmark : ${EROOT}/usr/bin/mixxx-test 
--benchmark"
+               elog "Launch Unittests : ${EROOT}/usr/bin/mixxx-test"
+               elog "Some test suites may not be available without source 
files."
+       fi
+}
+
+pkg_postrm() {
+       xdg_pkg_postrm
+       udev_reload
+}

Reply via email to