[had to corrupt URIs to get past spam filter] Noticed by accident when ran 'guix refresh' (global refreh). Full quick reproducer is [1]. The trigger seems to be '(uri (list' nesting: gnu/packages/python.scm: (define-public python-cram (package (name "python-cram") (version "0.7") (home-page "https://...") (source (origin (method url-fetch) (uri (list (string-append home-page "cram-" version ".tar.gz") (pypi-uri "cram" version))) (sha256 (base32 "0bvz6fwdi55rkrz3f50zsy35gvvwhlppki2yml5bj5ffy9d499vx")))) A few issues here: - in [1] it does not tell which package it is. - in full 'guix refresh' run the first error aborts whole process. would be nice to have a mode which proceeds even in face of errors [1]: ~/dev/git/guix $ ./pre-inst-env guix refresh python-cram ;;; note: source file /home/slyfox/dev/git/guix/guix/import/pypi.scm ;;; newer than compiled /home/slyfox/dev/git/guix/guix/import/pypi.go Backtrace: In ice-9/boot-9.scm: 66: 19 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 432: 18 [eval # #] In ice-9/boot-9.scm: 2404: 17 [save-module-excursion #] 4056: 16 [#] 1727: 15 [%start-stack load-stack ...] 1732: 14 [#] In unknown file: ?: 13 [primitive-load "/home/slyfox/dev/git/guix/scripts/guix"] In guix/ui.scm: 1228: 12 [run-guix-command refresh "python-cram"] In ice-9/boot-9.scm: 160: 11 [catch srfi-34 # ...] 160: 10 [catch system-error ...] In guix/scripts/refresh.scm: 442: 9 [#] 462: 8 [#] In srfi/srfi-1.scm: 616: 7 [for-each # ...] In guix/scripts/refresh.scm: 288: 6 [check-for-package-update # # # ...] In ice-9/boot-9.scm: 160: 5 [catch srfi-34 # ...] In ice-9/eval.scm: 411: 4 [eval # #] 387: 3 [eval # #] 387: 2 [eval # #] In guix/utils.scm: 569: 1 [file-sans-extension #] In unknown file: ?: 0 [string-rindex # #\. # ...] ERROR: In procedure string-rindex: ERROR: In procedure string-index-right: Wrong type argument in position 1 (expecting string): ("https://..." "https://...") -- Sergei