mirror of
https://github.com/CHN-beta/nixos.git
synced 2024-10-24 13:18:45 +08:00
27 lines
867 B
Nix
27 lines
867 B
Nix
inputs:
|
|
{
|
|
options.nixos.services.nginx.applications.synapse-admin.instances =
|
|
let inherit (inputs.lib) mkOption types; in mkOption
|
|
{
|
|
type = types.attrsOf (types.submodule (submoduleInputs: { options =
|
|
{ hostname = mkOption { type = types.nonEmptyStr; default = submoduleInputs.config._module.args.name; }; };}));
|
|
default = {};
|
|
};
|
|
config =
|
|
let
|
|
inherit (inputs.config.nixos.services.nginx.applications.synapse-admin) instances;
|
|
inherit (inputs.localLib) attrsToList;
|
|
inherit (builtins) map listToAttrs;
|
|
in
|
|
{
|
|
nixos.services.nginx.https = listToAttrs (map
|
|
(site: with site.value;
|
|
{
|
|
name = hostname;
|
|
value.location."/".static =
|
|
{ root = "${inputs.pkgs.synapse-admin}"; index = [ "index.html" ]; };
|
|
})
|
|
(attrsToList instances));
|
|
};
|
|
}
|