[PATCH] Expose some functions for guix.el

  • Done
  • quality assurance status badge
Details
3 participants
  • John Soo
  • Ludovic Courtès
  • zimoun
Owner
unassigned
Submitted by
John Soo
Severity
normal
J
J
John Soo wrote on 13 Nov 2020 14:54
(address . bug-guix@gnu.org)
87mtzlmkfz.fsf@asu.edu
Hi Guix,

guix.el Has been broken for quite some time because it depends on @@ for
some modules. After some review, I came to the conclusion that all of
the bindings it uses can be safely exposed.

In general, it uses mostly bindings from guix scripts (pack, build,
etc). Those bindings seem reasonable to expose since they give
programmatic access to "API"s that the CLI user is most likely familiar
with.

Thanks!

John
From af50f2d398096f7f8bd4efd9255b5713f39104b2 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@asu.edu>
Date: Thu, 12 Nov 2020 21:47:36 -0800
Subject: [PATCH 1/2] guix pack: Expose some bindings for third-party use.

* guix/scripts/pack.scm (compressor-name, %compressors, %formats):
Expose them.
---
guix/scripts/pack.scm | 3 +++
1 file changed, 3 insertions(+)

Toggle diff (21 lines)
diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
index 8e694edbbe..b6dfcb5f6a 100644
--- a/guix/scripts/pack.scm
+++ b/guix/scripts/pack.scm
@@ -58,11 +58,14 @@
#:use-module (srfi srfi-37)
#:use-module (ice-9 match)
#:export (compressor?
+ compressor-name
+ %compressors
lookup-compressor
self-contained-tarball
docker-image
squashfs-image
+ %formats
guix-pack))
;; Type of a compression tool.
--
2.29.1
From 17344a2a6f68146c51368788dcdf3dd9193155e6 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@asu.edu>
Date: Thu, 12 Nov 2020 21:54:45 -0800
Subject: [PATCH 2/2] guix build: Expose log-url for third parties.

* guix/scripts/build.scm (log-url): Expose it.
---
guix/scripts/build.scm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

Toggle diff (17 lines)
diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm
index f4a8af035b..41f21fa81d 100644
--- a/guix/scripts/build.scm
+++ b/guix/scripts/build.scm
@@ -57,7 +57,9 @@
#:use-module ((guix status) #:select (with-status-verbosity))
#:use-module ((guix progress) #:select (current-terminal-columns))
#:use-module ((guix build syscalls) #:select (terminal-columns))
- #:export (%standard-build-options
+ #:export (log-url
+
+ %standard-build-options
set-build-options-from-command-line
set-build-options-from-command-line*
show-build-options-help
--
2.29.1
Z
Z
zimoun wrote on 13 Nov 2020 16:58
86blg1dz9t.fsf@gmail.com
Hi John,

Thank you for raising this.


Toggle quote (10 lines)
> diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
> index 8e694edbbe..b6dfcb5f6a 100644
> --- a/guix/scripts/pack.scm
> +++ b/guix/scripts/pack.scm
> @@ -58,11 +58,14 @@
> #:use-module (srfi srfi-37)
> #:use-module (ice-9 match)
> #:export (compressor?
> + compressor-name

Why not also ’compress-extension’ and ’compress-command’? Then
<compressor> will be completely exposed which seems good, isn’t it?


All the best,
simon
J
J
John Soo wrote on 13 Nov 2020 17:11
(name . zimoun)(address . zimon.toutoune@gmail.com)(address . 44619@debbugs.gnu.org)
87lff5xmnb.fsf@asu.edu
Hi zimoun,

zimoun <zimon.toutoune@gmail.com> writes:

Toggle quote (13 lines)
>> diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
>> index 8e694edbbe..b6dfcb5f6a 100644
>> --- a/guix/scripts/pack.scm
>> +++ b/guix/scripts/pack.scm
>> @@ -58,11 +58,14 @@
>> #:use-module (srfi srfi-37)
>> #:use-module (ice-9 match)
>> #:export (compressor?
>> + compressor-name
>
> Why not also ’compress-extension’ and ’compress-command’? Then
> <compressor> will be completely exposed which seems good, isn’t it?

Done, thank you!

All the best to you, too,

