1
0
mirror of https://github.com/kmein/niveum synced 2026-03-16 18:21:07 +01:00
Files
niveum/modules/todoist.nix
2019-07-03 22:12:40 +02:00

33 lines
868 B
Nix

{ pkgs, config, lib, ... }:
with lib;
let
cfg = config.niveum.todoist;
todoist = pkgs.unstable.callPackage <packages/todoist.nix> {};
in {
options.niveum.todoist = {
enable = mkEnableOption "todoist CLI";
token = mkOption { type = types.strMatching "[0-9a-f]+"; };
color = mkOption { type = types.bool; default = true; };
};
config = {
environment.systemPackages = mkIf cfg.enable [
(pkgs.writers.writeDashBin "todoist" ''
${todoist}/bin/todoist $@
'')
];
home-manager.users.me.home.file.".todoist.config.json".text = mkIf cfg.enable (builtins.toJSON {
token = cfg.token;
color = cfg.color;
});
systemd.user.services.todoist-sync = {
enable = cfg.enable;
after = [ "network-online.target" ];
startAt = "*:0/5";
script = ''${todoist}/bin/todoist sync'';
};
};
}