From c3343d62f682b33b1eefce74e9b08585faa8680c Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 25 Apr 2018 08:17:52 +0100 Subject: [PATCH] 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. --- gnu/services/cgit.scm | 7 +++++++ 1 file changed, 7 insertions(+) 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 ;;; Copyright © 2018 Clément Lassieur +;;; Copyright © 2018 Christopher Baines ;;; ;;; This file is part of GNU Guix. ;;; @@ -169,6 +170,9 @@ (define (serialize-project-list _ val) '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 @@ (define (serialize-cgit-configuration config) (define (rest? field) (not (memq (configuration-field-name field) '(project-list + extra-options repository-directory repositories)))) #~(string-append @@ -649,6 +654,8 @@ (define (rest? field) #$(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))