diff options
author | Mathieu Othacehe <m.othacehe@gmail.com> | 2019-12-31 11:04:51 +0100 |
---|---|---|
committer | Mathieu Othacehe <m.othacehe@gmail.com> | 2019-12-31 11:04:51 +0100 |
commit | ce9383c090fff90acb3a555d0ccfe12d791fef17 (patch) | |
tree | 7b9cce156799486b94e4f3e55b03831638e73465 /guix/upstream.scm | |
parent | 91be09de61c277d0f1b26cefcefcd0a7fae2e00d (diff) | |
parent | fc4eb87dc45b169e3912c73bbf60cb8ce76b7c7c (diff) | |
download | guix-patches-ce9383c090fff90acb3a555d0ccfe12d791fef17.tar guix-patches-ce9383c090fff90acb3a555d0ccfe12d791fef17.tar.gz |
Merge remote-tracking branch 'master' into core-updates.
Diffstat (limited to 'guix/upstream.scm')
-rw-r--r-- | guix/upstream.scm | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/guix/upstream.scm b/guix/upstream.scm index aa47dab4b4..c11de0b25b 100644 --- a/guix/upstream.scm +++ b/guix/upstream.scm @@ -318,16 +318,20 @@ values: 'interactive' (default), 'always', and 'never'." (basename url) tarball))) (mbegin %store-monad (built-derivations (list drv)) - (return (derivation->output-path drv))))))) - - (ret (gnupg-verify* sig data #:key-download key-download))) - (if ret - tarball - (begin - (warning (G_ "signature verification failed for `~a'~%") - url) - (warning (G_ "(could be because the public key is not in your keyring)~%")) - #f)))))) + (return (derivation->output-path drv)))))))) + (let-values (((status data) + (gnupg-verify* sig data #:key-download key-download))) + (match status + ('valid-signature + tarball) + ('invalid-signature + (warning (G_ "signature verification failed for '~a' (key: ~a)~%") + url data) + #f) + ('missing-key + (warning (G_ "missing public key ~a for '~a'~%") + data url) + #f))))))) (define (find2 pred lst1 lst2) "Like 'find', but operate on items from both LST1 and LST2. Return two |