diff options
| author | triethyl <triethylammonium@pm.me> | 2025-11-02 13:53:38 -0500 |
|---|---|---|
| committer | triethyl <triethylammonium@pm.me> | 2025-11-02 13:54:20 -0500 |
| commit | 520313a733cd26dbd2692c2a8372aff1e1de657e (patch) | |
| tree | a90ea9f6f2febbea36581504c637e83a3bf5a7f7 /home-manager/features/cli | |
| parent | 0457d18e24454663396cf054d8a16b1da635d99b (diff) | |
features: added calendar cli app
Diffstat (limited to 'home-manager/features/cli')
| -rw-r--r-- | home-manager/features/cli/apps/khal.nix | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/home-manager/features/cli/apps/khal.nix b/home-manager/features/cli/apps/khal.nix new file mode 100644 index 0000000..0f94499 --- /dev/null +++ b/home-manager/features/cli/apps/khal.nix @@ -0,0 +1,52 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.features.cli.apps.khal; + + mkCalendarPath = name: lib.concatStrings [ "~/Sync/.calendars/" name ]; +in { + options.features.cli.apps.khal.enable = lib.mkEnableOption "khal"; + config = lib.mkIf cfg.enable { + home.packages = [ pkgs.khal ]; + home.shellAliases = { + ka = "khal at"; + kc = "khal calendar"; + ke = "khal edit"; + ki = "khal interactive"; + kl = "khal list"; + kn = "khal new"; + kp = "khal printcalendars"; + ks = "khal search"; + }; + home.file."khal-config" = { + target = ".config/khal/config"; + text = '' + [default] + default_calendar = school + + [calendars] + [[personal]] + path = ${mkCalendarPath "personal"} + + [[school]] + path = ${mkCalendarPath "school"} + + [view] + frame = color + + [locale] + dateformat = %m/%d/%Y + datetimeformat = %m/%d/%Y %I:%M %p + firstweekday = 0 + longdateformat = %m/%d/%Y + longdatetimeformat = %m/%d/%Y %I:%M %p + timeformat = %I:%M %p + unicode_symbols = true + weeknumbers = off + ''; + }; + }; +} |
