GNU bug report logs - #47336
Disarchive as a fallback for downloads

Previous Next

Package: guix-patches;

Reported by: Timothy Sample <samplet <at> ngyro.com>

Date: Tue, 23 Mar 2021 04:43:01 UTC

Severity: normal

Done: Timothy Sample <samplet <at> ngyro.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Timothy Sample <samplet <at> ngyro.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: control <at> debbugs.gnu.org, 47336 <at> debbugs.gnu.org
Subject: [bug#47336] Disarchive as a fallback for downloads
Date: Wed, 28 Apr 2021 03:01:55 -0400
reopen 47336
thanks

Hi again,

Timothy Sample <samplet <at> ngyro.com> writes:

> I just pushed this series [...]

And broke “guix pull”!!  (I somehow fooled myself into thinking that I
had already tested with “guix pull --url=...” locally.)  I reverted the
offending commit.

It turns out that adding a reference from “(guix build download)” to
“(guix swh)” breaks “compute-guix-derivation” in
“build-aux/build-self.scm”.  This is because “(guix swh)” references
“(json)”, which is not available in the “compute-guix-derivation”
environment.  I tried mimicking the “fake-git” trick, but it didn’t work
(I guess it needs the “define-json-mapping” macro at compile time).

Everything works if I remove the #:autoload for “(guix swh)” and put

  ;; If we import (guix swh) directly, we introduce a compile-time
  ;; dependency on Guile-JSON.  This breaks the "build-self" code, which
  ;; needs to build this module without Guile-JSON.  Hence, we track
  ;; down the following procedure at runtime.
  (define swh-download-directory
    (module-ref (resolve-module '(guix swh)) 'swh-download-directory))

inside of “disarchive-fetch/any” (just before it’s needed).  Does this
approach look okay?


-- Tim




This bug report was last modified 4 years and 10 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.