From 149590380adb240e0993931b4f72e6f285b24483 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 17 May 2016 13:41:07 +0200 Subject: import: Gracefully report import failures. Previously, something like 'guix import gnu which' would spit out a backtrace if, say, the 'which' tarball could not be authenticated. * guix/upstream.scm (download-tarball): Mention failure modes in docstring. * guix/import/gnu.scm (gnu-package->sexp): Return #f when 'download-tarball' returns #f. * guix/scripts/import.scm (guix-import): Call 'leave' when IMPORTER does not return a (package ...) sexp. --- guix/upstream.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'guix/upstream.scm') diff --git a/guix/upstream.scm b/guix/upstream.scm index 167c9ff89a..18157376d2 100644 --- a/guix/upstream.scm +++ b/guix/upstream.scm @@ -143,8 +143,9 @@ no update is needed or known." #:key (key-download 'interactive)) "Download the tarball at URL to the store; check its OpenPGP signature at SIGNATURE-URL, unless SIGNATURE-URL is false. On success, return the tarball -file name. KEY-DOWNLOAD specifies a download policy for missing OpenPGP keys; -allowed values: 'interactive' (default), 'always', and 'never'." +file name; return #f on failure (network failure or authentication failure). +KEY-DOWNLOAD specifies a download policy for missing OpenPGP keys; allowed +values: 'interactive' (default), 'always', and 'never'." (let ((tarball (download-to-store store url))) (if (not signature-url) tarball -- cgit v1.2.3