From 7c86fdda7ceed11377b0e17b47c91598be59be52 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 28 Mar 2019 20:18:02 +0200 Subject: Revert "build-system/ruby: Use invoke." This reverts commit 0244952c11c0409597fce5c39dfbcafdfd2ea651. We prefer 'invoke', but the custom error handling works better with the code as-is. --- guix/build/ruby-build-system.scm | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'guix/build') diff --git a/guix/build/ruby-build-system.scm b/guix/build/ruby-build-system.scm index 49400b204d..63c94765f7 100644 --- a/guix/build/ruby-build-system.scm +++ b/guix/build/ruby-build-system.scm @@ -143,13 +143,16 @@ (define* (install #:key inputs outputs (gem-flags '()) (gem-dir (string-append vendor-dir "/gems/" gem-name))) (setenv "GEM_VENDOR" vendor-dir) - (or (apply invoke "gem" "install" gem-file - "--verbose" - "--local" "--ignore-dependencies" "--vendor" - ;; Executables should go into /bin, not - ;; /lib/ruby/gems. - "--bindir" (string-append out "/bin") - gem-flags) + (or (zero? + ;; 'zero? system*' allows the custom error handling to function as + ;; expected, while 'invoke' raises its own exception. + (apply system* "gem" "install" gem-file + "--verbose" + "--local" "--ignore-dependencies" "--vendor" + ;; Executables should go into /bin, not + ;; /lib/ruby/gems. + "--bindir" (string-append out "/bin") + gem-flags)) (begin (let ((failed-output-dir (string-append (getcwd) "/out"))) (mkdir failed-output-dir) -- cgit v1.2.3