main
 1{
 2  den.aspects.desktop.app.kdeconnect = {
 3    persistHome = {config, ...}: {
 4      directories = [
 5        "${config.xdg.config.directory}/kdeconnect"
 6      ];
 7    };
 8
 9    nixos = {
10      networking.firewall = {
11        allowedTCPPortRanges = [
12          {
13            from = 1714;
14            to = 1764;
15          }
16        ];
17        allowedUDPPortRanges = [
18          {
19            from = 1714;
20            to = 1764;
21          }
22        ];
23      };
24    };
25
26    hjem = {pkgs, ...}: {
27      packages = [pkgs.kdePackages.kdeconnect-kde];
28
29      systemd.services.kdeconnect = {
30        description = "Adds communication between your desktop and your smartphone";
31        partOf = ["graphical-session.target"];
32        after = ["graphical-session.target"];
33        wantedBy = ["graphical-session.target"];
34        script = "${pkgs.kdePackages.kdeconnect-kde}/bin/kdeconnectd";
35        serviceConfig.Restart = "on-abort";
36      };
37    };
38  };
39}