apteryx pushed a commit to branch master
in repository guix.

commit 0110eeee0a1698f1e0fc9fff42f88aa749d1978f
Author: Tomas Volf <[email protected]>
AuthorDate: Tue Apr 1 00:10:10 2025 +0200

    services: gitolite-rc-file: Add extra-content field.
    
    * gnu/services/version-control.scm (<gitolite-rc-file>): Add extra-content
    field.
    (gitolite-rc-file-compiler): Handle it during configuration file generation.
    * doc/guix.texi (Version Control Services): Document it.
    
    Change-Id: I5082e1d7a27cc746641ba9ec8ae07c703da5f279
    Signed-off-by: Maxim Cournoyer <[email protected]>
---
 doc/guix.texi                    | 3 +++
 gnu/services/version-control.scm | 8 ++++++--
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 4a5a570e1d..0d1bbc6cd6 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -41075,6 +41075,9 @@ Set the role names allowed to be used by users running 
the perms command.
 @item @code{enable} (default: @code{'("help" "desc" "info" "perms" "writable" 
"ssh-authkeys" "git-config" "daemon" "gitweb")})
 This setting controls the commands and features to enable within Gitolite.
 
+@item @code{extra-content} (default: @code{""})
+Extra content to add verbatim into the @code{%RC} hash.
+
 @end table
 @end deftp
 
diff --git a/gnu/services/version-control.scm b/gnu/services/version-control.scm
index 2b99e8db86..9bd17334fe 100644
--- a/gnu/services/version-control.scm
+++ b/gnu/services/version-control.scm
@@ -64,6 +64,7 @@
             gitolite-rc-file-host-name
             gitolite-rc-file-roles
             gitolite-rc-file-enable
+            gitolite-rc-file-extra-content
 
             gitolite-service-type
 
@@ -270,13 +271,15 @@ access to exported repositories under @file{/srv/git}."
                               "ssh-authkeys"
                               "git-config"
                               "daemon"
-                              "gitweb"))))
+                              "gitweb")))
+  (extra-content   gitolite-rc-extra-content
+                   (default "")))
 
 (define-gexp-compiler (gitolite-rc-file-compiler
                        (file <gitolite-rc-file>) system target)
   (match-record file <gitolite-rc-file>
                 ( umask local-code unsafe-pattern git-config-keys log-extra
-                  host-name roles enable)
+                  host-name roles enable extra-content)
     (apply text-file* "gitolite.rc"
            `("%RC = (\n"
              "    UMASK => " ,(format #f "~4,'0o" umask) ",\n"
@@ -302,6 +305,7 @@ access to exported repositories under @file{/srv/git}."
                       (simple-format #f "        '~A',\n" value))
                     enable)
              "    ],\n"
+             ,extra-content "\n"
              ");\n"
              "\n"
              ,(if unsafe-pattern

Reply via email to