Kickstart Ranni

This commit is contained in:
2025-05-12 22:31:34 +01:00
parent dd5d771387
commit fb2370516e
18 changed files with 196 additions and 163 deletions

View File

@@ -10,7 +10,7 @@
}: {
name = "${service}.${baseUrl}";
value = {
listenAddresses = ["100.91.249.54"];
listenAddresses = ["100.76.159.53"];
extraConfig = ''
tls {
dns porkbun {
@@ -144,51 +144,102 @@ in {
guiAddress = "localhost:8387";
};
services = {
jellyfin.enable = true;
jellyfin.group = "media";
};
users.groups."media".name = "media";
# age.secrets = {
# caddy_porkbun_api_env.file = ../../secrets/caddy_porkbun_api_env.age;
# };
age.secrets = {
caddy_porkbun_api_env.file = ../../secrets/caddy_porkbun_api_env.age;
danflix_hetzner_storage_box_pub_key.file = ../../secrets/danflix_hetzner_storage_box_pub_key.age;
danflix_rclone_config.file = ../../secrets/danflix_rclone_config.age;
};
# services.sabnzbd = {
# enable = true;
# group = "media";
# };
services.sabnzbd = {
enable = true;
group = "media";
};
# services.radarr = {
# enable = true;
# group = "media";
# };
containers.radarr = {
autoStart = true;
bindMounts = {
"/data" = {
hostPath = "/var/media";
mountPoint = "/var/media";
isReadOnly = false;
};
};
config = {config, pkgs, lib, ...}: {
services.radarr = {
enable = true;
user = "root";
group = "root";
};
system.stateVersion = "24.11";
};
};
# services.caddy = {
# enable = true;
# enableReload = false;
# environmentFile = config.age.secrets.caddy_porkbun_api_env.path;
# package = pkgs.caddy.withPlugins {
# plugins = ["github.com/caddy-dns/porkbun@v0.2.1"];
# hash = "sha256-X8QbRc2ahW1B5niV8i3sbfpe1OPYoaQ4LwbfeaWvfjg=";
# };
# logFormat = "level INFO";
# virtualHosts =
# (mkVHosts "broccoli.town" [
# {
# service = "radarr";
# port = 7878;
# }
# {
# service = "sonarr";
# port = 8989;
# }
# {
# service = "sab";
# port = 8085;
# }
containers.sonarr = {
autoStart = true;
bindMounts = {
"/data" = {
hostPath = "/var/media";
mountPoint = "/var/media";
isReadOnly = false;
};
};
config = {config, pkgs, lib, ...}: {
services.sonarr = {
enable = true;
user = "root";
group = "root";
};
system.stateVersion = "24.11";
};
};
services.prowlarr = {
enable = true;
};
services.caddy = {
enable = true;
enableReload = false;
environmentFile = config.age.secrets.caddy_porkbun_api_env.path;
package = pkgs.caddy.withPlugins {
plugins = ["github.com/caddy-dns/porkbun@v0.2.1"];
hash = "sha256-X8QbRc2ahW1B5niV8i3sbfpe1OPYoaQ4LwbfeaWvfjg=";
};
logFormat = "level INFO";
virtualHosts =
(mkVHosts "broccoli.town" [
{
service = "radarr";
port = 7878;
}
{
service = "sonarr";
port = 8989;
}
{
service = "sab";
port = 8085;
}
# {
# service = "transmission";
# port = 9091;
# }
# ])
# // {
])
// {
"http://ranni:8085" = {
listenAddresses = ["100.76.159.53"];
extraConfig = ''
reverse_proxy localhost:8085
'';
};
# "danielpatterson.dev" = {
# extraConfig = ''
# header {
@@ -199,49 +250,19 @@ in {
# file_server
# '';
# };
# "movies.danielpatterson.dev" = {
# extraConfig = ''
# reverse_proxy localhost:8096
# '';
# };
"movies.danielpatterson.dev" = {
extraConfig = ''
reverse_proxy localhost:8096
'';
};
# "git.broccoli.town" = {
# extraConfig = ''
# reverse_proxy localhost:3030
# '';
# };
# };
# };
};
};
# containers.radarr = {
# autoStart = false;
# bindMounts = {
# "/data" = {
# hostPath = "/var/media";
# mountPoint = "/data";
# isReadOnly = false;
# };
# };
# forwardPorts = [
# {
# containerPort = 7878;
# hostPort = 7979;
# }
# ];
# config = {config, pkgs, lib, ...}: {
# services.radarr = {
# enable = true;
# };
# };
# };
# services.sonarr = {
# enable = true;
# group = "media";
# };
# services.prowlarr = {
# enable = true;
# };
environment.systemPackages = with pkgs; [
helix

View File

@@ -32,6 +32,11 @@
fsType = "zfs";
};
fileSystems."/var/media" = {
device = "root_pool/media";
fsType = "zfs";
};
fileSystems."/boot/efi" = {
device = "/dev/disk/by-uuid/555A-CAFA";
fsType = "vfat";