about summary refs log tree commit diff
path: root/nixos/modules/services/web-servers/nginx/default.nix
diff options
context:
space:
mode:
authorIzorkin <izorkin@elven.pw>2023-01-05 18:51:59 +0300
committerIzorkin <izorkin@elven.pw>2023-03-07 19:37:18 +0300
commit5eb5d881a49ce1eeecf24dc501efead1f70fc620 (patch)
tree421898ee9d79e2072d6beca43fd1d666f3adadbd /nixos/modules/services/web-servers/nginx/default.nix
parentbdfa4d2e95f564259b365e3dcdd25b61af1dbcbb (diff)
downloadnixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.tar
nixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.tar.gz
nixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.tar.bz2
nixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.tar.lz
nixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.tar.xz
nixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.tar.zst
nixlib-5eb5d881a49ce1eeecf24dc501efead1f70fc620.zip
nixos/nginx: add defaultMimeTypes option
Diffstat (limited to 'nixos/modules/services/web-servers/nginx/default.nix')
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix18
1 files changed, 14 insertions, 4 deletions
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index bc5b4be51098..905dd5bef1f7 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -112,10 +112,8 @@ let
   ''));
 
   commonHttpConfig = ''
-      # The mime type definitions included with nginx are very incomplete, so
-      # we use a list of mime types from the mailcap package, which is also
-      # used by most other Linux distributions by default.
-      include ${pkgs.mailcap}/etc/nginx/mime.types;
+      # Load mime types.
+      include ${cfg.defaultMimeTypes};
       # When recommendedOptimisation is disabled nginx fails to start because the mailmap mime.types database
       # contains 1026 entries and the default is only 1024. Setting to a higher number to remove the need to
       # overwrite it because nginx does not allow duplicated settings.
@@ -529,6 +527,18 @@ in
         '';
       };
 
+      defaultMimeTypes = mkOption {
+        type = types.path;
+        default = "${pkgs.mailcap}/etc/nginx/mime.types";
+        defaultText = literalExpression "$''{pkgs.mailcap}/etc/nginx/mime.types";
+        example = literalExpression "$''{pkgs.nginx}/conf/mime.types";
+        description = lib.mdDoc ''
+          Default MIME types for NGINX, as MIME types definitions from NGINX are very incomplete,
+          we use by default the ones bundled in the mailcap package, used by most of the other
+          Linux distributions.
+        '';
+      };
+
       package = mkOption {
         default = pkgs.nginxStable;
         defaultText = literalExpression "pkgs.nginxStable";