From 650f1615de325f332dbf3d993acc8a16648d795e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 5 Nov 2015 12:04:26 +0100 Subject: [PATCH] edit: Improve error reporting when $EDITOR is not found. Reported by Benno Evers at . * guix/scripts/edit.scm (guix-edit): Wrap 'execl' call in 'catch'. Provide more meaningful error message. --- guix/scripts/edit.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/guix/scripts/edit.scm b/guix/scripts/edit.scm index fa10a16f31..0509148c4d 100644 --- a/guix/scripts/edit.scm +++ b/guix/scripts/edit.scm @@ -79,5 +79,12 @@ line." (leave (_ "source location of package '~a' is unknown~%") (package-full-name package)))) packages) - (apply execlp (%editor) (%editor) - (append-map package->location-specification packages))))) + + (catch 'system-error + (lambda () + (apply execlp (%editor) (%editor) + (append-map package->location-specification packages))) + (lambda args + (let ((errno (system-error-errno args))) + (leave (_ "failed to launch '~a': ~a~%") + (%editor) (strerror errno))))))))