GNU bug report logs -
#56204
Add guile-goblins
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 56204 in the body.
You can then email your comments to 56204 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Fri, 24 Jun 2022 21:26:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Christine Lemmer-Webber <cwebber <at> dustycloud.org>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Fri, 24 Jun 2022 21:26:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Finally! ;)
It's a pretty small change, just adding a leaf package, but I figured
since it's adding a package I maintain the project of, best to get
review.
- Christine
[0001-gnu-Add-guile-goblins.patch (text/x-patch, inline)]
From a09c70dac11dcc133c8e86c3c7e953019942e00c Mon Sep 17 00:00:00 2001
From: Christine Lemmer-Webber <cwebber <at> dustycloud.org>
Date: Fri, 24 Jun 2022 14:28:56 -0400
Subject: [PATCH] gnu: Add guile-goblins.
* gnu/packages/guile-xyz.scm (guile-goblins): New variable.
---
gnu/packages/guile-xyz.scm | 42 +++++++++++++++++++++++++++++++++++++-
1 file changed, 41 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 2ed6617fd2..853dfa832e 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2022 Ludovic Courtès <ludo <at> gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw <at> netris.org>
-;;; Copyright © 2015, 2017 Christine Lemmer-Webber <cwebber <at> dustycloud.org>
+;;; Copyright © 2015, 2017, 2022 Christine Lemmer-Webber <cwebber <at> dustycloud.org>
;;; Copyright © 2016 Alex Sassmannshausen <alex <at> pompo.co>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Ricardo Wurmus <rekado <at> elephly.net>
;;; Copyright © 2016 Erik Edrosa <erik.edrosa <at> gmail.com>
@@ -5103,3 +5103,43 @@ (define-public guile-termios
termios API is used. GNU Guile doesn't have an interface for that built in.
This module implements this interface by use of Guile's dynamic FFI.")
(license license:bsd-2)))
+
+(define-public guile-goblins
+ (package
+ (name "guile-goblins")
+ (version "0.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/spritely/guile-goblins/")
+ (commit (string-append "v" version))))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32
+ "1mmyykh79jwhrfgnhhw94aw7a8m6qw249kj7k60ynj16mcfm5iyy"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'bootstrap
+ (lambda _
+ (invoke "autoreconf" "-vif"))))
+ #:make-flags
+ ,#~(list "GUILE_AUTO_COMPILE=0")))
+ (native-inputs
+ (list autoconf automake pkg-config texinfo))
+ (inputs
+ `(("guile" ,guile-3.0)))
+ (propagated-inputs
+ (list guile-fibers guile-gcrypt))
+ (home-page "https://spritely.institute/goblins")
+ (synopsis "Distributed programming environment for Guile")
+ (description
+ "@code{guile-goblins} is the Guile version of
+@url{https://spritely.institute/goblins, Spritely Goblins},
+a transactional, distributed programming environment following object
+capability security designs. Goblins is a general toolkit, and also
+the core layer of Spritely's work to support healthy distributed
+networked communities.")
+ (license license:asl2.0)))
--
2.36.1
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Fri, 24 Jun 2022 21:59:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 56204 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Christine Lemmer-Webber schreef op vr 24-06-2022 om 17:24 [-0400]:
> + (arguments
> + `(#:phases
> + (modify-phases %standard-phases
> + (replace 'bootstrap
> + (lambda _
> + (invoke "autoreconf" "-vif"))))
I don't know if it works in this particular case, but I thought that
normally 'bootstrap' would automatically do that already?
> + #:make-flags
> + ,#~(list "GUILE_AUTO_COMPILE=0")))
Nesting different forms of quasiquotation seems to be disliked (at
least according to a mini poll I did on #guix some time ago),
apparently
(arguments
(list #:phases
#~(modify-phases ...)
#:make-flags
#~(list ...)))
seems to be the way to go?
> + (native-inputs
> + (list autoconf automake pkg-config texinfo))
> + (inputs
> + `(("guile" ,guile-3.0)))
Can be simplified to (inputs (list guile-3.0))?
> + "@code{guile-goblins} is the Guile version of
> + @url{https://spritely.institute/goblins, Spritely Goblins},
> +a transactional, distributed programming environment following object
> +capability security designs. Goblins is a general toolkit, and also
> +the core layer of Spritely's work to support healthy distributed
> +networked communities.")
Maybe mention that it can network with non-Guile goblin peers as well
(e.g. Racket?), assuming that's correct?
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Sat, 25 Jun 2022 09:33:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 56204 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Christine Lemmer-Webber schreef op vr 24-06-2022 om 17:24 [-0400]:
> + (version "0.8")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://gitlab.com/spritely/guile-goblins/")
> + (commit (string-append "v" version))))
> + (file-name (string-append name "-" version))
> + (sha256
> + (base32
> + "1mmyykh79jwhrfgnhhw94aw7a8m6qw249kj7k60ynj16mcfm5iyy"))))
I'm not seeing "--target" in the invocation of "$(GUILE_TOOLS)
compile", so I don't think that currently it will cross-compile
correctly. Could you add a --target=... in the Makefile.am?
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Sat, 25 Jun 2022 21:47:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 56204 <at> debbugs.gnu.org (full text, mbox):
Maxime Devos <maximedevos <at> telenet.be> skribis:
> Christine Lemmer-Webber schreef op vr 24-06-2022 om 17:24 [-0400]:
>> + (version "0.8")
>> + (source
>> + (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url "https://gitlab.com/spritely/guile-goblins/")
>> + (commit (string-append "v" version))))
>> + (file-name (string-append name "-" version))
>> + (sha256
>> + (base32
>> + "1mmyykh79jwhrfgnhhw94aw7a8m6qw249kj7k60ynj16mcfm5iyy"))))
>
>
> I'm not seeing "--target" in the invocation of "$(GUILE_TOOLS)
> compile", so I don't think that currently it will cross-compile
> correctly. Could you add a --target=... in the Makefile.am?
That can come upstream in the next version of Goblins IMO.
Ludo’.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Sat, 25 Jun 2022 21:50:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 56204 <at> debbugs.gnu.org (full text, mbox):
Hello Christine,
Christine Lemmer-Webber <cwebber <at> dustycloud.org> skribis:
>>From a09c70dac11dcc133c8e86c3c7e953019942e00c Mon Sep 17 00:00:00 2001
> From: Christine Lemmer-Webber <cwebber <at> dustycloud.org>
> Date: Fri, 24 Jun 2022 14:28:56 -0400
> Subject: [PATCH] gnu: Add guile-goblins.
>
> * gnu/packages/guile-xyz.scm (guile-goblins): New variable.
Woohoo, awesome!
I agree with the minor issues Maxime noted, but otherwise looks great
to me! Go Spritely, go!!
Ludo’.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Sun, 26 Jun 2022 19:13:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 56204 <at> debbugs.gnu.org (full text, mbox):
Ludovic Courtès <ludo <at> gnu.org> writes:
> Maxime Devos <maximedevos <at> telenet.be> skribis:
>
>> Christine Lemmer-Webber schreef op vr 24-06-2022 om 17:24 [-0400]:
>>> + (version "0.8")
>>> + (source
>>> + (origin
>>> + (method git-fetch)
>>> + (uri (git-reference
>>> + (url "https://gitlab.com/spritely/guile-goblins/")
>>> + (commit (string-append "v" version))))
>>> + (file-name (string-append name "-" version))
>>> + (sha256
>>> + (base32
>>> + "1mmyykh79jwhrfgnhhw94aw7a8m6qw249kj7k60ynj16mcfm5iyy"))))
>>
>>
>> I'm not seeing "--target" in the invocation of "$(GUILE_TOOLS)
>> compile", so I don't think that currently it will cross-compile
>> correctly. Could you add a --target=... in the Makefile.am?
>
> That can come upstream in the next version of Goblins IMO.
>
> Ludo’.
Cool, I added it to commit 6664daa27e9b3eb3220ba83d9c874b730e792f90 in
guile-goblins. However I was just mimicing guile-gcrypt, so I'm not
sure if it's right:
#+BEGIN_SRC diff
diff --git a/Makefile.am b/Makefile.am
index b8d4944..b056337 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -32,7 +32,7 @@ EXTRA_DIST = $(SOURCES) $(NOCOMP_SOURCES)
GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat
SUFFIXES = .scm .go
.scm.go:
- $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_WARNINGS) -o "$@" "$<"
+ $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_TARGET) $(GUILE_WARNINGS) -o "$@" "$<"
SOURCES = goblins.scm \
goblins/ocapn/crypto-stubs.scm \
#+END_SRC
Should that be sufficient?
Notably, the Makefile.am here was bootstrapped using guile-hall, so my
suspicion is that this is an update that should be made in guile-hall's
templates also, then everyone can benefit.
The next release of Goblins should be due out very quickly, I think, so
we'll be able to take advantage of it then.
Reply sent
to
Christine Lemmer-Webber <cwebber <at> dustycloud.org>
:
You have taken responsibility.
(Sun, 26 Jun 2022 19:33:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Christine Lemmer-Webber <cwebber <at> dustycloud.org>
:
bug acknowledged by developer.
(Sun, 26 Jun 2022 19:33:02 GMT)
Full text and
rfc822 format available.
Message #25 received at 56204-done <at> debbugs.gnu.org (full text, mbox):
Hey Maxime!
Maxime Devos <maximedevos <at> telenet.be> writes:
> [[PGP Signed Part:Undecided]]
> Christine Lemmer-Webber schreef op vr 24-06-2022 om 17:24 [-0400]:
>> + (arguments
>> + `(#:phases
>> + (modify-phases %standard-phases
>> + (replace 'bootstrap
>> + (lambda _
>> + (invoke "autoreconf" "-vif"))))
>
> I don't know if it works in this particular case, but I thought that
> normally 'bootstrap' would automatically do that already?
Ah yeah, seems to work without it...!
>> + #:make-flags
>> + ,#~(list "GUILE_AUTO_COMPILE=0")))
>
> Nesting different forms of quasiquotation seems to be disliked (at
> least according to a mini poll I did on #guix some time ago),
> apparently
>
> (arguments
> (list #:phases
> #~(modify-phases ...)
> #:make-flags
> #~(list ...)))
>
> seems to be the way to go?
>
>> + (native-inputs
>> + (list autoconf automake pkg-config texinfo))
>> + (inputs
>> + `(("guile" ,guile-3.0)))
>
> Can be simplified to (inputs (list guile-3.0))?
Cool, done. For (inputs ...) anyway... the above native-inputs did
still seem needed, presumably because we *are* running the bootstrap
code in this case.
>> + "@code{guile-goblins} is the Guile version of
>> + @url{https://spritely.institute/goblins, Spritely Goblins},
>> +a transactional, distributed programming environment following object
>> +capability security designs. Goblins is a general toolkit, and also
>> +the core layer of Spritely's work to support healthy distributed
>> +networked communities.")
>
> Maybe mention that it can network with non-Guile goblin peers as well
> (e.g. Racket?), assuming that's correct?
>
> Greetings,
> Maxime.
It's true, but more accurately, it will be true in the next version,
since guile-goblins v0.8 doesn't have finished networking support.
But yes, that's coming, so I put this comment above the description:
;; In guile-goblins 0.9, OCapN support will be added (it already
;; exists in racket-goblins). At that point we should add the
;; following to this description:
;;
;; Goblins allows for cooperation between networked programs
;; in a mutually suspicious network through OCapN, the Object
;; Capability Network. This includes collaboration across
;; runtimes; for instance, programs written in the Guile and Racket
;; versions of Goblins are able to speak to each other.
And we can do that then. As said in the other email, I don't think this
is far away.
Thanks to both Maxime and Ludo' for reviewing! I pushed it upstream.
Happy hacking with guile-goblins... if someone does anything with it,
let me know. The next release will be the first big guile-goblins
release to celebrate, but was eager to get what we have up there. :)
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Sun, 26 Jun 2022 20:51:02 GMT)
Full text and
rfc822 format available.
Message #28 received at 56204 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Christine Lemmer-Webber schreef op zo 26-06-2022 om 15:09 [-0400]:
> #+BEGIN_SRC diff
> diff --git a/Makefile.am b/Makefile.am
> index b8d4944..b056337 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -32,7 +32,7 @@ EXTRA_DIST = $(SOURCES) $(NOCOMP_SOURCES)
> GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat
> SUFFIXES = .scm .go
> .scm.go:
> - $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_WARNINGS) -o "$@" "$<"
> + $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_TARGET) $(GUILE_WARNINGS) -o "$@" "$<"
>
> SOURCES = goblins.scm \
> goblins/ocapn/crypto-stubs.scm \
> #+END_SRC
>
> Should that be sufficient?
I think so (untested)?
> Notably, the Makefile.am here was bootstrapped using guile-hall, so
> my suspicion is that this is an update that should be made in
> guile-hall's templates also, then everyone can benefit.
Agreed.
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#56204
; Package
guix-patches
.
(Mon, 27 Jun 2022 10:23:02 GMT)
Full text and
rfc822 format available.
Message #31 received at 56204 <at> debbugs.gnu.org (full text, mbox):
Hi,
Christine Lemmer-Webber <cwebber <at> dustycloud.org> skribis:
> #+BEGIN_SRC diff
> diff --git a/Makefile.am b/Makefile.am
> index b8d4944..b056337 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -32,7 +32,7 @@ EXTRA_DIST = $(SOURCES) $(NOCOMP_SOURCES)
> GUILE_WARNINGS = -Wunbound-variable -Warity-mismatch -Wformat
> SUFFIXES = .scm .go
> .scm.go:
> - $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_WARNINGS) -o "$@" "$<"
> + $(AM_V_GEN)$(top_builddir)/pre-inst-env $(GUILE_TOOLS) compile $(GUILE_TARGET) $(GUILE_WARNINGS) -o "$@" "$<"
>
> SOURCES = goblins.scm \
> goblins/ocapn/crypto-stubs.scm \
> #+END_SRC
>
> Should that be sufficient?
Yes, that LGTM, provided GUILE_TARGET is properly computed, like in
Guile-Gcrypt’s ‘configure.ac’.
Thanks,
Ludo’.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 25 Jul 2022 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 246 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.