summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2018-04-25 08:17:52 +0100
committerChristopher Baines <mail@cbaines.net>2018-05-18 17:24:39 +0100
commitc3343d62f682b33b1eefce74e9b08585faa8680c (patch)
tree1b3f5bf34389f8ec01c92a728dc836009598bdab
parent57c5aa7c7d7db150e3ee5766aa872746bf4db957 (diff)
services: cgit: Improve handling of extra-options.
* gnu/services/cgit.scm (serialize-cgit-configuration): Add the extra options, one per line, before the scan-path, as this makes it possible to use the extra-options to affect the global behaviour for repositories. (serialize-extra-options): New procedure.
-rw-r--r--gnu/services/cgit.scm7
1 files changed, 7 insertions, 0 deletions
diff --git a/gnu/services/cgit.scm b/gnu/services/cgit.scm
index 8ef12cd5a0..3183535d4a 100644
--- a/gnu/services/cgit.scm
+++ b/gnu/services/cgit.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -169,6 +170,9 @@
'project-list
(plain-file "project-list" (string-join val "\n")))))
+(define (serialize-extra-options extra-options)
+ (string-join extra-options "\n" 'suffix))
+
(define repository-directory? string?)
(define (serialize-repository-directory _ val)
@@ -641,6 +645,7 @@ for cgit to allow access to that repository.")
(define (rest? field)
(not (memq (configuration-field-name field)
'(project-list
+ extra-options
repository-directory
repositories))))
#~(string-append
@@ -649,6 +654,8 @@ for cgit to allow access to that repository.")
#$(serialize-project-list
'project-list
(cgit-configuration-project-list config))
+ #$(serialize-extra-options
+ (cgit-configuration-extra-options config))
#$(serialize-repository-directory
'repository-directory
(cgit-configuration-repository-directory config))