summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorSören Tempel <soeren+git@soeren-tempel.net>2025-12-30 16:08:16 +0100
committerSören Tempel <soeren+git@soeren-tempel.net>2026-03-29 14:12:56 +0200
commit3f3cec89932673f1d0b039bef469f14ce2f0cbcd (patch)
tree12a9fac4bd42842cfcf9456a01f04b27432b22b9 /doc
parent829b7e108de9b47bc7b70bdd021fd9ca8d799e51 (diff)
services: web: Add sogogi service.
* gnu/services/web.scm (sogogi-service-type): New services. (sogogi-serialize-section, sogogi-serialize-field) (sogogi-serialize-string, sogogi-serialize-list-of-strings) (sogogi-serialize-sogogi-user, sogogi-serialize-sogogi-location) (sogogi-serialize-list-of-sogogi-user): New procedures. (sogogi-user, sogogi-location) (sogogi-configuration): New record types. (sogogi-account-service): New variable. (sogogi-config-file, sogogi-shepherd-service): New procedures. * gnu/tests/web.scm (%test-sogogi): Add tests for the service. * doc/guix.texi (Web Services): Document it. Change-Id: I5cc6dd84d6c7c8d5d13b685853b19c5d433ed7e5
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi69
1 files changed, 69 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 1c7ca45823c..266012a7e82 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -35893,6 +35893,75 @@ The port on which to connect to the database.
@end table
@end deftp
+@subsubheading sogogi
+
+@cindex sogogi, WebDAV Server
+@uref{https://codeberg.org/emersion/sogogi, sogogi} is a
+server for the
+@uref{https://www.rfc-editor.org/rfc/rfc4918, WebDAV} protocol.
+
+@defvar sogogi-service-type
+This is the service type for sogogi. Its value must be a
+@code{sogogi-configuration} object as in this example:
+
+@lisp
+(service sogogi-service-type
+ (sogogi-configuration
+ (listen ":8080")
+ (location
+ (list
+ (sogogi-location
+ (path "/")
+ (dir "/srv/http/")
+ (grant '("all ro")))))))
+@end lisp
+@end defvar
+
+@deftp {Data Type} sogogi-configuration
+Available @code{sogogi-configuration} fields are:
+
+@table @asis
+@item @code{listen} (default: @code{"localhost:8080"}) (type: string)
+Listening address.
+
+@item @code{location} (default: @code{()}) (type: list-of-sogogi-location)
+Local directories to expose via a HTTP path
+
+@item @code{user} (default: @code{()}) (type: list-of-sogogi-user)
+Users with access to the location.
+
+@end table
+@end deftp
+
+@deftp {Data Type} sogogi-location
+Available @code{sogogi-location} fields are:
+
+@table @asis
+@item @code{path} (type: string)
+HTTP path at which the directory will be exposed.
+
+@item @code{dir} (type: string)
+Path to local directory to serve.
+
+@item @code{grant} (type: maybe-list-of-strings)
+Grant remote users access to the directory.
+
+@end table
+@end deftp
+
+@deftp {Data Type} sogogi-user
+Available @code{sogogi-user} fields are:
+
+@table @asis
+@item @code{name} (type: maybe-string)
+Name of the user.
+
+@item @code{password} (type: maybe-string)
+Password of the user.
+
+@end table
+@end deftp
+
@subsubheading Mumi
@cindex Mumi, Debbugs Web interface