[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#60533] [PATCH] Update guile-g-golf.
From: |
Liliana Marie Prikler |
Subject: |
[bug#60533] [PATCH] Update guile-g-golf. |
Date: |
Wed, 04 Jan 2023 21:28:04 +0100 |
User-agent: |
Evolution 3.46.0 |
Hi Preston,
Am Dienstag, dem 03.01.2023 um 14:20 -0600 schrieb Preston Firestone:
> * guile-xyz.scm: bump guile-g-golf to version 0.8.0.
Proper ChangeLog would be
* gnu/packages/guile-xyz.scm (guile-g-golf): Update to 0.8.0-a.1.
See below for my comment about the version.
> This release works under guix, if a guile program relying on g-golf
> is run in a guix shell like so: `guix shell guile-g-golf guile gtk --
> [program]`.
Useless information in the context of a ChangeLog.
More useful would have been the following bits:
[arguments]: Add #:parallel-build? #f.
[inputs]: Replace glib with glib-next.
[propagated-inputs]: Replace gobject-introspection with gobject-
introspection-next.
> ---
> gnu/packages/guile-xyz.scm | 155 ++++++++++++++++++-----------------
> --
> 1 file changed, 74 insertions(+), 81 deletions(-)
>
> diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
> index 9c94764ab3..692ef9b50b 100644
> --- a/gnu/packages/guile-xyz.scm
> +++ b/gnu/packages/guile-xyz.scm
> @@ -2181,91 +2181,84 @@ (define-public guile-sly
> (license license:gpl3+)))
>
> (define-public guile-g-golf
> - (let ((commit "1824633d37da3794f349d6829e9dac2cf89adaa8")
> - (revision "1010"))
> - (package
> - (name "guile-g-golf")
> - (version (git-version "0.1.0" revision commit))
> - (source
> - (origin
> - (method git-fetch)
> - (uri (git-reference
> - (url "https://git.savannah.gnu.org/git/g-golf.git")
> - (commit commit)))
> - (file-name (git-file-name name version))
> - (sha256
> - (base32
> "0ncpqv6pbsx9fjmdzvzbjljnhqgw9pynqy9vr9aq35nb7rzrhfdf"))))
> - (build-system gnu-build-system)
> - (arguments
> - (list
> - #:configure-flags
> - #~(list "--with-guile-site=no")
> - #:phases
> - #~(modify-phases %standard-phases
> - (add-after 'unpack 'fix-guile-site-directory
> - (lambda _
> - (substitute* "configure.ac"
> - (("SITEDIR=.*$")
> -
> "SITEDIR=\"$datadir/guile/site/$GUILE_EFFECTIVE_VERSION\";\n")
> - (("SITECCACHEDIR=\"\\$libdir/g-golf/")
> - "SITECCACHEDIR=\"$libdir/"))))
> - (add-before 'configure 'tests-work-arounds
> - (lambda* (#:key inputs #:allow-other-keys)
> - ;; In build environment, There is no /dev/tty
> - (substitute* "test-suite/tests/gobject.scm"
> - (("/dev/tty") "/dev/null"))))
> - (add-before 'configure 'substitute-libs
> - (lambda* (#:key inputs outputs #:allow-other-keys)
> - (define (get lib)
> - (search-input-file inputs (string-append "lib/"
> lib ".so")))
> -
> - (let* ((libgi (get "libgirepository-1.0"))
> - (libglib (get "libglib-2.0"))
> - (libgobject (get "libgobject-2.0"))
> - (libg-golf (string-append #$output
> "/lib/libg-golf")))
> - (substitute* "g-golf/init.scm"
> - (("libgirepository-1.0") libgi)
> - (("libglib-2.0") libglib)
> - (("libgobject-2.0") libgobject)
> - (("\\(dynamic-link \"libg-golf\"\\)")
> - (format #f "~s"
> - `(catch #t
> - (lambda ()
> - (dynamic-link "libg-golf"))
> - (lambda _
> - (dynamic-link ,libg-golf))))))
> - (setenv "GUILE_AUTO_COMPILE" "0")
> - #t)))
> - (add-before 'check 'start-xorg-server
> - (lambda* (#:key inputs #:allow-other-keys)
> - ;; The test suite requires a running X server.
> - (system "Xvfb :1 &")
> - (setenv "DISPLAY" ":1")
> - #t)))))
> - (inputs
> - (list guile-3.0 guile-lib glib))
> - (native-inputs
> - (list autoconf
> - automake
> - texinfo
> - gettext-minimal
> - libtool
> - pkg-config
> - ;; required for tests
> - gtk+
> - clutter
> - xorg-server-for-tests))
> - (propagated-inputs
> - (list gobject-introspection))
> - (home-page "https://www.gnu.org/software/g-golf/")
> - (synopsis "Guile bindings for GObject Introspection")
> - (description
> - "G-Golf (Gnome: (Guile Object Library for)) is a library for
> developing
> + (package
> + (name "guile-g-golf")
> + (version "0.8.0")
The actual version appears to be 0.8.0-a.1
> + (source (origin
> + (method url-fetch)
> + (uri
> +
> "https://git.savannah.gnu.org/cgit/g-golf.git/snapshot/g-golf-0.8.0-a
> .1.tar.gz")
> + (sha256
> + "1zqycqss0g9aqwmvrvsz43mmfxzi7dj3waxkb4w8ikdajjm7rd8r")))
You should probably stay with git-fetch.
> + (build-system glib-or-gtk-build-system)
> + (arguments
> + (list #:configure-flags #~(list "--with-guile-site=no")
> + #:parallel-build? #f
> + #:phases #~(modify-phases %standard-phases
> + (add-after 'unpack 'fix-guile-site-directory
> + (lambda _
> + (substitute* "configure.ac"
> + (("SITEDIR=.*$")
> + "SITEDIR=\"$datadir/guile/site/$GUILE_EFFECTIVE_VERSION\";\n")
> + (("SITECCACHEDIR=\"\\$libdir/g-golf/")
> + "SITECCACHEDIR=\"$libdir/"))))
> + (add-before 'configure 'tests-work-arounds
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "test-suite/tests/gobject.scm"
> + (("/dev/tty")
> + "/dev/null"))))
> + (add-before 'configure 'substitute-libs
> + (lambda* (#:key inputs outputs #:allow-other-keys)
> + (define (get lib)
> + (search-input-file inputs
> + (string-append "lib/" lib
> + ".so")))
> + (let* ((libgi (get "libgirepository-1.0"))
> + (libglib (get "libglib-2.0"))
> + (libgobject (get "libgobject-2.0"))
> + (libg-golf (string-append #$output
> + "/lib/libg-golf")))
> + (substitute* "g-golf/init.scm"
> + (("libgirepository-1.0")
> + libgi)
> + (("libglib-2.0")
> + libglib)
> + (("libgobject-2.0")
> + libgobject)
> + (("\\(dynamic-link \"libg-golf\"\\)")
> + (format #f "~s"
> + `(catch #t
> + (lambda ()
> + (dynamic-link "libg-golf"))
> + (lambda _
> + (dynamic-link ,libg-golf))))))
> + (setenv "GUILE_AUTO_COMPILE" "0") #t)))
> + (add-before 'check 'start-xorg-server-for-testing
> + (lambda* (#:key inputs #:allow-other-keys)
> + (system "Xvfb :1 &")
> + (setenv "DISPLAY" ":1") #t)))))
> + (inputs (list guile-3.0 guile-lib glib-next))
> + (native-inputs (list autoconf
> + automake
> + texinfo
> + gettext-minimal
> + libtool
> + pkg-config
> + ;; required for tests
> + gtk+
> + clutter
> + xorg-server-for-tests
> + dbus))
> + (propagated-inputs (list gobject-introspection-next))
> + (home-page "https://www.gnu.org/software/g-golf/")
> + (synopsis "Guile bindings for GObject Introspection")
> + (description
> + "G-Golf (Gnome: (Guile Object Library for)) is a library for
> developing
> modern applications in Guile Scheme. It comprises a direct binding
> to the
> GObject Introspection API and higher-level functionality for
> importing Gnome
> libraries and making GObject classes (and methods) available in
> Guile's
> object-oriented programming system, GOOPS.")
> - (license license:lgpl3+))))
> + (license license:lgpl3+)))
Do indent your code properly. Also make sure that your MUA doesn't
complicate `git am'-based workflows.
Attached is a patch in which all of the above have been addressed.
Cheers
0001-gnu-guile-g-golf-Update-to-0.8.0-a.1.patch
Description: Text Data