GNU bug report logs - #34778
'guix refresh -u' fails for packages using 'git-fetch'

Previous Next

Package: guix;

Reported by: Gábor Boskovits <boskovits <at> gmail.com>

Date: Thu, 7 Mar 2019 08:29:02 UTC

Severity: normal

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#34778: closed ('guix refresh -u' fails for packages using
 'git-fetch')
Date: Fri, 08 Mar 2019 22:31:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Fri, 08 Mar 2019 23:30:09 +0100
with message-id <87h8cdc83y.fsf <at> gnu.org>
and subject line Re: bug#34778: Guix refresh -u fails
has caused the debbugs.gnu.org bug report #34778,
regarding 'guix refresh -u' fails for packages using 'git-fetch'
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
34778: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=34778
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Gábor Boskovits <boskovits <at> gmail.com>
To: bug-guix <at> gnu.org
Subject: Guix refresh -u fails
Date: Thu, 7 Mar 2019 09:28:21 +0100
guix refresh -u unibilium
fails with the following backtrace:
gabriel <at> guixsd ~/guix$ ./pre-inst-env guix refresh -u unibilium
Backtrace:
          14 (apply-smob/1 #<catch-closure 728c20>)
In ice-9/boot-9.scm:
    705:2 13 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
In ice-9/eval.scm:
    619:8 12 (_ #(#(#<directory (guile-user) 7ae140>)))
In guix/ui.scm:
  1654:12 11 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    829:9 10 (catch _ _ #<procedure 7f7f2456b9b8 at guix/ui.scm:624…> …)
    829:9  9 (catch _ _ #<procedure 7f7f2456b9d0 at guix/ui.scm:750…> …)
In guix/scripts/refresh.scm:
    513:8  8 (_)
In guix/store.scm:
  1737:24  7 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
In guix/scripts/refresh.scm:
   531:16  6 (_ _)
In srfi/srfi-1.scm:
    640:9  5 (for-each #<procedure 289bd20 at guix/scripts/refresh.…> …)
In guix/scripts/refresh.scm:
   301:20  4 (update-package #<store-connection 256.99 93be10> #<pa…> …)
In guix/upstream.scm:
   374:22  3 (package-update #<store-connection 256.99 93be10> _ _ # _)
   302:17  2 (download-tarball #<store-connection 256.99 93be10> #f # …)
In guix/download.scm:
   568:55  1 (download-to-store #<store-connection 256.99 93be10> #f …)
In unknown file:
           0 (basename #f #<undefined>)

ERROR: In procedure basename:
In procedure scm_to_utf8_stringn: Wrong type argument in position 1
(expecting string): #f

guix describe output:
gabriel <at> guixsd ~/guix$ guix describe
41 generáció    márc 04 2019 11:53:03    (jelenlegi)
  guix 3499638
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 3499638ef87191d458f3e07455a9a0fefe76c085

guix refresh unibilium works just fine.


[Message part 3 (message/rfc822, inline)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Gábor Boskovits <boskovits <at> gmail.com>
Cc: 34778-done <at> debbugs.gnu.org
Subject: Re: bug#34778: Guix refresh -u fails
Date: Fri, 08 Mar 2019 23:30:09 +0100
Hi Gábor,

Gábor Boskovits <boskovits <at> gmail.com> skribis:

> guix refresh -u unibilium
> fails with the following backtrace:
> gabriel <at> guixsd ~/guix$ ./pre-inst-env guix refresh -u unibilium
> Backtrace:
>           14 (apply-smob/1 #<catch-closure 728c20>)
> In ice-9/boot-9.scm:
>     705:2 13 (call-with-prompt _ _ #<procedure default-prompt-handle…>)
> In ice-9/eval.scm:
>     619:8 12 (_ #(#(#<directory (guile-user) 7ae140>)))
> In guix/ui.scm:
>   1654:12 11 (run-guix-command _ . _)
> In ice-9/boot-9.scm:
>     829:9 10 (catch _ _ #<procedure 7f7f2456b9b8 at guix/ui.scm:624…> …)
>     829:9  9 (catch _ _ #<procedure 7f7f2456b9d0 at guix/ui.scm:750…> …)
> In guix/scripts/refresh.scm:
>     513:8  8 (_)
> In guix/store.scm:
>   1737:24  7 (run-with-store _ _ #:guile-for-build _ #:system _ # _)
> In guix/scripts/refresh.scm:
>    531:16  6 (_ _)
> In srfi/srfi-1.scm:
>     640:9  5 (for-each #<procedure 289bd20 at guix/scripts/refresh.…> …)
> In guix/scripts/refresh.scm:
>    301:20  4 (update-package #<store-connection 256.99 93be10> #<pa…> …)
> In guix/upstream.scm:
>    374:22  3 (package-update #<store-connection 256.99 93be10> _ _ # _)
>    302:17  2 (download-tarball #<store-connection 256.99 93be10> #f # …)
> In guix/download.scm:
>    568:55  1 (download-to-store #<store-connection 256.99 93be10> #f …)
> In unknown file:
>            0 (basename #f #<undefined>)
>
> ERROR: In procedure basename:
> In procedure scm_to_utf8_stringn: Wrong type argument in position 1
> (expecting string): #f

This is because unibilium uses ‘git-fetch’, and currently ‘guix refresh
-u’ only knows how to download tarballs, it doesn’t know how to make Git
checkouts.

Commit 0bd1498fc40820be35125cc0a62482d015b58e9b fixes the issue by at
least reporting a proper error message.

We’ll have to adjust <upstream-source> to support not just tarball URLs,
as is currently the case, but also Git references.

Thanks,
Ludo’.


This bug report was last modified 6 years and 78 days ago.

Previous Next


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