build-self: Emit a useful message upon error.

* build-aux/build-self.scm (build): Raise a '&message' condition instead
of calling 'error'.
This commit is contained in:
Ludovic Courtès 2018-09-13 10:23:39 +02:00
parent 78c9058dde
commit ac4d2ec81a
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5

View File

@ -25,6 +25,8 @@
#:use-module (guix build-system gnu)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (rnrs io ports)
#:use-module (ice-9 match)
#:use-module (ice-9 popen)
@ -420,7 +422,15 @@ files."
;; Unsupported PULL-VERSION.
(return #f))
((? string? str)
(error "invalid build result" (list build str))))))))
(raise (condition
(&message
(message (format #f "You found a bug: the program '~a'
failed to compute the derivation for Guix (version: ~s; system: ~s;
host version: ~s; pull-version: ~s).
Please report it by email to <~a>.~%"
(derivation->output-path build)
version system %guix-version pull-version
%guix-bug-report-address)))))))))))
;; This file is loaded by 'guix pull'; return it the build procedure.
build