From e5d437949b6e74a76aebff3fbe6f5d9ca7398f4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kier=C3=A1n=20Meinhardt?= Date: Thu, 5 Nov 2020 21:29:47 +0100 Subject: [PATCH] feat: take dropbox module from dropbox --- modules/dropbox.nix | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/modules/dropbox.nix b/modules/dropbox.nix index 1efa36b..7f7bf4f 100644 --- a/modules/dropbox.nix +++ b/modules/dropbox.nix @@ -5,17 +5,24 @@ in { options.niveum.dropbox = { enable = mkEnableOption "Dropbox"; }; config = mkIf cfg.enable { + environment.systemPackages = [ pkgs.dropbox-cli ]; + + networking.firewall = { + allowedTCPPorts = [ 17500 ]; + allowedUDPPorts = [ 17500 ]; + }; + systemd.user.services.dropbox = { description = "Dropbox synchronisation service"; - after = [ "network.target" ]; - wantedBy = [ "default.target" ]; - path = [ pkgs.dropbox-cli ]; + wantedBy = [ "graphical-session.target" ]; serviceConfig = { - Type = "forking"; - PIDFile = "%h/.dropbox/dropbox.pid"; - Restart = "always"; - ExecStart = "${pkgs.dropbox-cli}/bin/dropbox start"; - ExecStop = "${pkgs.dropbox-cli}/bin/dropbox stop"; + ExecStart = "${pkgs.dropbox.out}/bin/dropbox"; + ExecReload = "${pkgs.coreutils.out}/bin/kill -HUP $MAINPID"; + KillMode = "control-group"; # upstream recommends process + Restart = "on-failure"; + PrivateTmp = true; + ProtectSystem = "full"; + Nice = 10; }; }; };