Compare commits
8 commits
876c9ee88d
...
30e06f058f
| Author | SHA1 | Date | |
|---|---|---|---|
| 30e06f058f | |||
| 5bbb29bbab | |||
| 4a8d03dd57 | |||
| 97e86550fe | |||
| 84a91f87f6 | |||
| ba1a84fb7b | |||
| ffa8959679 | |||
| a94b2c9387 |
4 changed files with 13 additions and 12 deletions
|
|
@ -10,6 +10,7 @@
|
||||||
server = {
|
server = {
|
||||||
baseDomain = "jsw.tf";
|
baseDomain = "jsw.tf";
|
||||||
derek-bot.enable = true;
|
derek-bot.enable = true;
|
||||||
|
derek-site.enable = true;
|
||||||
forgejo = {
|
forgejo = {
|
||||||
enable = true;
|
enable = true;
|
||||||
subDomain = "git";
|
subDomain = "git";
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ in {
|
||||||
owner = "derek-bot";
|
owner = "derek-bot";
|
||||||
};
|
};
|
||||||
derek-site = isEnabled "derek-site" {
|
derek-site = isEnabled "derek-site" {
|
||||||
file = ./derek-bot.age;
|
file = ./derek-site.age;
|
||||||
owner = "derek-site";
|
owner = "derek-site";
|
||||||
};
|
};
|
||||||
# matrix-registration = isEnabled "matrix" {
|
# matrix-registration = isEnabled "matrix" {
|
||||||
|
|
|
||||||
Binary file not shown.
|
|
@ -18,17 +18,14 @@
|
||||||
programDir = "${mainDir}/program";
|
programDir = "${mainDir}/program";
|
||||||
denoDir = "${mainDir}/deno";
|
denoDir = "${mainDir}/deno";
|
||||||
|
|
||||||
path = builtins.concatStringsSep ":" (map (x: "${x}/bin/") [pkgs.coreutils pkgs.deno pkgs.git]);
|
path = builtins.concatStringsSep ":" (map (x: "${x}/bin/") [pkgs.coreutils pkgs.deno pkgs.git pkgs.nodejs]);
|
||||||
run = pkgs.writeShellScriptBin "geen-dolfijn" ''
|
|
||||||
cd "${programDir}"
|
|
||||||
export $(grep -v '^#' "${config.age.secrets.${userGroup}.path}" | xargs)
|
|
||||||
|
|
||||||
deno run preview
|
|
||||||
'';
|
|
||||||
in {
|
in {
|
||||||
options.niksos.server.${name}.enable = mkEnableOption name;
|
options.niksos.server.${name}.enable = mkEnableOption name;
|
||||||
|
|
||||||
config = mkIf cfg {
|
config = mkIf cfg {
|
||||||
|
services.caddy.virtualHosts."geen-dolfijn.nl".extraConfig = ''
|
||||||
|
reverse_proxy http://127.0.0.1:9010
|
||||||
|
'';
|
||||||
systemd.services.${userGroup} = {
|
systemd.services.${userGroup} = {
|
||||||
enable = true;
|
enable = true;
|
||||||
after = ["network.target"];
|
after = ["network.target"];
|
||||||
|
|
@ -54,24 +51,27 @@ in {
|
||||||
cd "${programDir}"
|
cd "${programDir}"
|
||||||
git fetch
|
git fetch
|
||||||
git reset --hard origin/HEAD
|
git reset --hard origin/HEAD
|
||||||
|
rm -rf build || echo no build here lol
|
||||||
|
|
||||||
DENO_DIR=${denoDir} deno i
|
cp "${config.age.secrets.${userGroup}.path}" "./src/lib/secrets.json"
|
||||||
|
|
||||||
|
DENO_DIR=${denoDir} deno i --allow-scripts=npm:workerd,npm:sharp
|
||||||
|
DENO_DIR=${denoDir} deno run build || echo oopsie woopsie error
|
||||||
'';
|
'';
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
StateDirectory = userGroup;
|
StateDirectory = userGroup;
|
||||||
ExecStart = getExe run;
|
ExecStart = "${bash} -c 'cd ${programDir} && deno run preview --host --port 9010'";
|
||||||
User = userGroup;
|
User = userGroup;
|
||||||
Group = userGroup;
|
Group = userGroup;
|
||||||
Restart = "always";
|
Restart = "always";
|
||||||
RuntimeMaxSec = 1 * 60 * 60; # 1h * 60min * 60s
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
users.groups.${userGroup} = {};
|
users.groups.${userGroup} = {};
|
||||||
users.users.${userGroup} = {
|
users.users.${userGroup} = {
|
||||||
group = userGroup;
|
group = userGroup;
|
||||||
isSystemUser = true;
|
isNormalUser = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue