From c1d52c71aa4fc8085a9737ad1b235ca53a854649 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 21 Feb 2014 17:45:04 +0100 Subject: [PATCH] ui: Handle SRFI-35 '&message' conditions. * guix/ui.scm (call-with-error-handling): Add case for 'message-condition?'. * po/Makevars: Fix typo in comment. --- guix/ui.scm | 6 +++++- po/Makevars | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/guix/ui.scm b/guix/ui.scm index d6058f806b..c232b32674 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -31,6 +31,7 @@ #:use-module (srfi srfi-19) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) + #:use-module (srfi srfi-35) #:use-module (srfi srfi-37) #:autoload (ice-9 ftw) (scandir) #:use-module (ice-9 match) @@ -186,7 +187,10 @@ General help using GNU software: ")) ((nix-protocol-error? c) ;; FIXME: Server-provided error messages aren't i18n'd. (leave (_ "build failed: ~a~%") - (nix-protocol-error-message c)))) + (nix-protocol-error-message c))) + ((message-condition? c) + ;; Normally '&message' error conditions have an i18n'd message. + (leave (_ "~a~%") (gettext (condition-message c))))) ;; Catch EPIPE and the likes. (catch 'system-error thunk diff --git a/po/Makevars b/po/Makevars index ade615a452..d45ea4b979 100644 --- a/po/Makevars +++ b/po/Makevars @@ -6,7 +6,7 @@ subdir = po top_builddir = .. # These options get passed to xgettext. We want to catch standard -# gettext uses, package synopses and descriptions, and SRFI-34 error +# gettext uses, package synopses and descriptions, and SRFI-35 error # condition messages. XGETTEXT_OPTIONS = \ --language=Scheme --from-code=UTF-8 \