M doc/guix.texi => doc/guix.texi +4 -0
@@ 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.
M gnu/services/version-control.scm => gnu/services/version-control.scm +10 -4
@@ 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"