Set up smos server
This commit is contained in:
parent
7649050ca6
commit
af53784181
|
@ -63,7 +63,7 @@
|
|||
# }}}
|
||||
# {{{ Self management
|
||||
# Smos
|
||||
smos.url = "github:NorfairKing/smos";
|
||||
smos.url = "github:Mateiadrielrafael/smos";
|
||||
# REASON: smos fails to build this way
|
||||
# smos.inputs.nixpkgs.follows = "nixpkgs";
|
||||
# smos.inputs.home-manager.follows = "home-manager";
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
./services/whoogle.nix
|
||||
./services/pounce.nix
|
||||
./services/intray.nix
|
||||
./services/smos.nix
|
||||
./services/vaultwarden.nix
|
||||
./services/zfs.nix
|
||||
./filesystems
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
tilde_irc_pass: ENC[AES256_GCM,data:+pw/g0pffo1zF++1H/+iFXQDCDw=,iv:zTBvaUCwt78dgv1jF9EmrTuHMnM2S+GUGpQZWY828tA=,tag:umqaQOWqy8aMOxWR0CNGHQ==,type:str]
|
||||
zed_smtp_pass: ENC[AES256_GCM,data:Y6pPbs5amgZIvoIJZUM=,iv:vbvA9u8Snv4tCzguabrWg1osy/LOr8PmO/02f9ZajOY=,tag:8tlrMCZBqtjGfiuqSOOplw==,type:str]
|
||||
vaultwarden_env: ENC[AES256_GCM,data:39gY2J+AFTwIRar7tbF6D9WadTzw1xiqPE9T204Z,iv:k9m6wQIPh1qScCjgLnULjVxVmDxxmotd/xzVuH6ju/w=,tag:+xIkwguOwYryO4rgsyMOsQ==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
|
@ -25,8 +24,8 @@ sops:
|
|||
RHZ6alYrUU5BZ2xlMkdGR1dWRG5aeGMKJdsdtVZ6Mk9Vo3a+tS+rzAgaF2wpH+8U
|
||||
lWhA+c0Kbe8EJT8hm7Vr8PqBmElz4V9AnXSCTp7D+Cu4pfWsHopLUQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-02-12T13:56:45Z"
|
||||
mac: ENC[AES256_GCM,data:Rz6m7xNjfFAz6zkyMb1hqPHNxQ0I5bo9jN/AO24TaepI2dJMTmRUDT9ezsiQHfjitTrfX1EVRccPRGFDUVCaxSKu11CY3oMw6IZgeJclJRs5skp7382S5cu+LGyg5EsVSJM4tFl3XboxvHX2/8sqBqmkuTVxjVHW1hWNU0ok/T4=,iv:j7Hc4KpeXcMc5QqkDpmwJLJxkjMHiTrX+zL4EtzLFPg=,tag:hB6ek9hnpNqgWamK0MwhPQ==,type:str]
|
||||
lastmodified: "2024-02-12T16:10:16Z"
|
||||
mac: ENC[AES256_GCM,data:kYPlAH/LZiA6UJPgRgj6MBWHDWx21unyWj/qtJ1dmaoW8UXi8AnZt+/PT53rvRgzPYGnDgaxTugFH+kYflMQ7wOJpmie/VcsA0kJ+KVAg1Z7awjCBeqSQn+yuS+/ngqLRxHd3gBjmV32NOg6hlmBCJPhWUzqn9WiItq5ut3Da2w=,iv:W0Bg6PBiFtdwN6xuu8kE9x860T2LuTRv+ARF/EOUf4g=,tag:r30t606ttqT9qEjresPKbA==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
|
|
|
@ -16,13 +16,11 @@ in
|
|||
enable = true;
|
||||
api-server = {
|
||||
enable = true;
|
||||
openFirewall = false;
|
||||
port = apiPort;
|
||||
admins = [ username ];
|
||||
};
|
||||
web-server = {
|
||||
enable = true;
|
||||
openFirewall = false;
|
||||
port = webPort;
|
||||
api-url = "https://${apiHost}";
|
||||
};
|
||||
|
|
62
hosts/nixos/lapetus/services/smos.nix
Normal file
62
hosts/nixos/lapetus/services/smos.nix
Normal file
|
@ -0,0 +1,62 @@
|
|||
{ inputs, config, ... }:
|
||||
let
|
||||
username = "prescientmoon";
|
||||
docsHost = "docs.smos.moonythm.dev";
|
||||
apiHost = "api.smos.moonythm.dev";
|
||||
webHost = "smos.moonythm.dev";
|
||||
docsPort = 8404;
|
||||
apiPort = 8405;
|
||||
webPort = 8406;
|
||||
|
||||
https = host: "https://${host}";
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
../../common/optional/services/nginx.nix
|
||||
inputs.smos.nixosModules.x86_64-linux.default
|
||||
];
|
||||
|
||||
# {{{ Configure smos
|
||||
services.smos.production = {
|
||||
enable = true;
|
||||
|
||||
# {{{ Docs server
|
||||
docs-site = {
|
||||
enable = true;
|
||||
port = docsPort;
|
||||
api-url = https apiHost;
|
||||
web-url = https webHost;
|
||||
};
|
||||
# }}}
|
||||
# {{{ Api server
|
||||
api-server = {
|
||||
enable = true;
|
||||
port = apiPort;
|
||||
admin = username;
|
||||
|
||||
max-backups-per-user = 5;
|
||||
backup-interval = 3600;
|
||||
local-backup.enable = true;
|
||||
};
|
||||
# }}}
|
||||
# {{{ Web server
|
||||
web-server = {
|
||||
enable = true;
|
||||
port = webPort;
|
||||
docs-url = https docsHost;
|
||||
api-url = https apiHost;
|
||||
web-url = https webHost;
|
||||
};
|
||||
# }}}
|
||||
};
|
||||
# }}}
|
||||
# {{{ Networking & storage
|
||||
services.nginx.virtualHosts.${docsHost} = config.satellite.proxy docsPort { };
|
||||
services.nginx.virtualHosts.${apiHost} = config.satellite.proxy apiPort { };
|
||||
services.nginx.virtualHosts.${webHost} = config.satellite.proxy webPort { };
|
||||
|
||||
environment.persistence."/persist/state".directories = [
|
||||
"/www/smos/production"
|
||||
];
|
||||
# }}}
|
||||
}
|
Loading…
Reference in a new issue