summary refs log tree commit diff
path: root/bin/tissue
diff options
context:
space:
mode:
Diffstat (limited to 'bin/tissue')
-rwxr-xr-xbin/tissue41
1 files changed, 18 insertions, 23 deletions
diff --git a/bin/tissue b/bin/tissue
index f9524ac..606e36d 100755
--- a/bin/tissue
+++ b/bin/tissue
@@ -266,29 +266,24 @@ Serve repositories specified in CONFIG-FILE over HTTP.
                             (default-configuration))))
        (when (assq-ref args 'listen-repl)
          (start-repl (assq-ref args 'listen-repl)))
-       (let* ((state-directory (assq-ref args 'state-directory))
-              (hosts (assq-ref args 'hosts)))
-         (call-with-temporary-checkouts (map (match-lambda
-                                               ((name _ ...)
-                                                (string-append state-directory "/" name "/repository")))
-                                             hosts)
-           (lambda checkouts
-             (start-web-server (listen->socket-address (assq-ref args 'listen))
-                               (map (match-lambda*
-                                      (((name parameters ...) repository-directory)
-                                       ;; Add CSS, repository directory,
-                                       ;; website directory, xapian
-                                       ;; directory settings for each host.
-                                       (parameterize ((%current-git-repository
-                                                       (repository-open repository-directory)))
-                                         (cons name
-                                               `((project . ,(load-config))
-                                                 (repository-directory . ,repository-directory)
-                                                 (website-directory . ,(string-append state-directory "/" name "/website"))
-                                                 (xapian-directory . ,(string-append state-directory "/" name "/xapian"))
-                                                 ,@parameters)))))
-                                    hosts
-                                    checkouts)))))))))
+       (start-web-server (listen->socket-address (assq-ref args 'listen))
+                         (map (match-lambda
+                                ((name parameters ...)
+                                 ;; Add CSS, repository directory,
+                                 ;; website directory, xapian
+                                 ;; directory settings for each host.
+                                 (let* ((state-directory (assq-ref args 'state-directory))
+                                        (repository-directory
+                                         (string-append state-directory "/" name "/repository")))
+                                   (parameterize ((%current-git-repository
+                                                   (repository-open repository-directory)))
+                                     (cons name
+                                           `((project . ,(load-config))
+                                             (repository-directory . ,repository-directory)
+                                             (website-directory . ,(string-append state-directory "/" name "/website"))
+                                             (xapian-directory . ,(string-append state-directory "/" name "/xapian"))
+                                             ,@parameters))))))
+                              (assq-ref args 'hosts)))))))
 
 (define tissue-web-dev
   (match-lambda*