From 4d58122071bbd7bb56c9658a9bbe7621bf3e423d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
Date: Sun, 22 Mar 2015 23:43:25 +0100
Subject: [PATCH] store: Default to a non-empty list of substituters.

Fixes <http://bugs.gnu.org/20163>.
Reported by Mark H Weaver <mhw@netris.org>.

* guix/store.scm (%default-substitute-urls): New variable.
  (set-build-options): Change default value of #:substitute-urls to
  %DEFAULT-SUBSTITUTE-URLS.
---
 guix/store.scm | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/guix/store.scm b/guix/store.scm
index 45c555b12c..3d6b06989c 100644
--- a/guix/store.scm
+++ b/guix/store.scm
@@ -447,6 +447,10 @@ encoding conversion errors."
                               (message "invalid error code")
                               (status   k))))))))
 
+(define %default-substitute-urls
+  ;; Default list of substituters.
+  '("http://hydra.gnu.org"))
+
 (define* (set-build-options server
                             #:key keep-failed? keep-going? fallback?
                             (verbosity 0)
@@ -459,7 +463,12 @@ encoding conversion errors."
                             (print-build-trace #t)
                             (build-cores (current-processor-count))
                             (use-substitutes? #t)
-                            (substitute-urls '())) ; client "untrusted" cache URLs
+
+                            ;; Client-provided substitute URLs.  For
+                            ;; unprivileged clients, these are considered
+                            ;; "untrusted"; for root, they override the
+                            ;; daemon's settings.
+                            (substitute-urls %default-substitute-urls))
   ;; Must be called after `open-connection'.
 
   (define socket