vuls: init at 0.27.0
[NixPkgs.git] / nixos / modules / services / networking / jotta-cli.nix
blob566e7fc503a6d154b7e1f4b87267c6f39f411cbb
1 { config, lib, pkgs, ... }:
2 let cfg = config.services.jotta-cli;
3 in {
4   options = {
5     services.jotta-cli = {
7       enable = lib.mkEnableOption "Jottacloud Command-line Tool";
9       options = lib.mkOption {
10         default = [ "stdoutlog" "datadir" "%h/.jottad/" ];
11         example = [ ];
12         type = with lib.types; listOf str;
13         description = "Command-line options passed to jottad.";
14       };
16       package = lib.mkPackageOption pkgs "jotta-cli" { };
17     };
18   };
19   config = lib.mkIf cfg.enable {
20     systemd.user.services.jottad = {
22       description = "Jottacloud Command-line Tool daemon";
24       serviceConfig = {
25         Type = "notify";
26         EnvironmentFile = "-%h/.config/jotta-cli/jotta-cli.env";
27         ExecStart = "${lib.getExe' cfg.package "jottad"} ${lib.concatStringsSep " " cfg.options}";
28         Restart = "on-failure";
29       };
31       wantedBy = [ "default.target" ];
32       wants = [ "network-online.target" ];
33       after = [ "network-online.target" ];
34     };
35     environment.systemPackages = [ pkgs.jotta-cli ];
36   };
38   meta.maintainers = with lib.maintainers; [ evenbrenden ];
39   meta.doc = ./jotta-cli.md;