Subject: Re: bug#62514: [PATCH] gnu: gnucash: Update to 5.0

From: Maxim Cournoyer <[email-masked]>
Date: Wed, 29 Mar 2023 14:44:30 -0400

Hello!

Andy Tai <[email-masked]> writes:

> * gnu/packages/gnucash.scm (gnucash): Update to 5.0

Please expound commit message according to the GNU ChangeLog style;
refer to oher commits or 'info (standards) Change Logs' for more information.

> ---
>  gnu/packages/gnucash.scm | 31 ++++++++++++++++++-------------
>  1 file changed, 18 insertions(+), 13 deletions(-)
>
> diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm
> index 0386910ce6..dde21aa43d 100644
> --- a/gnu/packages/gnucash.scm
> +++ b/gnu/packages/gnucash.scm
> @@ -47,6 +47,7 @@ (define-module (gnu packages gnucash)
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages swig)
> +  #:use-module (gnu packages texinfo)
>    #:use-module (gnu packages tls)
>    #:use-module (gnu packages web)
>    #:use-module (gnu packages webkit)
> @@ -64,14 +65,24 @@ (define-public gnucash
>    ;; directory.
>    (package
>      (name "gnucash")
> -    (version "4.11")
> +    (version "5.0")
>      (source
>       (origin
>         (method url-fetch)
>         (uri (string-append "mirror://sourceforge/gnucash/gnucash%20%28stable%29/"
>                             version "/gnucash-" version ".tar.bz2"))
>         (sha256
> -        (base32 "069b216dkpjs9hp32s4bhi6f76lbc81qvbmjmz0dxq3v1piys57q"))))
> +        (base32 "09482f1w4yawrdw5c2wi0jb8hwlp1x9mdvq552bf9n5f66mkphfg"))
> +       (modules '((guix build utils)))
> +       (snippet
> +               ;; test test-gnc-quotes neeeds perl JSON::Parse
> +               ;; not packaged in Guix yet
> +          '(begin
> +                  (substitute* "libgnucash/app-utils/test/CMakeLists.txt"
> +                    (("gnc_add_test\\(test-gnc-quotes")
> +                     "#gnc_add_test\\(test-gnc-quotes"))
> +                  #t))))

This should be done in a phase instead; note that returning #t is no
longer needed :-).

>      (outputs '("out" "doc" "debug" "python"))
>      (build-system cmake-build-system)
>      (arguments
> @@ -95,12 +106,6 @@ (define-public gnucash
>                (substitute* "CMakeLists.txt"
>                  (("set\\(SHELL /bin/bash\\)")
>                   (string-append "set(SHELL " (which "bash") ")")))))
> -          ;; After wrapping gnc-fq-check and gnc-fq-helper we can no longer
> -          ;; execute them with perl, so execute them directly instead.
> -          (add-after 'unpack 'fix-finance-quote-check
> -            (lambda _
> -              (substitute* "gnucash/price-quotes.scm"
> -                (("\"perl\" \"-w\" ") ""))))

Why is this no longer needed?

>            ;; The qof test requires the en_US, en_GB, and fr_FR locales.
>            (add-before 'check 'install-locales
>              (lambda _
> @@ -155,9 +160,7 @@ (define-public gnucash
>                                             (assoc l (package-inputs this-package)))
>                                           '("perl-finance-quote")))))))))
>                 '("gnucash"
> -                 "gnc-fq-check"
> -                 "gnc-fq-helper"
> -                 "gnc-fq-dump"))))
> +                 "gnc-fq-update"))))
>
Why is this done?

>            (add-after 'install 'glib-or-gtk-compile-schemas
>              (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
>            (add-after 'install 'glib-or-gtk-wrap
> @@ -217,7 +220,7 @@ (define gnucash-docs
>                 "mirror://sourceforge/gnucash/gnucash%20%28stable%29/"
>                 version "/gnucash-docs-" version revision ".tar.gz"))
>           (sha256
> -          (base32 "162qq8p76grczdnsd4qbpxn1d8ap6l2n1a00a601v5hij7rqwfx8"))))
> +          (base32 "1cgdb5qrwrx6yf6dsc8zlhi67lbyjs1g82i0n53sw6n6v38dd882"))))
>        (build-system cmake-build-system)
>        ;; These are native-inputs because they are only required for building the
>        ;; documentation.
> @@ -226,9 +229,11 @@ (define gnucash-docs
>         ;; XML during the tests.
>         (list docbook-xml
>               docbook-xsl
> +             libsecret
>               libxml2
>               libxslt
> -             scrollkeeper))
> +             scrollkeeper
> +             texinfo))

Is there a Texinfo manual for Gnucash?  That'd be neat.

-- 
Thanks,
Maxim