aboutsummaryrefslogtreecommitdiff
path: root/src/org/euandre/packages.scm
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2024-08-20 07:53:42 -0300
committerEuAndreh <eu@euandre.org>2024-08-20 07:53:42 -0300
commit9806213c26dd2f71851a7edbe3f29e1f9a404606 (patch)
treed874b914421c0263bf419ab044d1e3412a782375 /src/org/euandre/packages.scm
parentpackages.scm: Update syskeep package (diff)
downloadpackages-9806213c26dd2f71851a7edbe3f29e1f9a404606.tar.gz
packages-9806213c26dd2f71851a7edbe3f29e1f9a404606.tar.xz
packages.scm: Conditionally run git-shepherd-services based on new configuration attribute
Diffstat (limited to 'src/org/euandre/packages.scm')
-rw-r--r--src/org/euandre/packages.scm37
1 files changed, 20 insertions, 17 deletions
diff --git a/src/org/euandre/packages.scm b/src/org/euandre/packages.scm
index c6fc9e0..3721ecc 100644
--- a/src/org/euandre/packages.scm
+++ b/src/org/euandre/packages.scm
@@ -538,7 +538,8 @@
(base-path git-configuration-base-path (default "/srv/git"))
(user-path git-configuration-user-path (default #f))
(run-in-container? git-configuration-run-in-container? (default #f))
- (container-name git-configuration-container-name (default "git-container")))
+ (container-name git-configuration-container-name (default "git-container"))
+ (run-server? git-configuration-run-server? (default #f)))
(define-public (git-command config)
(match-record config <git-configuration>
@@ -563,22 +564,24 @@
(define-public (git-shepherd-services config)
(match-record config <git-configuration>
- (user group export-all? base-path user-path)
- (list
- (shepherd-service
- (provision '(git))
- (requirement '(networking))
- (start
- #~(make-forkexec-constructor
- (list #$(git-command config)
- "daemon" "--syslog" "--reuseaddr"
- #$@(mklist (and export-all? "--export-all"))
- #$@(mklist (and base-path (str "--base-path=" base-path)))
- #$@(mklist (and user-path (str "--user-path=" user-path))))
- #:user #$user
- #:group #$group))
- (stop #~(make-kill-destructor SIGKILL))
- (documentation "Daemon process of the git:// protocol.")))))
+ (user group export-all? base-path user-path run-server?)
+ (if (not run-server?)
+ (list)
+ (list
+ (shepherd-service
+ (provision '(git))
+ (requirement '(networking))
+ (start
+ #~(make-forkexec-constructor
+ (list #$(git-command config)
+ "daemon" "--syslog" "--reuseaddr"
+ #$@(mklist (and export-all? "--export-all"))
+ #$@(mklist (and base-path (str "--base-path=" base-path)))
+ #$@(mklist (and user-path (str "--user-path=" user-path))))
+ #:user #$user
+ #:group #$group))
+ (stop #~(make-kill-destructor SIGKILL))
+ (documentation "Daemon process of the git:// protocol."))))))
(define-public (git-accounts config)
(match-record config <git-configuration>