summaryrefslogtreecommitdiff
path: root/bluechateau/systems/chinstrap.scm
diff options
context:
space:
mode:
authorAzalea Redmyer <azalea@grrlz.net>2026-02-18 07:36:29 -0800
committerAzalea Redmyer <azalea@grrlz.net>2026-02-18 07:36:29 -0800
commitb36e2f9058eb1863abb22d44a7f4f650fa81bdd4 (patch)
tree33662f949887e9636efd3d811e111a15a688ed90 /bluechateau/systems/chinstrap.scm
parent6c9b4e4cf2e348fcfe931c4fa90da1b7bedba28e (diff)
Update nginx service & add extra plugin load path, more enabled modules for prosody service
Diffstat (limited to 'bluechateau/systems/chinstrap.scm')
-rw-r--r--bluechateau/systems/chinstrap.scm21
1 files changed, 18 insertions, 3 deletions
diff --git a/bluechateau/systems/chinstrap.scm b/bluechateau/systems/chinstrap.scm
index c14a1f0..a593b5b 100644
--- a/bluechateau/systems/chinstrap.scm
+++ b/bluechateau/systems/chinstrap.scm
@@ -61,6 +61,12 @@
(shell (file-append (specification->package "shadow")
"/sbin/nologin")))))
+(define (nginx-signal name signal)
+ (program-file
+ name
+ #~(let ((pid (call-with-input-file "/var/run/nginx/pid" read)))
+ (kill pid #$signal))))
+
;; Override the default nginx service account configuration so
;; the nginx user is a member of the 'git' group. (required for
;; cgit)
@@ -97,9 +103,12 @@
(define prosody-service
(service prosody-service-type
(prosody-configuration
+ (plugin-paths '("/srv/lib/prosody-modules-enabled"))
(modules-enabled
(cons*
- "groups" "mam" "user_account_management" "http_file_share" %default-modules-enabled))
+ "groups" "mam" "smacks" "user_account_management" "http_file_share"
+ "cloud_notify" "cloud_notify_encrypted" "cloud_notify_extensions"
+ %default-modules-enabled))
(virtualhosts
(list
(virtualhost-configuration
@@ -437,7 +446,8 @@ port = 8000"))
(packages
(append
(map specification->package
- '("emacs" "git" "prosody"))
+ '("emacs" "git"
+ "mercurial" "prosody"))
%base-packages))
(services
@@ -495,11 +505,16 @@ port = 8000"))
(service-type-extensions certbot-service-type))))
(certbot-configuration
(email "mononoke@anche.no")
+ (webroot "/var/www/certbot")
(certificates
(list
(certificate-configuration
(name "bluechateau")
- (domains ssl-domains))))))
+ (domains ssl-domains)
+ ;; Send SIGHUP signal to nginx to trigger a
+ ;; configuration reload, thus loading the
+ ;; updated certificates.
+ (deploy-hook (nginx-signal "nginx-deploy-hook" SIGHUP)))))))
;; NGINX (web hosting)
;; Be sure to use the custom service defined at the