diff --git a/modules/services/aria2/default.nix b/modules/services/aria2/default.nix new file mode 100644 index 0000000..64ed2ee --- /dev/null +++ b/modules/services/aria2/default.nix @@ -0,0 +1,46 @@ +# to download things +{ config, lib, pkgs, ... }: +let + cfg = config.my.services.aria2; + domain = config.networking.domain; +in +{ + options.my.services.aria2 = with lib; { + enable = mkEnableOption "Aria2 for downloads"; + + downloadDir = mkOption { + type = types.path; + default = "/srv/data/tmp/aria2/"; + description = mdDoc '' + Directory to store downloaded files. + ''; + }; + }; + + config = lib.mkIf cfg.enable { + services.aria2 = { + # enable = true; + inherit (cfg) downloadDir; + }; + + systemd.services.aria2 = { + after = [ "network-online.target" ]; + }; + + my.services.nginx.virtualHosts = [ + { + subdomain = "download"; + root = "${pkgs.ariang}/share/ariang"; + } + ]; + + webapps.apps.aria2 = { + dashboard = { + name = "Download"; + category = "app"; + icon = "download"; + link = "https://download.${domain}"; + }; + }; + }; +} diff --git a/modules/services/default.nix b/modules/services/default.nix index 25ec50e..04ead61 100644 --- a/modules/services/default.nix +++ b/modules/services/default.nix @@ -2,6 +2,7 @@ { imports = [ ./alertmanager + ./aria2 ./backup ./bazarr ./blocky