This commit is contained in:
tulg 2026-05-11 18:19:58 +03:00
parent 5acdaed42a
commit cb6af5e7c4
16 changed files with 288 additions and 29 deletions

View file

@ -9,11 +9,9 @@
./disko.nix
../../modules/nixos/networking/ssh.nix
../../modules/nixos/users/tulg.nix
./traefik.nix
./home.nix
../../modules/servers/per-host/kittykat/vaultwarden.nix
../../modules/servers/per-host/kittykat/xray.nix
../../modules/servers/per-host/kittykat
../../modules/servers/common.nix
];
networking.hostName = "kittykat";
@ -27,6 +25,7 @@
AllowTcpForwarding = true;
X11Forwarding = true;
GatewayPorts = "yes";
PermitTunnel = "yes";
};
};
programs.bash.interactiveShellInit = ''

View file

@ -1,67 +0,0 @@
{config, ...}: {
networking.firewall = {
enable = true;
allowedTCPPorts = [80 443 25565 25567];
extraInputRules = ''
tcp dport 2053 drop
'';
};
services.static-web-server = {
enable = true;
listen = "127.0.0.1:8080";
root = "/var/www/kittykat";
};
systemd.tmpfiles.rules = [
"d /var/www/kittykat 0755 root root -"
];
services.traefik = {
enable = true;
staticConfigOptions = {
entryPoints = {
web = {
address = ":80";
http.redirections.entryPoint = {
to = "websecure";
scheme = "https";
};
};
websecure = {
address = ":443";
http.tls.certResolver = "letsencrypt";
};
};
log = {
level = "INFO";
filePath = "${config.services.traefik.dataDir}/traefik.log";
format = "json";
};
certificatesResolvers.letsencrypt.acme = {
email = "tulg@protonmail.ch";
storage = "${config.services.traefik.dataDir}/acme.json";
httpChallenge.entryPoint = "web";
};
api.dashboard = true;
};
dynamicConfigOptions.http = {
routers.plain-html = {
rule = "Host(`poggerer.xyz`)";
entryPoints = ["websecure"];
service = "plain-html";
tls.certResolver = "letsencrypt";
};
services.plain-html.loadBalancer.servers = [
{url = "http://127.0.0.1:8080";}
];
};
};
}

View file

@ -11,9 +11,7 @@
../../modules/nixos/networking/ssh.nix
../../modules/nixos/users/tulg.nix
../../modules/servers/common.nix
../../modules/servers/per-host/overlord/nixarr.nix
../../modules/servers/per-host/overlord/share.nix
./slopfarms.nix
../../modules/servers/per-host/overlord
];
programs.tmux = {
enable = true;

View file

@ -1,92 +0,0 @@
{
pkgs,
lib,
...
}: {
services.n8n = {
enable = true;
openFirewall = true;
environment = {
host = "0.0.0.0";
port = 5678;
protocol = "http";
};
environment = {
N8N_SECURE_COOKIE = "false";
N8N_EXECUTE_COMMAND_ENABLED = "true";
N8N_ENABLE_EXECUTE_COMMAND = "true";
NODES_EXCLUDE = "[]";
N8N_NODES_INCLUDE = "n8n-nodes-base.executeCommand";
N8N_BINARY_DATA_STORAGE_PATH = "/srv/slopfarm";
};
};
systemd.services.n8n.serviceConfig = {
ReadWritePaths = ["/srv/slopfarm"];
SupplementaryGroups = ["video" "render"];
PrivateDevices = lib.mkForce false;
DevicePolicy = lib.mkForce "auto";
DeviceAllow = [
"/dev/nvidiactl rw"
"/dev/nvidia0 rw"
"/dev/nvidia-uvm rw"
"/dev/nvidia-uvm-tools rw"
"/dev/nvidia-modeset rw"
];
};
environment.systemPackages = with pkgs; [
ffmpeg
piper-tts
git
yt-dlp
cudaPackages.cudatoolkit
(python3.withPackages (ps:
with ps; [
requests
aiohttp
praw
torch
torchvision
transformers
accelerate
sentencepiece
safetensors
soundfile
librosa
pydub
scipy
pillow
moviepy
imageio
imageio-ffmpeg
opencv4
numpy
tqdm
regex
python-dotenv
pysrt
flask
]))
];
systemd.tmpfiles.rules = [
"d /srv/slopfarm 0755 n8n n8n -"
"d /srv/slopfarm/input 0755 n8n n8n -"
"d /srv/slopfarm/output 0755 n8n n8n -"
"d /srv/slopfarm/scripts 0755 n8n n8n -"
"d /srv/slopfarm/backgrounds 0755 n8n n8n -"
"d /srv/slopfarm/voices 0755 n8n n8n -"
];
}

View file

@ -4,7 +4,6 @@
useUserPackages = true;
extraSpecialArgs = {inherit inputs;};
backupFileExtension = "backup";
users.tulg = {
imports = [
../../modules/home-manager/home.nix