1
Fork 0
mirror of https://https.git.savannah.gnu.org/git/guix.git/ synced 2025-07-17 12:30:38 +02:00

gnu: mixxx: Update to 2.5.

* gnu/packages/music.scm (mixxx): Update to 2.5.
[source]: Unbundle libshout-idjc.
[arguments]: Use G-expressions.  Replace LD_LIBRARY_PATH wrapping with
a substitute for 'libfaad.so'.
[native-inputs]: Add pkg-config.
[inputs]: Add eudev and libxkbcommon.  Remove jack-1 and libshout.
Replace ffmpeg with ffmpeg-4.  Replace Qt5 libraries with Qt6 libraries.

Change-Id: I865a25668422abcb1c4fa6e0a65ee55212445431
Co-authored-by: 宋文武 <iyzsong@member.fsf.org>
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
This commit is contained in:
Olivier Rojon 2025-01-19 18:28:14 +00:00 committed by 宋文武
parent ac50527e3c
commit 1c7916cebe
No known key found for this signature in database
GPG key ID: D415BF253B515976

View file

@ -2421,7 +2421,7 @@ a JACK session.")
(define-public mixxx (define-public mixxx
(package (package
(name "mixxx") (name "mixxx")
(version "2.4.2") (version "2.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2430,48 +2430,50 @@ a JACK session.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1xvmha9q2f1gclb5js09l511v3b5zbp3gnbrz11q681cp924byk1")) (base32 "1xj5ylmfry0yxfsrbfl3kyxm7xgclzh5zfv1g81vl0pgjmd6zw1c"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Delete libraries that we already have or don't need. ;; Delete libraries that we already have or don't need.
;; TODO: try to unbundle more (see lib/). ;; TODO: try to unbundle more (see lib/).
`(begin `(begin
(let ((third-parties '("apple" "hidapi"))) (let ((third-parties '("apple" "hidapi" "libshout-idjc")))
(with-directory-excursion "lib" (with-directory-excursion "lib"
(map (lambda (third-party) (map (lambda (third-party)
(delete-file-recursively third-party)) third-parties))) (delete-file-recursively third-party)) third-parties)))
#t)))) #t))))
(build-system qt-build-system) (build-system qt-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases (list
(add-after 'unpack 'disable-bugged-test #:qtbase qtbase
;; This test regularly fails and aborts the build process, hence it #:phases
;; was disabled (no impact on functionality). It appears this is a #~(modify-phases %standard-phases
;; problem for some upstream as well, as indicated by: (add-after 'unpack 'qualify-paths
;; https://github.com/mixxxdj/mixxx/issues/12887 (featuring a (lambda* (#:key inputs #:allow-other-keys)
;; reference to another issue related to the same problem). (substitute* "src/sources/libfaadloader.cpp"
(lambda _ (("libfaad\\.so")
(substitute* "src/test/soundproxy_test.cpp" (search-input-file inputs "lib/libfaad.so")))))
(("TEST_F\\(SoundSourceProxyTest, firstSoundTest\\)") (add-after 'unpack 'disable-bugged-test
"TEST_F(SoundSourceProxyTest, DISABLED_firstSoundTest)")))) ;; This test regularly fails and aborts the build process, hence it
(add-after 'install 'wrap-executable ;; was disabled (no impact on functionality). It appears this is a
(lambda* (#:key inputs outputs #:allow-other-keys) ;; problem for some upstream as well, as indicated by:
(let* ((out (assoc-ref outputs "out")) ;; https://github.com/mixxxdj/mixxx/issues/12887 (featuring a
(faad2 (assoc-ref inputs "faad2"))) ;; reference to another issue related to the same problem).
(wrap-program (string-append out "/bin/mixxx") (lambda _
`("LD_LIBRARY_PATH" ":" prefix (substitute* "src/test/soundproxy_test.cpp"
,(list (string-append faad2 "/lib")))))))))) (("TEST_F\\(SoundSourceProxyTest, firstSoundTest\\)")
(native-inputs (list benchmark googletest python-wrapper qttools-5 "TEST_F(SoundSourceProxyTest, DISABLED_firstSoundTest)")))))))
(native-inputs (list benchmark googletest pkg-config python-wrapper qttools
xorg-server-for-tests)) xorg-server-for-tests))
(inputs (list bash-minimal (inputs (list bash-minimal
chromaprint chromaprint
eudev
libxkbcommon ;required by qtbase
faad2 faad2
ffmpeg ffmpeg-4 ;XXX: chromaprint linked with ffmpeg-4
fftw fftw
flac flac
glu glu
hidapi hidapi
jack-1
lame lame
libdjinterop libdjinterop
libebur128 libebur128
@ -2481,9 +2483,6 @@ a JACK session.")
libmp4v2 libmp4v2
libmodplug libmodplug
libsndfile libsndfile
libshout
;; XXX: Mixxx complains the libshout-idjc package suffers from bug
;; lp1833225 and refuses to use it. Use the bundle for now.
libshout-idjc libshout-idjc
libusb libusb
libvorbis libvorbis
@ -2494,12 +2493,12 @@ a JACK session.")
portaudio portaudio
portmidi portmidi
protobuf protobuf
qtbase-5 qtbase
qtdeclarative-5 qtdeclarative
qtkeychain qtkeychain-qt6
qtscript qtsvg
qtsvg-5 qtshadertools
qtx11extras qt5compat
rubberband rubberband
soundtouch soundtouch
sqlite sqlite