[bug#60533] Update guile-g-golf.
Commit Message
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
Comments
Sorry, forgot to "reply all". I'm not sure whether mail is all meant to
also go into the debbugs address.
Preston
---------- Forwarded message ---------
From: Preston Firestone <firestone.preston@gmail.com>
Date: Wed, Jan 4, 2023 at 6:11 PM
Subject: Re: [PATCH] Update guile-g-golf.
To: Liliana Marie Prikler <liliana.prikler@gmail.com>
Hello,
Thank you for the helpful feedback. All of your comments make sense to me;
thank you for the time and patience. Is there a further step that I should
take in submitting the patch?
Thanks,
Preston
Acknowledged, thank you for the help.
On Wed, Jan 4, 2023 at 11:19 PM Liliana Marie Prikler <
liliana.prikler@gmail.com> wrote:
> Am Mittwoch, dem 04.01.2023 um 18:11 -0600 schrieb Preston Firestone:
> > Hello,
> >
> > Thank you for the helpful feedback. All of your comments make sense
> > to me; thank you for the time and patience. Is there a further step
> > that I should take in submitting the patch?
> If you don't do anything and there are no further comments from others,
> I will be upstreaming my revision on the 15th.
>
> Cheers
>
Am Donnerstag, dem 05.01.2023 um 00:52 -0600 schrieb Preston Firestone:
> Acknowledged, thank you for the help.
>
> On Wed, Jan 4, 2023 at 11:19 PM Liliana Marie Prikler
> <liliana.prikler@gmail.com> wrote:
> > Am Mittwoch, dem 04.01.2023 um 18:11 -0600 schrieb Preston
> > Firestone:
> > > Hello,
> > >
> > > Thank you for the helpful feedback. All of your comments make
> > > sense
> > > to me; thank you for the time and patience. Is there a further
> > > step
> > > that I should take in submitting the patch?
> > If you don't do anything and there are no further comments from
> > others,
> > I will be upstreaming my revision on the 15th.
> >
> > Cheers
Pushed now, have fun with guile-g-golf.
From 2d9048e198e9e8fca9303633227fcc60684a6baf Mon Sep 17 00:00:00 2001
From: Preston Firestone <firestone.preston@gmail.com>
Date: Wed, 4 Jan 2023 21:21:53 +0100
Subject: [PATCH] gnu: guile-g-golf: Update to 0.8.0-a.1.
* gnu/packages/guile-xyz.scm (guile-g-golf): Update to 0.8.0-a.1.
[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 | 161 ++++++++++++++++++-------------------
1 file changed, 80 insertions(+), 81 deletions(-)
@@ -2181,91 +2181,90 @@ (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-a.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/g-golf.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1lszlssa6k8dhhya5px271gfzas7fyy1iwjqmlxibz5vdirzi565"))))
+ (build-system gnu-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)
+ ;; 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-next))
+ (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-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+)))
(define-public g-golf
(deprecated-package "g-golf" guile-g-golf))
--
2.38.1