1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-06 21:20:33 +02:00

services: gitile: Add git-owner-validation? configuration.

* gnu/services/version-control.scm (gitile-configuration):
  Add git-owner-validation? field.
* doc/guix.text (Version Control Services): Document it.

Change-Id: I7d35e66e512fcaae25a5eac138b0fb2437a7c70c
This commit is contained in:
Nguyễn Gia Phong
2025-10-10 00:22:15 +09:00
committed by Mathieu Othacehe
parent 04e9d68c57
commit b7a3ad2922
2 changed files with 14 additions and 4 deletions

View File

@@ -42781,6 +42781,10 @@ The location of the repositories. Note that only public repositories will
be shown by Gitile. To make a repository public, add an empty
@file{git-daemon-export-ok} file at the root of that repository.
@item @code{git-owner-validation?} (default: @code{#t})
Whether to check for the service user's ownership of repositories.
By default, Git will refuse to process a repository owned by another user.
@item @code{base-git-url}
The base git url that will be used to show clone commands.

View File

@@ -86,7 +86,8 @@
gitile-configuration-port
gitile-configuration-database
gitile-configuration-repositories
gitile-configuration-git-base-url
gitile-configuration-git-owner-validation?
gitile-configuration-base-git-url
gitile-configuration-index-title
gitile-configuration-intro
gitile-configuration-footer
@@ -503,6 +504,8 @@ provide a web interface to view selected repositories.")))
(default "/var/lib/gitile/gitile-db.sql"))
(repositories gitile-configuration-repositories
(default "/var/lib/gitolite/repositories"))
(git-owner-validation? gitile-configuration-git-owner-validation?
(default #t))
(base-git-url gitile-configuration-base-git-url)
(index-title gitile-configuration-index-title
(default "Index"))
@@ -512,7 +515,8 @@ provide a web interface to view selected repositories.")))
(default '()))
(nginx gitile-configuration-nginx))
(define (gitile-config-file host port database repositories base-git-url
(define (gitile-config-file host port database repositories
git-owner-validation? base-git-url
index-title intro footer)
(define build
#~(write `(config
@@ -520,6 +524,7 @@ provide a web interface to view selected repositories.")))
(host #$host)
(database #$database)
(repositories #$repositories)
(git-owner-validation? #$git-owner-validation?)
(base-git-url #$base-git-url)
(index-title #$index-title)
(intro #$intro)
@@ -531,7 +536,7 @@ provide a web interface to view selected repositories.")))
(define gitile-nginx-server-block
(match-lambda
(($ <gitile-configuration> package host port database repositories
base-git-url index-title intro footer nginx)
git-owner-validation? base-git-url index-title intro footer nginx)
(list (nginx-server-configuration
(inherit nginx)
(locations
@@ -557,7 +562,7 @@ provide a web interface to view selected repositories.")))
(define gitile-shepherd-service
(match-lambda
(($ <gitile-configuration> package host port database repositories
base-git-url index-title intro footer nginx)
git-owner-validation? base-git-url index-title intro footer nginx)
(list (shepherd-service
(provision '(gitile))
(requirement '(loopback))
@@ -567,6 +572,7 @@ provide a web interface to view selected repositories.")))
`(,#$gitile "-c" #$(gitile-config-file
host port database
repositories
git-owner-validation?
base-git-url index-title
intro footer))
#:user "gitile"