From 969e678ed9f907764e6412386432dfbddf493f71 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 20 May 2013 18:14:55 +0200 Subject: Add `--max-silent-time' to `guix build' and `guix package'. * guix/scripts/build.scm (%default-options): Add default `max-silent-time' value. (show-help, %options): Add `--max-silent-time'. (guix-build): Pass `max-silent-time' to `set-build-options'. * guix/scripts/package.scm (%default-options): Add default `max-silent-time' value. (show-help, %options): Add `--max-silent-time'. (guix-package): Pass `max-silent-time' to `set-build-options'. * guix/ui.scm (string->number*): New procedure. * tests/derivations.scm ("build-expression->derivation and max-silent-time"): New test. * doc/guix.texi (Invoking guix package, Invoking guix build): Document `--max-silent-time'. --- guix/scripts/package.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'guix/scripts/package.scm') diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 7fda71e7e9..e68d0dd902 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -413,6 +413,7 @@ (define (display-search-paths packages profile) (define %default-options ;; Alist of default option values. `((profile . ,%current-profile) + (max-silent-time . 3600) (substitutes? . #t))) (define (show-help) @@ -438,6 +439,9 @@ (define (show-help) -n, --dry-run show what would be done without actually doing it")) (display (_ " --no-substitutes build instead of resorting to pre-built substitutes")) + (display (_ " + --max-silent-time=SECONDS + mark the build as failed after SECONDS of silence")) (display (_ " --bootstrap use the bootstrap Guile to build the profile")) (display (_ " @@ -499,6 +503,10 @@ (define %options (lambda (opt name arg result) (alist-cons 'substitutes? #f (alist-delete 'substitutes? result)))) + (option '("max-silent-time") #t #f + (lambda (opt name arg result) + (alist-cons 'max-silent-time (string->number* arg) + result))) (option '("bootstrap") #f #f (lambda (opt name arg result) (alist-cons 'bootstrap? #t result))) @@ -902,7 +910,9 @@ (define (process-query opts) (parameterize ((%store (open-connection))) (set-build-options (%store) #:use-substitutes? - (assoc-ref opts 'substitutes?)) + (assoc-ref opts 'substitutes?) + #:max-silent-time + (assoc-ref opts 'max-silent-time)) (parameterize ((%guile-for-build (package-derivation (%store) -- cgit v1.2.3