54 lines
1.4 KiB
Nix
54 lines
1.4 KiB
Nix
{ inputs, config, ... }:
|
|
let username = "prescientmoon";
|
|
in
|
|
{
|
|
imports = [ inputs.smos.nixosModules.x86_64-linux.default ];
|
|
|
|
# {{{ Configure smos
|
|
services.smos.production = {
|
|
enable = true;
|
|
|
|
# {{{ Docs server
|
|
docs-site = {
|
|
enable = true;
|
|
openFirewall = false;
|
|
port = config.satellite.nginx.at."docs.smos".port;
|
|
api-url = config.satellite.nginx.at."api.smos".url;
|
|
web-url = config.satellite.nginx.at."smos".url;
|
|
};
|
|
# }}}
|
|
# {{{ Api server
|
|
api-server = {
|
|
enable = true;
|
|
openFirewall = false;
|
|
port = config.satellite.nginx.at."api.smos".port;
|
|
admin = username;
|
|
|
|
max-backups-per-user = 5;
|
|
backup-interval = 3600;
|
|
local-backup.enable = true;
|
|
};
|
|
# }}}
|
|
# {{{ Web server
|
|
web-server = {
|
|
enable = true;
|
|
openFirewall = false;
|
|
port = config.satellite.nginx.at."smos".port;
|
|
docs-url = config.satellite.nginx.at."docs.smos".url;
|
|
api-url = config.satellite.nginx.at."api.smos".url;
|
|
web-url = config.satellite.nginx.at."smos".url;
|
|
};
|
|
# }}}
|
|
};
|
|
# }}}
|
|
# {{{ Networking & storage
|
|
satellite.nginx.at."docs.smos".port = config.satellite.ports.smos-docs;
|
|
satellite.nginx.at."api.smos".port = config.satellite.ports.smos-api;
|
|
satellite.nginx.at."smos".port = config.satellite.ports.smos-client;
|
|
|
|
environment.persistence."/persist/state".directories = [
|
|
"/www/smos/production"
|
|
];
|
|
# }}}
|
|
}
|