38 lines
1.1 KiB
Nix
38 lines
1.1 KiB
Nix
|
{ config, lib, ... }:
|
|||
|
|
|||
|
{
|
|||
|
services.grocy = {
|
|||
|
enable = true;
|
|||
|
hostName = "grocy.sbruder.de";
|
|||
|
settings = {
|
|||
|
currency = "EUR";
|
|||
|
culture = "de";
|
|||
|
calendar = {
|
|||
|
firstDayOfWeek = 1; # it certainly isn’t Sunday
|
|||
|
};
|
|||
|
};
|
|||
|
};
|
|||
|
|
|||
|
services.nginx.virtualHosts."${config.services.grocy.hostName}" =
|
|||
|
let
|
|||
|
# workaround for nginx dropping parent headers
|
|||
|
# see https://github.com/yandex/gixy/blob/master/docs/en/plugins/addheaderredefinition.md
|
|||
|
parentHeaders = lib.concatStringsSep "\n" (lib.filter
|
|||
|
(lib.hasPrefix "add_header ")
|
|||
|
(lib.splitString "\n" config.services.nginx.commonHttpConfig));
|
|||
|
in
|
|||
|
{
|
|||
|
locations."~ \\.(js|css|ttf|woff2?|png|jpe?g|svg)$".extraConfig = ''
|
|||
|
${parentHeaders}
|
|||
|
add_header Cache-Control "public, max-age=15778463";
|
|||
|
add_header X-Content-Type-Options nosniff;
|
|||
|
add_header X-XSS-Protection "1; mode=block";
|
|||
|
add_header X-Robots-Tag none;
|
|||
|
add_header X-Download-Options noopen;
|
|||
|
add_header X-Permitted-Cross-Domain-Policies none;
|
|||
|
add_header Referrer-Policy no-referrer;
|
|||
|
access_log off;
|
|||
|
'';
|
|||
|
};
|
|||
|
}
|