I should check what files look like vefore I commit them

This commit is contained in:
baduhai 2023-01-06 16:58:15 -03:00
parent f3b70219c2
commit b3a3b7ee75

View file

@ -1,124 +1,71 @@
{ specialArgs, inputs, config, pkgs, lib, ... }: { specialArgs, inputs, config, pkgs, lib, ... }:
{ {
age.secrets = { virtualisation = {
paperless-pass = { docker.enable = true;
file = ../../../../secrets/paperless-pass.age; oci-containers = {
owner = "paperless"; backend = "docker";
group = "hosted"; containers = {
"cinny" = {
image = "ghcr.io/cinnyapp/cinny:latest";
ports = [
"${config.ports.cinny}:80"
];
extraOptions = [
"--pull=always"
];
}; };
"librespeed" = {
image = "lscr.io/linuxserver/librespeed:latest";
environment = {
TZ = "America/Bahia";
}; };
ports = [
services = { "${config.ports.librespeed}:80"
bazarr = { ];
enable = true; extraOptions = [
user = "user"; "--pull=always"
group = "hosted"; ];
}; };
"syncthing" = {
changedetection-io = { image = "lscr.io/linuxserver/syncthing:1.20.4";
enable = true; environment = {
group = "hosted"; PUID = "1000";
behindProxy = true; PGID = "100";
datastorePath = "/data/changedetection"; TZ = "America/Bahia";
port = lib.toInt "${config.ports.changedetection-io}";
baseURL = "https://detect.baduhai.me";
}; };
volumes = [
jackett.enable = true; "/data/syncthing/config:/config"
"/data/syncthing/data1:/data1"
jellyfin = { "/data/syncthing/data2:/data2"
enable = true; "/data/syncthing/notes:/sync/notes"
user = "user"; ];
group = "hosted"; ports = [
"${config.ports.syncthing}:8384"
"22000:22000"
"21027:21027/udp"
];
extraOptions = [
"--pull=always"
];
}; };
"whoogle" = {
minecraft-server = { image = "benbusby/whoogle-search:latest";
enable = true; environment = {
eula = true; HTTPS_ONLY = "1";
declarative = true; WHOOGLE_CONFIG_DISABLE = "1";
openFirewall = true; WHOOGLE_CONFIG_LANGUAGE = "lang_en";
package = pkgs.papermc; WHOOGLE_CONFIG_THEME = "system";
serverProperties = { WHOOGLE_CONFIG_VIEW_IMAGE = "1";
motd = "Bem-vindo a Alexandria"; WHOOGLE_CONFIG_GET_ONLY = "1";
difficulty = "hard";
gamemode = "survival";
}; };
dataDir = "/data/minecraft"; ports = [
"${config.ports.whoogle}:5000"
];
extraOptions = [
"--pull=always"
];
}; };
n8n.enable = true;
nginx = {
enable = true;
group = "hosted";
recommendedGzipSettings = true;
recommendedOptimisation = true;
recommendedProxySettings = true;
recommendedTlsSettings = true;
virtualHosts = {
"baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; root = inputs.homepage; };
"bazarr.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.bazaar}"; };
"bitwarden.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.vaultwarden}"; };
"cinny.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.cinny}"; };
"detect.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.changedetection-io}"; };
"jackett.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.jackett}"; };
"jellyfin.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.jellyfin}"; };
"librespeed.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.librespeed}"; };
"n8n.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.n8n}"; };
"paperless.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.paperless}"; };
"qbittorrent.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.qbittorrent}"; };
"radarr.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.radarr}"; };
"shiori.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.shiori}"; };
"sonarr.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.sonarr}"; };
"sync.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.syncthing}"; };
"whoogle.baduhai.me" = { useACMEHost = "baduhai.me"; forceSSL = true; kTLS = true; locations."/".proxyPass = "http://127.0.0.1:${config.ports.whoogle}"; };
};
};
paperless = {
enable = true;
dataDir = "/data/paperless/data";
mediaDir = "/data/paperless/media";
passwordFile = config.age.secrets.paperless-pass.path;
port = lib.toInt "${config.ports.paperless}";
consumptionDirIsPublic = true;
extraConfig = {
PAPERLESS_OCR_LANGUAGE = "eng+por+deu";
};
};
qbittorrent = {
enable = true;
user = "user";
group = "hosted";
port = lib.toInt "${config.ports.qbittorrent}";
};
radarr = {
enable = true;
user = "user";
group = "hosted";
};
shiori = {
enable = true;
port = lib.toInt "${config.ports.shiori}";
};
sonarr = {
enable = true;
user = "user";
group = "hosted";
};
vaultwarden = {
enable = true;
config = {
DOMAIN = "https://bitwarden.baduhai.me";
SIGNUPS_ALLOWED = false;
ROCKET_ADDRESS = "127.0.0.1";
ROCKET_PORT = "${config.ports.vaultwarden}";
}; };
}; };
}; };