From c5aa3bdcf47ae4e109cde8e71471740d2e20fe93 Mon Sep 17 00:00:00 2001 From: Haak Saxberg Date: Wed, 10 Aug 2022 01:24:35 -0700 Subject: [PATCH] have nas start flood as a service, with rtorrent to come --- nix/deployments/nixops.nix | 10 +++--- nix/home/programs/flood/default.nix | 49 +++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 6 deletions(-) create mode 100644 nix/home/programs/flood/default.nix diff --git a/nix/deployments/nixops.nix b/nix/deployments/nixops.nix index 36f20ee..a8fded4 100644 --- a/nix/deployments/nixops.nix +++ b/nix/deployments/nixops.nix @@ -51,7 +51,10 @@ in { pkgs, ... }: { deployment.targetHost = nasIp; - imports = [ ../system/svalbard/configuration.nix ]; + imports = [ + ../system/svalbard/configuration.nix + ../home/programs/flood + ]; networking.wireless.networks.N904.pskRaw = ( (import ../system/framework/keys.nix).wifi.N904.pskRaw ); @@ -63,10 +66,5 @@ in ''; networking.firewall.allowedTCPPorts = [ 2049 ]; - - environment.systemPackages = with pkgs; [ - flood - rtorrent - ]; }; } diff --git a/nix/home/programs/flood/default.nix b/nix/home/programs/flood/default.nix new file mode 100644 index 0000000..9f0dafc --- /dev/null +++ b/nix/home/programs/flood/default.nix @@ -0,0 +1,49 @@ +{ pkgs, ... }: +{ + networking.firewall = { + allowedTCPPorts = [ + #nginx + 80 + 443 + ]; + }; + + services.nginx = { + enable = true; + virtualHosts."torrents" = { + locations."/" = { + proxyPass = "http://localhost:3000"; + }; + }; + }; + + users.extraUsers.flood = { + isNormalUser = true; + }; + + systemd.services = { + flood = { + enable = true; + serviceConfig = { + User = "flood"; + WorkingDirectory = "/home/flood"; + ExecStart = "${pkgs.flood}/bin/flood"; + Restart = "on-failure"; + }; + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + }; + +# rtorrent = { +# enable = true; +# serviceConfig = { +# User = "flood"; +# Type = "forking"; +# ExecStart = "${pkgs.rtorrent}/bin/rtorrent"; +# Restart = "on-failure"; +# }; +# wantedBy = [ "multi-user.target" ]; +# after = [ "network.target" ]; +# }; + }; +}