Subject: Re: [PATCH gnome-team v2 2/2] gnu: musescore: Update to 4.4.4.

From: Liliana Marie Prikler <[email-masked]>
Date: Wed, 08 Jan 2025 13:01:32 +0100

Am Mittwoch, dem 01.01.2025 um 19:37 +0100 schrieb Rovanion Luckey:
> * gnu/packages/music.scm (musescore): Update to 4.4.4.
> 
> This update was a major one as it upgraded Qt from 5 to 6.
> 
> Change-Id: Ib5da630b73889625054f88b1e86af1e9666e6e93
> Signed-off-by: Liliana Marie Prikler <[email-masked]>
> ---
Ignore this, it's not yet signed off.

>  gnu/packages/music.scm | 63 +++++++++++++++++++++++++---------------
> --
>  1 file changed, 37 insertions(+), 26 deletions(-)
> 
> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
> index fc6e774eda..7fe78484fd 100644
> --- a/gnu/packages/music.scm
> +++ b/gnu/packages/music.scm
> @@ -38,7 +38,7 @@
>  ;;; Copyright © 2021 Brendan Tildesley <[email-masked]>
>  ;;; Copyright © 2021 Bonface Munyoki Kilyungi
> <[email-masked]>
>  ;;; Copyright © 2021 Frank Pursel <[email-masked]>
> -;;; Copyright © 2021 Rovanion Luckey <[email-masked]>
> +;;; Copyright © 2021, 2024, 2025 Rovanion Luckey
> <[email-masked]>
>  ;;; Copyright © 2021 Justin Veilleux <[email-masked]>
>  ;;; Copyright © 2021, 2022, 2023 Felix Gruber <[email-masked]>
>  ;;; Copyright © 2021 Simon Streit <[email-masked]>
> @@ -5370,7 +5370,7 @@ (define-public sfizz
>  (define-public musescore
>    (package
>      (name "musescore")
> -    (version "4.3.2")
> +    (version "4.4.4")
Looking good so far.
>      (source
>       (origin
>         (method git-fetch)
> @@ -5379,21 +5379,31 @@ (define-public musescore
>               (commit (string-append "v" version))))
>         (file-name (git-file-name name version))
>         (sha256
> -        (base32
> "1hx0l6d7avyfbh88hwn01h9q51mgd9zix91q2kgg1ax73pqxhfs2"))
> -       (modules '((guix build utils)))
> -       (snippet
> -        '(begin
> -           ;; Delete precompiled binaries.
> -           (delete-file-recursively
> "src/diagnostics/crashpad_handler")
> -           (substitute* "src/diagnostics/CMakeLists.txt"
> -             (("install") "#install"))))))
> +        (base32
> "0cjp1sp50pwmrgvpxjxg849s0vsvk2vcb66ym617nvlj761h0ngz"))
> +       (modules '((guix build utils)))))
This change is undocumented.  If you do drop the snippet (is it really
safe to?), then you can also drop the modules.
>      (build-system qt-build-system)
>      (arguments
> -     `(#:configure-flags
> -       `("-DDOWNLOAD_SOUNDFONT=OFF"
> -         "-DBUILD_DIAGNOSTICS=OFF"
> -         "-DMUSESCORE_BUILD_CONFIG=release"
> -         "-DUSE_SYSTEM_FREETYPE=ON")
> +     `(#:qtbase ,qtbase
Is this flag needed?  Anyway, new flags should be documented…
> +       #:configure-flags
> +       `("-DMUSE_APP_BUILD_MODE=release"
> +         ;; Disable the build and usage of the
> `/bin/crashpad_handler` utility -
> +         ;; it does automatic crash reporting and is distributed as
> a
> +         ;; pre-compiled binary in the source-tree of MuseScore:
> +         ;;  https://github.com/musescore/MuseScore/issues/15571
> +         ;; Renamed from MUE_BUILD_CRASHPAD_CLIENT,
> MUE_BUILD_DIAGNOSTICS_MODULE
> +         ;;
> https://github.com/musescore/MuseScore/commit/6f269e8b072cca36cb76eb016cb60c1c1c2b9906
> +         "-DMUSE_MODULE_DIAGNOSTICS_CRASHPAD_CLIENT=OFF"
> +         ;; Use Guix' versions of system libraries.
> +         "-DMUE_COMPILE_USE_SYSTEM_FREETYPE=ON"
> +         "-DMUE_COMPILE_USE_SYSTEM_HARFBUZZ=ON"
> +         "-DMUE_COMPILE_USE_SYSTEM_TINYXML=ON"
> +         "-DMUE_COMPILE_USE_SYSTEM_OPUSENC=ON" ; Ipmlies -
> DMUE_COMPILE_USE_SYSTEM_OPUS=ON
> +         "-DMUE_COMPILE_USE_SYSTEM_FLAC=ON"
> +         ;; Disable download of soundfont during build.
> +         "-DDOWNLOAD_SOUNDFONT=OFF"
> +         ;; Don't bundle Qt QML files, relevant really only for
> Darwin.
> +         ;; "-DMUE_COMPILE_INSTALL_QTQML_FILES=OFF"
> +         )
… as should changes here.  Is everything renamed from MUSE to MUE or
are these typos?
Also, parentheses are social animals, they like to group together :) 
>         ;; There are tests, but no simple target to run.  The command
> used to
>         ;; run them is:
>         ;;
> @@ -5404,30 +5414,31 @@ (define-public musescore
>         ;; So we simply skip them.
>         #:tests? #f))
>      (native-inputs
> -     (list git-minimal pkg-config qttools-5))
> +     (list git-minimal pkg-config qttools))
Write this out in the ChangeLog.
>      (inputs
>       (list alsa-lib
>             freetype
>             `(,gtk+ "bin")               ;for gtk-update-icon-cache
> +           harfbuzz-meson
Whoopsie, this can be regular harfbuzz with the new 1/2.
>             jack-1
>             lame
>             libogg
> +           libopusenc
>             libsndfile
>             libvorbis
>             portaudio
>             portmidi
>             pulseaudio
>             python
> -           qtbase-5
> -           qtdeclarative-5
> -           qtgraphicaleffects
> -           qtnetworkauth-5
> -           qtquickcontrols-5
> -           qtquickcontrols2-5
> -           qtscript
> -           qtsvg-5
> -           qtx11extras
> -           qtxmlpatterns))
> +           qt5compat
> +           qtbase
> +           qtdeclarative
> +           qtnetworkauth
> +           qtscxml
> +           qtshadertools
> +           qtsvg
> +           qtwayland
> +           tinyxml2))
Write these out in the ChangeLog.
>      (propagated-inputs
>       (list `(,alsa-plugins "pulseaudio"))) ;for
> libasound_module_conf_pulse.so
>      (synopsis "Music composition and notation software")

Cheers