--- Begin Message ---
Subject: |
[PATCH] cuirass: Add fallback parameter. |
Date: |
Wed, 12 Jul 2017 10:24:46 +0200 |
From: Mathieu Othacehe <address@hidden>
* src/cuirass/base.scm (%fallback?): New exported parameter.
(process-specs)[set-build-options]: Pass fallback parameter.
* bin/cuirass.in (%options): Add fallback.
(main): Set %fallback? parameter.
(show-help): Update.
---
bin/cuirass.in | 5 ++++-
src/cuirass/base.scm | 8 +++++++-
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/bin/cuirass.in b/bin/cuirass.in
index 61b9dd8..18edf1e 100644
--- a/bin/cuirass.in
+++ b/bin/cuirass.in
@@ -35,6 +35,7 @@ exec ${GUILE:address@hidden@} --no-auto-compile -e main -s
"$0" "$@"
--one-shot Evaluate and build jobs only once
--cache-directory=DIR Use DIR for storing repository data
+ --fallback Fall back to building when the substituter fails.
-L --load-path=DIR Prepend DIR to Guix package module search path.
-S --specifications=SPECFILE
Add specifications from SPECFILE to database.
@@ -56,6 +57,7 @@ exec ${GUILE:address@hidden@} --no-auto-compile -e main -s
"$0" "$@"
(port (single-char #\p) (value #t))
(interval (single-char #\I) (value #t))
(use-substitutes (value #f))
+ (fallback (value #f))
(version (single-char #\V) (value #f))
(help (single-char #\h) (value #f))))
@@ -73,7 +75,8 @@ exec ${GUILE:address@hidden@} --no-auto-compile -e main -s
"$0" "$@"
(option-ref opts 'cache-directory (%package-cachedir)))
(%guix-package-path
(option-ref opts 'load-path (%guix-package-path)))
- (%use-substitutes? (option-ref opts 'use-substitutes #f)))
+ (%use-substitutes? (option-ref opts 'use-substitutes #f))
+ (%fallback? (option-ref opts 'fallback #f)))
(cond
((option-ref opts 'help #f)
(show-help)
diff --git a/src/cuirass/base.scm b/src/cuirass/base.scm
index d0e77d9..b84cab7 100644
--- a/src/cuirass/base.scm
+++ b/src/cuirass/base.scm
@@ -43,7 +43,8 @@
;; Parameters.
%guix-package-path
%package-cachedir
- %use-substitutes?))
+ %use-substitutes?
+ %fallback?))
(cond-expand
(guile-2.2
@@ -56,6 +57,10 @@
;; Define whether to use substitutes
(make-parameter #f))
+(define %fallback?
+ ;; Define whether to fall back to building when the substituter fails.
+ (make-parameter #f))
+
(define %package-cachedir
;; Define to location of cache directory of this package.
(make-parameter (or (getenv "CUIRASS_CACHEDIR")
@@ -210,6 +215,7 @@ directory and the sha1 of the top level commit in this
directory."
;; failure.
(set-build-options store
#:use-substitutes? (%use-substitutes?)
+ #:fallback? (%fallback?)
#:keep-going? #t)
(let* ((spec* (acons #:current-commit commit spec))
--
2.13.1
--- End Message ---