nixos-hypervisor/services/nixarr/default.nix
Théo Barnouin 313913758a
Some checks are pending
/ Build Nix targets (push) Waiting to run
Cleanup and pin crowdsec pkg to 1.6.4 (URL bug)
2025-05-28 11:48:38 +02:00

101 lines
2.4 KiB
Nix

{
config,
lib,
...
}: let
cfg = config.services.vm_nixarr;
in {
options.services.vm_nixarr = {
enable = lib.mkEnableOption "Enable minimal config";
};
config = lib.mkIf cfg.enable {
age.secrets = {
nixarr-lapi-key = {
file = ../../secrets/nixarr-lapi-key.age;
owner = "crowdsec";
};
};
fileSystems."/downloads" = {
device = "192.168.1.125:/BIGDATA";
fsType = "nfs";
options = [
"x-systemd.automount"
"noauto"
];
};
services = {
crowdsec = {
hub.collections = [
"LePresidente/gitea"
];
settings.lapi.credentialsFile = "${config.age.secrets.nixarr-lapi-key.path}";
localConfig = {
acquisitions = [
{
source = "journalctl";
journalctl_filter = [ "_SYSTEMD_UNIT=radarr.service" ];
labels = {
type = "syslog";
};
}
{
source = "journalctl";
journalctl_filter = [ "_SYSTEMD_UNIT=sonarr.service" ];
labels = {
type = "syslog";
};
}
{
source = "journalctl";
journalctl_filter = [ "_SYSTEMD_UNIT=bazarr.service" ];
labels = {
type = "syslog";
};
}
{
source = "journalctl";
journalctl_filter = [ "_SYSTEMD_UNIT=prowlarr.service" ];
labels = {
type = "syslog";
};
}
{
source = "journalctl";
journalctl_filter = [ "_SYSTEMD_UNIT=jellyseerr.service" ];
labels = {
type = "syslog";
};
}
];
};
};
prowlarr = {
enable = true;
openFirewall = true;
};
bazarr = {
enable = true;
openFirewall = true;
};
sonarr = {
enable = true;
openFirewall = true;
};
radarr = {
enable = true;
openFirewall = true;
};
jellyseerr = {
enable = true;
openFirewall = true;
};
};
networking = {
firewall.allowedTCPPorts = [3000 9708];
extraHosts = ''
188.114.96.2 www.yggtorrent.top
188.114.97.2 www.yggtorrent.top
'';
};
};
}