[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
83/184: services: Make it possible to include dynamic modules in nginx.
From: |
guix-commits |
Subject: |
83/184: services: Make it possible to include dynamic modules in nginx. |
Date: |
Wed, 27 Nov 2019 14:37:05 -0500 (EST) |
kkebreau pushed a commit to branch wip-gnome-updates
in repository guix.
commit 548bea43f9454fa1797ec6f0691f8481c870286b
Author: Florian Pelz <address@hidden>
Date: Wed Nov 6 19:15:57 2019 +0100
services: Make it possible to include dynamic modules in nginx.
* gnu/services/web.scm (<nginx-configuration>): Add modules field.
(nginx-configuration-modules): New field accessor.
(emit-load-module): New procedure.
(default-nginx-config): Add support for the modules field.
* doc/guix.texi (NGINX): Document it.
---
doc/guix.texi | 11 +++++++++++
gnu/services/web.scm | 8 ++++++++
2 files changed, 19 insertions(+)
diff --git a/doc/guix.texi b/doc/guix.texi
index 3b8e593..4df928e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -19765,6 +19765,17 @@ use the size of the processors cache line.
@item @code{server-names-hash-bucket-max-size} (default: @code{#f})
Maximum bucket size for the server names hash tables.
+@item @code{modules} (default: @code{'()})
+List of nginx dynamic modules to load. This should be a list of file
+names of loadable modules, as in this example:
+
+@lisp
+(modules
+ (list
+ (file-append nginx-accept-language-module "\
+/etc/nginx/modules/ngx_http_accept_language_module.so")))
+@end lisp
+
@item @code{extra-content} (default: @code{""})
Extra content for the @code{http} block. Should be string or a string
valued G-expression.
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index 9320da5..f13e864 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -9,6 +9,7 @@
;;; Copyright © 2018 Pierre-Antoine Rouby <address@hidden>
;;; Copyright © 2017, 2018, 2019 Christopher Baines <address@hidden>
;;; Copyright © 2018 Marius Bakke <address@hidden>
+;;; Copyright © 2019 Florian Pelz <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -95,6 +96,7 @@
nginx-configuration-upstream-blocks
nginx-configuration-server-names-hash-bucket-size
nginx-configuration-server-names-hash-bucket-max-size
+ nginx-configuration-modules
nginx-configuration-extra-content
nginx-configuration-file
@@ -522,6 +524,7 @@
(default #f))
(server-names-hash-bucket-max-size
nginx-configuration-server-names-hash-bucket-max-size
(default #f))
+ (modules nginx-configuration-modules (default '()))
(extra-content nginx-configuration-extra-content
(default ""))
(file nginx-configuration-file ;#f | string | file-like
@@ -542,6 +545,9 @@ of index files."
((? string? str) (list str " ")))
names))
+(define (emit-load-module module)
+ (list "load_module " module ";\n"))
+
(define emit-nginx-location-config
(match-lambda
(($ <nginx-location-configuration> uri body)
@@ -615,12 +621,14 @@ of index files."
server-blocks upstream-blocks
server-names-hash-bucket-size
server-names-hash-bucket-max-size
+ modules
extra-content)
(apply mixed-text-file "nginx.conf"
(flatten
"user nginx nginx;\n"
"pid " run-directory "/pid;\n"
"error_log " log-directory "/error.log info;\n"
+ (map emit-load-module modules)
"http {\n"
" client_body_temp_path " run-directory "/client_body_temp;\n"
" proxy_temp_path " run-directory "/proxy_temp;\n"
- 96/184: gnu: r-sp: Update to 1.3-2., (continued)
- 96/184: gnu: r-sp: Update to 1.3-2., guix-commits, 2019/11/27
- 103/184: gnu: fcitx: Update to 4.2.9.7., guix-commits, 2019/11/27
- 102/184: gnu: fcitx: Don't use NAME in source URI., guix-commits, 2019/11/27
- 112/184: gnu: Add gnome-shell-extension-dash-to-dock., guix-commits, 2019/11/27
- 113/184: gnu: Add gnome-shell-extension-noannoyance., guix-commits, 2019/11/27
- 119/184: gnu: python-latexcodec: Update to 1.0.7., guix-commits, 2019/11/27
- 62/184: gnu: network-manager: Update to 1.18.4., guix-commits, 2019/11/27
- 68/184: gnu: linux-libre: Update to 5.3.9., guix-commits, 2019/11/27
- 70/184: gnu: devhelp: Don't create icon cache., guix-commits, 2019/11/27
- 71/184: gnu: eog: Don't create icon cache., guix-commits, 2019/11/27
- 83/184: services: Make it possible to include dynamic modules in nginx.,
guix-commits <=
- 87/184: gnu: libdvdnav: Update to 6.0.1., guix-commits, 2019/11/27
- 92/184: gnu: Fix deprecation of monolithic Qt 5.x package., guix-commits, 2019/11/27
- 104/184: gnu: fcitx-configtool: Don't use NAME in source URI., guix-commits, 2019/11/27
- 108/184: guix: Add file-locking with no wait., guix-commits, 2019/11/27
- 126/184: gnu: neovim: Update to 0.4.3., guix-commits, 2019/11/27
- 158/184: gnu: faad2: Use HTTPS home page., guix-commits, 2019/11/27
- 160/184: gnu: cgal: Update to 4.14.2., guix-commits, 2019/11/27
- 180/184: gnu: zita-convolver: Update to 4.0.3., guix-commits, 2019/11/27
- 115/184: gnu: python-psutil: Update to 5.6.5., guix-commits, 2019/11/27
- 122/184: ui: Emit hyperlinks for 'license' in package search results., guix-commits, 2019/11/27