feat(utils): add mkNginxFile

This commit is contained in:
uku 2025-01-07 18:50:30 +01:00
parent 6a87dd7211
commit f6ed5e951b
Signed by: uku
SSH key fingerprint: SHA256:4P0aN6M8ajKukNi6aPOaX0LacanGYtlfjmN+m/sHY/o
2 changed files with 21 additions and 3 deletions

View file

@ -1,4 +1,4 @@
{ lib, ... }: { lib, pkgs, ... }:
{ {
setupSecrets = setupSecrets =
_config: _config:
@ -96,4 +96,19 @@
} }
]; ];
}; };
# shamelessly stolen from soopyc's gensokyo
mkNginxFile =
{
filename ? "index.html",
content,
status ? 200,
}:
{
# gets the store path of the directory in which the file is contained
# we have to use writeTextDir because we don't want to expose the whole nix store to nginx
# and because you can't just return an absolute path to a file
alias = builtins.toString (pkgs.writeTextDir filename content) + "/";
tryFiles = "${filename} =${builtins.toString status}";
};
} }

View file

@ -4,7 +4,7 @@
... ...
}: }:
let let
_utils = import ../global/utils.nix { inherit lib; }; mkUtils = import ../global/utils.nix;
toSystem = toSystem =
name: name:
@ -24,7 +24,10 @@ let
]; ];
specialArgs = inputs // { specialArgs = inputs // {
inherit _utils; _utils = mkUtils {
inherit lib;
pkgs = inputs.nixpkgs.legacyPackages.${system};
};
}; };
}; };
in in