2025-08-15 16:41:33 -05:00
|
|
|
{ inputs, pkgs, ... }:
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
imports = [
|
|
|
|
|
./vm-base.nix
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
config = {
|
|
|
|
|
my.vm = {
|
|
|
|
|
name = "lab01";
|
|
|
|
|
ip4 = "192.168.0.5";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
# environment.systemPackages = with pkgs; [
|
2025-08-24 01:23:15 -05:00
|
|
|
#
|
2025-08-15 16:41:33 -05:00
|
|
|
# ];
|
|
|
|
|
|
2025-08-24 01:23:15 -05:00
|
|
|
networking.firewall.allowedTCPPorts = [
|
|
|
|
|
80
|
|
|
|
|
443
|
|
|
|
|
];
|
2025-08-15 16:41:33 -05:00
|
|
|
|
|
|
|
|
services.caddy = {
|
|
|
|
|
enable = true;
|
|
|
|
|
virtualHosts = {
|
|
|
|
|
"feed.rperce.net".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.5:8080
|
|
|
|
|
'';
|
|
|
|
|
"barkeep.dukeceph.xyz".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.2:8000
|
|
|
|
|
'';
|
|
|
|
|
"barkeep.rperce.net".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.2:8000
|
|
|
|
|
'';
|
|
|
|
|
"minecraft.dukeceph.xyz".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.4:8080
|
|
|
|
|
'';
|
|
|
|
|
"immich.rperce.net".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.2:2283
|
|
|
|
|
'';
|
|
|
|
|
"metrics.rperce.net".extraConfig = ''
|
2025-08-23 23:14:40 -05:00
|
|
|
reverse_proxy http://192.168.0.6:3000
|
2025-08-15 16:41:33 -05:00
|
|
|
'';
|
|
|
|
|
"jellyfin.rperce.net".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.2:8096
|
|
|
|
|
'';
|
|
|
|
|
"forge.rperce.net".extraConfig = ''
|
|
|
|
|
reverse_proxy http://192.168.0.5:3333
|
|
|
|
|
'';
|
2025-08-20 14:39:39 -05:00
|
|
|
"unifi.rperce.net".extraConfig = ''
|
|
|
|
|
reverse_proxy 192.168.0.100:8443 {
|
|
|
|
|
transport http {
|
|
|
|
|
tls_insecure_skip_verify
|
|
|
|
|
}
|
|
|
|
|
header_up - Authorization
|
|
|
|
|
}
|
|
|
|
|
'';
|
2025-08-15 16:41:33 -05:00
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
services.miniflux = {
|
|
|
|
|
enable = true;
|
|
|
|
|
adminCredentialsFile = "/mnt/nfs/miniflux/admin-credentials";
|
|
|
|
|
config = {
|
|
|
|
|
LISTEN_ADDR = "0.0.0.0:8080";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2025-08-20 14:39:39 -05:00
|
|
|
# not working yet, so caddy is still pointing at xalicas
|
2025-08-15 16:41:33 -05:00
|
|
|
services.immich = {
|
|
|
|
|
enable = true;
|
|
|
|
|
host = "0.0.0.0";
|
|
|
|
|
port = 2293;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
services.forgejo = {
|
|
|
|
|
enable = true;
|
|
|
|
|
database.type = "postgres";
|
|
|
|
|
lfs.enable = true;
|
|
|
|
|
settings = {
|
|
|
|
|
server = {
|
|
|
|
|
DOMAIN = "forge.rperce.net";
|
|
|
|
|
ROOT_URL = "https://forge.rperce.net/";
|
|
|
|
|
HTTP_PORT = 3333;
|
|
|
|
|
};
|
|
|
|
|
service.DISABLE_REGISTRATION = true;
|
|
|
|
|
actions = {
|
|
|
|
|
ENABLED = true;
|
|
|
|
|
DEFAULT_ACTIONS_URL = "github";
|
|
|
|
|
};
|
|
|
|
|
mailer.ENABLED = false;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|