1{ config, pkgs, lib, ... }:
2let
3 cfg = config.services.netclient;
4in
5{
6 meta.maintainers = with lib.maintainers; [ wexder ];
7
8 options.services.netclient = {
9 enable = lib.mkEnableOption "Netclient Daemon";
10 package = lib.mkPackageOption pkgs "netclient" { };
11 };
12
13 config = lib.mkIf cfg.enable {
14 environment.systemPackages = [ cfg.package ];
15 systemd.services.netclient = {
16 wantedBy = [ "multi-user.target" ];
17 after = [ "network-online.target" ];
18 description = "Netclient Daemon";
19 serviceConfig = {
20 Type = "simple";
21 ExecStart = "${lib.getExe cfg.package} daemon";
22 Restart = "on-failure";
23 RestartSec = "15s";
24 };
25 };
26 };
27}