lots
This commit is contained in:
@@ -5,10 +5,6 @@
|
||||
default = false;
|
||||
};
|
||||
|
||||
imports = [
|
||||
sops-nix.nixosModules.sops
|
||||
];
|
||||
|
||||
config = lib.mkIf config.sysconfig.virtualization.authentik.enable {
|
||||
|
||||
sops.secrets."authentik/dbpass" = {};
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
{ ... }: {
|
||||
|
||||
imports = [
|
||||
imports = let
|
||||
dir = builtins.readDir ./.;
|
||||
in builtins.map (x: ./${x}) (builtins.filter
|
||||
(file: (dir.${file} == "directory"))
|
||||
(builtins.attrNames dir)
|
||||
);
|
||||
|
||||
/*imports = [
|
||||
./gitlab
|
||||
./gitea
|
||||
./traefik
|
||||
@@ -21,5 +28,5 @@
|
||||
./novnc
|
||||
./minecraft
|
||||
#./sandbox
|
||||
];
|
||||
];*/
|
||||
}
|
||||
|
||||
@@ -5,19 +5,10 @@
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
configvol = lib.options.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "/ssd1/Home-Assistant/data:/config";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.sysconfig.virtualization.homeassistant.enable {
|
||||
|
||||
networking = {
|
||||
hosts."192.168.100.25" = [ "hass.local" ];
|
||||
|
||||
nat.internalInterfaces = [ "ve-home-assnHYM" ];
|
||||
};
|
||||
containers.home-assistant = {
|
||||
|
||||
autoStart = true;
|
||||
|
||||
@@ -9,10 +9,6 @@
|
||||
|
||||
sops.secrets."keycloak/dbpass" = {};
|
||||
|
||||
networking = {
|
||||
|
||||
nat.internalInterfaces = [ "ve-keycloak" ];
|
||||
};
|
||||
|
||||
containers.keycloak = {
|
||||
|
||||
|
||||
@@ -5,17 +5,8 @@
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
services.minecraft.enable = lib.options.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
|
||||
/*imports = [
|
||||
nix-minecraft.nixosModules.minecraft-servers
|
||||
];*/
|
||||
|
||||
config = lib.mkIf config.sysconfig.virtualization.minecraft.enable {
|
||||
|
||||
networking = {
|
||||
@@ -23,8 +14,6 @@
|
||||
allowedTCPPorts = [ 25565 ];
|
||||
allowedUDPPorts = [ 25565 ];
|
||||
};
|
||||
|
||||
nat.internalInterfaces = [ "ve-minecraft" ];
|
||||
};
|
||||
|
||||
nixpkgs.overlays = [ nix-minecraft.overlay ];
|
||||
|
||||
@@ -7,12 +7,6 @@
|
||||
|
||||
config = lib.mkIf config.sysconfig.virtualization.n8n.enable {
|
||||
|
||||
networking = {
|
||||
hosts."192.168.100.21" = [ "n8n.local" ];
|
||||
|
||||
nat.internalInterfaces = [ "ve-n8n" ];
|
||||
};
|
||||
|
||||
containers.n8n = {
|
||||
|
||||
autoStart = true;
|
||||
@@ -42,21 +36,7 @@
|
||||
|
||||
#webhookUrl = "https://n8n.blunkall.us/";
|
||||
};
|
||||
/*
|
||||
systemd.services.n8n = {
|
||||
environment = {
|
||||
N8N_DIAGNOSTICS_ENABLED = "false";
|
||||
N8N_VERSION_NOTIFICATIONS_ENABLED = "false";
|
||||
N8N_TEMPLATES_ENABLED = "false";
|
||||
|
||||
EXTERNAL_FRONTEND_HOOKS_URLS = "";
|
||||
N8N_DIAGNOSTICS_CONFIG_FRONTEND = "";
|
||||
N8N_DIAGNOSTICS_CONFIG_BACKEND = "";
|
||||
|
||||
N8N_SECURE_COOKIE = "false";
|
||||
};
|
||||
};
|
||||
*/
|
||||
system.stateVersion = "25.05";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
};
|
||||
|
||||
config = let
|
||||
pkgs-com = import nixpkgs-us {
|
||||
pkgs-us = import nixpkgs-us {
|
||||
system = "x86_64-linux";
|
||||
config.allowUnfree = true;
|
||||
};
|
||||
@@ -26,9 +26,9 @@
|
||||
enable = config.sysconfig.services.netbird.enable;
|
||||
ui = {
|
||||
enable = true;
|
||||
#package = pkgs-com.netbird-ui;
|
||||
#package = pkgs-us.netbird-ui;
|
||||
};
|
||||
#package = pkgs-com.netbird;
|
||||
#package = pkgs-us.netbird;
|
||||
};
|
||||
|
||||
networking = {
|
||||
@@ -96,7 +96,7 @@
|
||||
NETBIRD_TOKEN_SOURCE = "accessToken";
|
||||
};
|
||||
|
||||
package = pkgs-com.netbird-dashboard;
|
||||
package = pkgs-us.netbird-dashboard;
|
||||
};
|
||||
management = {
|
||||
enable = true;
|
||||
|
||||
@@ -31,11 +31,6 @@
|
||||
forceSSL = false;
|
||||
root = "/var/www/data";
|
||||
};
|
||||
"homebox.vpn/esotericbytes" = {
|
||||
enableACME = false;
|
||||
forceSSL = false;
|
||||
root = "/var/www/data";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -8,8 +8,6 @@
|
||||
config = lib.mkIf config.sysconfig.virtualization.novnc.enable {
|
||||
|
||||
networking = {
|
||||
hosts."192.168.100.30" = [ "novnc.local" ];
|
||||
|
||||
firewall.interfaces."ve-novnc" = lib.mkIf config.sysconfig.virtualization.novnc.enable {
|
||||
allowedTCPPorts = [ 5900 ];
|
||||
allowedUDPPorts = [ 5900 ];
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
settings = {
|
||||
|
||||
base-url = "https://ntfy.blunkall.us";
|
||||
base-url = "https://ntfy.esotericbytes.com";
|
||||
|
||||
listen-http = ":80";
|
||||
|
||||
|
||||
@@ -41,7 +41,15 @@
|
||||
hostPath = "/dev/nvidia-uvm-tools";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/etc/nvidia" = {
|
||||
hostPath = "/etc/nvidia";
|
||||
isReadOnly = false;
|
||||
};
|
||||
|
||||
"/dev/dri" = {
|
||||
hostPath = "/dev/dri";
|
||||
isReadOnly = false;
|
||||
};
|
||||
"/dev/dri/renderD128" = {
|
||||
hostPath = "/dev/dri/renderD128";
|
||||
isReadOnly = false;
|
||||
@@ -69,11 +77,15 @@
|
||||
node = "/dev/nvidia-uvm-tools";
|
||||
modifier = "rw";
|
||||
}
|
||||
|
||||
/*
|
||||
{
|
||||
node = "/dev/dri";
|
||||
modifier = "rw";
|
||||
}
|
||||
{
|
||||
node = "/dev/dri/renderD128";
|
||||
modifier = "rw";
|
||||
}
|
||||
}*/
|
||||
];
|
||||
|
||||
config = {
|
||||
|
||||
@@ -19,8 +19,6 @@
|
||||
*/
|
||||
|
||||
networking = {
|
||||
|
||||
nat.internalInterfaces = [ "ve-pihole" ];
|
||||
nameservers = [ "192.168.100.28" ];
|
||||
};
|
||||
|
||||
@@ -46,9 +44,7 @@
|
||||
pihole-web = {
|
||||
enable = true;
|
||||
|
||||
package = pkgs-us.pihole-web;
|
||||
|
||||
#hostName = "192.168.100.28";
|
||||
hostName = "pihole.local";
|
||||
|
||||
ports = [ 80 ];
|
||||
};
|
||||
@@ -56,8 +52,6 @@
|
||||
pihole-ftl = {
|
||||
enable = true;
|
||||
|
||||
package = pkgs-us.pihole-ftl;
|
||||
|
||||
openFirewallDNS = true;
|
||||
openFirewallWebserver = true;
|
||||
|
||||
@@ -69,21 +63,43 @@
|
||||
|
||||
settings = {
|
||||
dns.upstreams = [ "127.0.0.1#5335" ];
|
||||
files.macvendor = lib.mkForce "/var/lib/pihole/macvendor.db";
|
||||
};
|
||||
};
|
||||
|
||||
unbound = {
|
||||
enable = true;
|
||||
|
||||
resolveLocalQueries = true;
|
||||
|
||||
settings = {
|
||||
server = {
|
||||
interface = [ "127.0.0.1" ];
|
||||
port = 5335;
|
||||
|
||||
access-control = [ "127.0.0.1 allow" ];
|
||||
|
||||
harden-glue = true;
|
||||
harden-dnssec-stripped = true;
|
||||
|
||||
use-caps-for-id = false;
|
||||
|
||||
prefetch = true;
|
||||
|
||||
edns-buffer-size = 1232;
|
||||
|
||||
hide-identity = true;
|
||||
hide-version = true;
|
||||
};
|
||||
|
||||
forward-zone = [
|
||||
{
|
||||
name = "cloudflare";
|
||||
forward-addr = [
|
||||
"1.1.1.1#one.one.one.one"
|
||||
"1.0.0.1#one.one.one.one"
|
||||
];
|
||||
forward-tls-upstream = true;
|
||||
}
|
||||
];
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
|
||||
signal = {
|
||||
enable = true;
|
||||
#relayHosts = [ "blunkall.us" ];
|
||||
#relayHosts = [ "esotericbytes.com" ];
|
||||
relayHosts = [ "192.168.100.27" ];
|
||||
extraArgs = [
|
||||
"-k"
|
||||
|
||||
@@ -1,23 +1,10 @@
|
||||
{ config, lib, nixpkgs-us, self, ... }: {
|
||||
{ config, lib, self, ... }: {
|
||||
|
||||
options.sysconfig.virtualization.sandbox.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
};
|
||||
|
||||
disabledModules = [
|
||||
"virtualisation/nixos-containers.nix"
|
||||
];
|
||||
|
||||
imports = [
|
||||
(import "${nixpkgs-us}/nixos/modules/virtualisation/nixos-containers.nix" {
|
||||
inherit config lib;
|
||||
pkgs = (import nixpkgs-us {
|
||||
system = "x86_64-linux";
|
||||
});
|
||||
})
|
||||
];
|
||||
|
||||
config = lib.mkIf config.sysconfig.virtualization.sandbox.enable {
|
||||
|
||||
networking = {
|
||||
@@ -37,7 +24,7 @@
|
||||
|
||||
flake = "${self}";
|
||||
|
||||
bindMounts = {
|
||||
/*bindMounts = {
|
||||
"/dev/nvidia0" = {
|
||||
hostPath = "/dev/nvidia0";
|
||||
isReadOnly = false;
|
||||
@@ -81,7 +68,10 @@
|
||||
node = "/dev/nvidia-uvm-tools";
|
||||
modifier = "rw";
|
||||
}
|
||||
];
|
||||
];*/
|
||||
|
||||
config = {
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
|
||||
@@ -12,10 +12,6 @@
|
||||
|
||||
"esotericbytes.com"
|
||||
"*.esotericbytes.com"
|
||||
|
||||
"esotericbytes.local"
|
||||
"*.esotericbytes.local"
|
||||
"traefik.esotericbytes.local"
|
||||
];
|
||||
|
||||
firewall.allowedTCPPorts = [ 22 80 443 ];
|
||||
@@ -84,14 +80,17 @@
|
||||
certResolver = "cloudflare";
|
||||
domains = {
|
||||
main = "esotericbytes.com";
|
||||
sans = [ "*.esotericbytes.com" ];
|
||||
sans = [
|
||||
"*.esotericbytes.com"
|
||||
"local.internal.esotericbytes.com"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
log = {
|
||||
level = "DEBUG";
|
||||
filePath = "/etc/traefik/data/traefik.log";
|
||||
level = "INFO";
|
||||
filePath = "/etc/traefik/data/logs/traefik.log";
|
||||
format = "json";
|
||||
};
|
||||
certificatesResolvers = {
|
||||
@@ -125,12 +124,12 @@
|
||||
tls.certResolver = "cloudflare";
|
||||
#middlewares = [ "authentik" ];
|
||||
};*/
|
||||
/*homeassistant = {
|
||||
homeassistant = {
|
||||
entryPoints = [ "websecure" ];
|
||||
rule = "Host(`hass.esotericbytes.com`)";
|
||||
rule = "Host(`hass.local`)";
|
||||
service = "homeassistant";
|
||||
tls.certResolver = "cloudflare";
|
||||
};*/
|
||||
};
|
||||
jellyfin = {
|
||||
entryPoints = [ "websecure" ];
|
||||
rule = "Host(`jellyfin.esotericbytes.com`)";
|
||||
@@ -167,7 +166,7 @@
|
||||
};
|
||||
traefik = {
|
||||
entryPoints = [ "websecure" ];
|
||||
rule = "Host(`traefik.esotericbytes.local`)";
|
||||
rule = "Host(`traefik.local`)";
|
||||
service = "api@internal";
|
||||
tls.certResolver = "cloudflare";
|
||||
#middlewares = [ "authentik" ];
|
||||
@@ -179,12 +178,12 @@
|
||||
tls.certResolver = "cloudflare";
|
||||
};*/
|
||||
|
||||
/*pihole = {
|
||||
entryPoints = [ "localsecure" ];
|
||||
rule = "Host(`pihole.esotericbytes.com`)";
|
||||
pihole = {
|
||||
entryPoints = [ "websecure" ];
|
||||
rule = "Host(`pihole.local`)";
|
||||
service = "pihole";
|
||||
tls.certResolver = "cloudflare";
|
||||
};*/
|
||||
};
|
||||
|
||||
netbird = {
|
||||
entryPoints = [ "websecure" ];
|
||||
@@ -193,12 +192,12 @@
|
||||
tls.certResolver = "cloudflare";
|
||||
};
|
||||
|
||||
/*n8n = {
|
||||
n8n = {
|
||||
entryPoints = [ "websecure" ];
|
||||
rule = "Host(`n8n.esotericbytes.com`)";
|
||||
rule = "Host(`n8n.local`)";
|
||||
service = "n8n";
|
||||
tls.certResolver = "cloudflare";
|
||||
};*/
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
@@ -221,7 +220,7 @@
|
||||
|
||||
authentik.loadBalancer.servers = [ { url = "http://192.168.100.10:9000"; } ];
|
||||
|
||||
#pihole.loadBalancer.servers = [ { url = "http://192.168.100.10:8080"; } ];
|
||||
pihole.loadBalancer.servers = [ { url = "http://192.168.100.28"; } ];
|
||||
|
||||
keycloak.loadBalancer.servers = [ { url = "http://192.168.100.22:80"; } ];
|
||||
|
||||
@@ -236,7 +235,9 @@
|
||||
servers = [ { url = "http://192.168.100.23:80"; } ];
|
||||
};
|
||||
|
||||
#n8n.loadBalancer.servers = [ { url = "http://192.168.100.21:5678"; } ];
|
||||
homeassistant.loadBalancer.servers = [ "http://192.168.100.25:8123" ];
|
||||
|
||||
n8n.loadBalancer.servers = [ { url = "http://192.168.100.21:5678"; } ];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user