John
From 7f718484fe952b674c2cdaa70315d49df3c8aa57 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@asu.edu>
Date: Thu, 12 Nov 2020 21:47:36 -0800
Subject: [PATCH 1/2] guix pack: Expose some bindings for third-party use.

* guix/scripts/pack.scm (compressor-name, compressor-extension,
compressor-command, %compressors, %formats):
Expose them.

fix pack.scm
---
guix/scripts/pack.scm | 5 +++++
1 file changed, 5 insertions(+)

Toggle diff (23 lines)
diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
index 8e694edbbe..a687505e0d 100644
--- a/guix/scripts/pack.scm
+++ b/guix/scripts/pack.scm
@@ -58,11 +58,16 @@
#:use-module (srfi srfi-37)
#:use-module (ice-9 match)
#:export (compressor?
+ compressor-name
+ compressor-extenstion
+ compressor-command
+ %compressors
lookup-compressor
self-contained-tarball
docker-image
squashfs-image
+ %formats
guix-pack))
;; Type of a compression tool.
--
2.29.1
From 036dc16855c9a3f3022598c700f5e8233022aee1 Mon Sep 17 00:00:00 2001
From: John Soo <jsoo1@asu.edu>
Date: Thu, 12 Nov 2020 21:54:45 -0800
Subject: [PATCH 2/2] guix build: Expose log-url for third parties.

* guix/scripts/build.scm (log-url): Expose it.
---
guix/scripts/build.scm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

Toggle diff (17 lines)
diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm
index f4a8af035b..41f21fa81d 100644
--- a/guix/scripts/build.scm
+++ b/guix/scripts/build.scm
@@ -57,7 +57,9 @@
#:use-module ((guix status) #:select (with-status-verbosity))
#:use-module ((guix progress) #:select (current-terminal-columns))
#:use-module ((guix build syscalls) #:select (terminal-columns))
- #:export (%standard-build-options
+ #:export (log-url
+
+ %standard-build-options
set-build-options-from-command-line
set-build-options-from-command-line*
show-build-options-help
--
2.29.1
L
L
Ludovic Courtès wrote on 13 Nov 2020 18:13
(name . John Soo)(address . jsoo1@asu.edu)
878sb5ch8i.fsf@gnu.org
Hi John,

John Soo <jsoo1@asu.edu> skribis:

Toggle quote (9 lines)
> From 7f718484fe952b674c2cdaa70315d49df3c8aa57 Mon Sep 17 00:00:00 2001
> From: John Soo <jsoo1@asu.edu>
> Date: Thu, 12 Nov 2020 21:47:36 -0800
> Subject: [PATCH 1/2] guix pack: Expose some bindings for third-party use.
>
> * guix/scripts/pack.scm (compressor-name, compressor-extension,
> compressor-command, %compressors, %formats):
> Expose them.

[...]

Toggle quote (7 lines)
> From 036dc16855c9a3f3022598c700f5e8233022aee1 Mon Sep 17 00:00:00 2001
> From: John Soo <jsoo1@asu.edu>
> Date: Thu, 12 Nov 2020 21:54:45 -0800
> Subject: [PATCH 2/2] guix build: Expose log-url for third parties.
>
> * guix/scripts/build.scm (log-url): Expose it.

Applied both to ‘version-1.2.0’, which we’ll eventually merge back to
‘master’.

In general, code outside the repo should not use ‘@@’ at all to refer to
Guix internals; we should ensure this is the case for Emacs-Guix.

Actually, even code within Guix should avoid it. :-)

Thanks!

Ludo’.
J
J
John Soo wrote on 13 Nov 2020 18:17
(name . Ludovic Courtès)(address . ludo@gnu.org)
874kltxjkt.fsf@asu.edu
Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (5 lines)
> In general, code outside the repo should not use ‘@@’ at all to refer to
> Guix internals; we should ensure this is the case for Emacs-Guix.
>
> Actually, even code within Guix should avoid it. :-)

Indeed. I submitted some patches to emacs-guix to remedy this:


Thanks!

- John
L
L
Ludovic Courtès wrote on 13 Nov 2020 18:19
control message for bug #44619
(address . control@debbugs.gnu.org)
871rgxcgyb.fsf@gnu.org
tags 44619 fixed
close 44619
quit
?