{ config, lib, pkgs, ... }: let inherit (lib) mkIf; cfg = config.pepe.services.jellyseer; in { options.pepe.services.jellyseer = with lib; { enable = mkEnableOption "Enable jellyseer"; package = mkPackageOption pkgs "jellyseerr" { }; domain = mkOption { type = types.str; default = null; }; }; config = mkIf cfg.enable { services.jellyseerr = { enable = true; package = cfg.package; }; pepe.core.vhost.hosts.${cfg.domain} = with config.pepe.core.network; { dnsInterfaces = [ interfaceTypes.vpn interfaceTypes.lan ]; locations."/" = { port = config.services.jellyseerr.port; allowLan = true; allow = [ interfaces.${interfaceTypes.vpn}.net ]; }; }; }; }