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.
This commit is contained in:
parent
57c5aa7c7d
commit
c3343d62f6
1 changed files with 7 additions and 0 deletions
|
@ -1,6 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
|
;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -169,6 +170,9 @@
|
||||||
'project-list
|
'project-list
|
||||||
(plain-file "project-list" (string-join val "\n")))))
|
(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 repository-directory? string?)
|
||||||
|
|
||||||
(define (serialize-repository-directory _ val)
|
(define (serialize-repository-directory _ val)
|
||||||
|
@ -641,6 +645,7 @@ for cgit to allow access to that repository.")
|
||||||
(define (rest? field)
|
(define (rest? field)
|
||||||
(not (memq (configuration-field-name field)
|
(not (memq (configuration-field-name field)
|
||||||
'(project-list
|
'(project-list
|
||||||
|
extra-options
|
||||||
repository-directory
|
repository-directory
|
||||||
repositories))))
|
repositories))))
|
||||||
#~(string-append
|
#~(string-append
|
||||||
|
@ -649,6 +654,8 @@ for cgit to allow access to that repository.")
|
||||||
#$(serialize-project-list
|
#$(serialize-project-list
|
||||||
'project-list
|
'project-list
|
||||||
(cgit-configuration-project-list config))
|
(cgit-configuration-project-list config))
|
||||||
|
#$(serialize-extra-options
|
||||||
|
(cgit-configuration-extra-options config))
|
||||||
#$(serialize-repository-directory
|
#$(serialize-repository-directory
|
||||||
'repository-directory
|
'repository-directory
|
||||||
(cgit-configuration-repository-directory config))
|
(cgit-configuration-repository-directory config))
|
||||||
|
|
Reference in a new issue