‘guix system image’ forces commit authentication?

  • Open
  • quality assurance status badge
Details
2 participants
  • Tobias Geerinckx-Rice
  • Mathieu Othacehe
Owner
unassigned
Submitted by
Tobias Geerinckx-Rice
Severity
normal
T
T
Tobias Geerinckx-Rice wrote on 15 Aug 2022 21:06
(address . bug-guix@gnu.org)
878rnpgw70.fsf@nckx
Hi all,

There doesn't seem to be a way to opt out of commit authentication
with ‘./pre-inst-env guix system image’. Am I missing (a
reasonable!) one?

I'd expect all commands that authenticate commits to honour
‘--disable-authentication’.

Toggle snippet (61 lines)
λ ./pre-inst-env guix system image -t iso9660
gnu/system/install.scm
Updating channel 'guix' from Git repository at
'/home/nckx/guix/'...
Backtrace:
In guix/gexp.scm:
898:13 19 (_ _)
In guix/store.scm:
1996:8 18 (_ _)
In guix/gexp.scm:
300:22 17 (_ _)
In guix/store.scm:
1996:8 16 (_ _)
In guix/gexp.scm:
300:22 15 (_ _)
In guix/store.scm:
1996:8 14 (_ _)
In guix/packages.scm:
1876:11 13 (_ _)
In guix/build-system/channel.scm:
42:2 12 (_ _)
In guix/store.scm:
2040:38 11 (_ #<store-connection 256.99 7bdb3437a460>)
In guix/channels.scm:
523:7 10 (loop _ _)
In guix/combinators.scm:
48:26 9 (fold2 #<procedure 7bdb32ca8120 at
guix/channels.scm:523:13 (channel previous-channels
instances)> () () (#<<channel> …>))
In guix/channels.scm:
533:29 8 (_ #<<channel> name: guix url: "/home/nckx/guix/"
branch: "master" commit:
"43513c4e93740e2a9dc4ca138f8b34434f66e170" …> …)
421:12 7 (latest-channel-instance #<store-connection 256.99
7bdb3437a460> _ #:patches _ #:starting-commit _ #:authenticate?
_ # _)
In guix/git.scm:
299:7 6 (call-with-repository _ #<procedure 7bdb32ca8060 at
guix/channels.scm:384:2 (repository)>)
In guix/git-authenticate.scm:
404:4 5 (authenticate-repository #<git-repository 69e6c0> _
#vu8(187 176 45 223 44 234 246 168 13 29 230 67 162 160 109
242 # …) …)
263:20 4 (load-keyring-from-reference #<git-repository 69e6c0>
_)
In git/branch.scm:
101:8 3 (_ _ _ _)
In git/bindings.scm:
77:2 2 (raise-git-error _)
In ice-9/boot-9.scm:
1685:16 1 (raise-exception _ #:continuable? _)
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Git error: cannot locate remote-tracking branch 'origin/keyring'

λ ./pre-inst-env guix system image -t iso9660
gnu/system/install.scm --disable-authentication
guix system: error: disable-authentication: unrecognized option

Kind regards,

T G-R
-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCYvqaAw0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW15CV0BAOG4bM35HobAKJDUN7TvoZYLDLqFp/Hr3fXsxR/j
MULkAQCbZHwUKd1CO88s+9uPcY3D4DZif+/gy+xOIc6O7fUfAA==
=Z8pT
-----END PGP SIGNATURE-----

M
M
Mathieu Othacehe wrote on 16 Aug 2022 11:02
Re: bug#57229: ‘guix system image ’ forces commit authentication?
(name . Tobias Geerinckx-Rice)(address . me@tobias.gr)(address . 57229@debbugs.gnu.org)
87tu6cef3e.fsf@gnu.org
Hey,

Toggle quote (4 lines)
> λ ./pre-inst-env guix system image -t iso9660
> gnu/system/install.scm --disable-authentication
> guix system: error: disable-authentication: unrecognized option

That's probably a side effect of https://issues.guix.gnu.org/53210that
includes the "current-guix" inside the installation image instead of the
latest Guix snapshot.

To build "current-guix", we rely on the channel-build-system and
ultimately the latest-channel-instance procedure. This procedure takes an
"authenticate?" argument.

Now passing this option will be tricky as we do not call
latest-channel-instance directly like in (guix scripts pull) but rather
rely on the "current-guix" variable.

I'll think more about it.

Mathieu
?