summaryrefslogtreecommitdiff
path: root/home-manager
diff options
context:
space:
mode:
authortriethyl <triethylammonium@pm.me>2025-11-02 13:53:38 -0500
committertriethyl <triethylammonium@pm.me>2025-11-02 13:54:20 -0500
commit520313a733cd26dbd2692c2a8372aff1e1de657e (patch)
treea90ea9f6f2febbea36581504c637e83a3bf5a7f7 /home-manager
parent0457d18e24454663396cf054d8a16b1da635d99b (diff)
features: added calendar cli app
Diffstat (limited to 'home-manager')
-rw-r--r--home-manager/features/cli/apps/khal.nix52
-rw-r--r--home-manager/features/gui/apps/chromium.nix0
-rw-r--r--home-manager/features/gui/desktops/niri/parts/niri/keybinds.nix6
-rw-r--r--home-manager/features/gui/desktops/niri/parts/selectors.nix11
-rw-r--r--home-manager/features/gui/desktops/niri/parts/swayosd.nix10
-rw-r--r--home-manager/users/nzxt-desktop/culsans.nix1
-rw-r--r--home-manager/users/thinkpad-laptop/lucas.nix1
7 files changed, 64 insertions, 17 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
+ '';
+ };
+ };
+}
diff --git a/home-manager/features/gui/apps/chromium.nix b/home-manager/features/gui/apps/chromium.nix
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/home-manager/features/gui/apps/chromium.nix
diff --git a/home-manager/features/gui/desktops/niri/parts/niri/keybinds.nix b/home-manager/features/gui/desktops/niri/parts/niri/keybinds.nix
index 7a370f3..b5fbf86 100644
--- a/home-manager/features/gui/desktops/niri/parts/niri/keybinds.nix
+++ b/home-manager/features/gui/desktops/niri/parts/niri/keybinds.nix
@@ -3,7 +3,9 @@
pkgs,
lib,
...
-}: {
+}: let
+ defaultTerminal = config.default-applications.terminal-emulator;
+in {
config = lib.mkIf config.features.gui.desktops.niri.parts.niri.enable {
programs.niri.settings.binds = let
left = "h";
@@ -15,7 +17,7 @@
"Mod+Q".action.spawn = ["foot"];
"Mod+W".action.spawn = ["librewolf"];
"Mod+E".action.spawn = ["neovide"];
- "Mod+Shift+E".action.spawn = ["neovide" "--" "-c" "Calendar"];
+ "Mod+Shift+E".action.spawn = [ defaultTerminal.runTuiCommand "ikhal"];
"Mod+N".action.spawn = ["scrap-maker"];
# Reboot to gaming OS
diff --git a/home-manager/features/gui/desktops/niri/parts/selectors.nix b/home-manager/features/gui/desktops/niri/parts/selectors.nix
index dd09dde..8cfc087 100644
--- a/home-manager/features/gui/desktops/niri/parts/selectors.nix
+++ b/home-manager/features/gui/desktops/niri/parts/selectors.nix
@@ -6,6 +6,7 @@
}: let
cfg = config.features.gui.desktops.niri.parts.selectors;
aes = config.aesthetics;
+ defaultTerminal = config.default-applications.terminal-emulator;
in {
options.features.gui.desktops.niri.parts.selectors.enable = lib.mkEnableOption "selectors";
config = lib.mkIf cfg.enable {
@@ -25,20 +26,20 @@ in {
let tools = {
"rebuild nixos": {
# footclient -H sudo nixos-rebuild switch --flake ($"~/Sync/setup#(hostname)" | path expand)
- foot -H os-rebuild-loop
+ ${defaultTerminal.runCliCommand} os-rebuild-loop
}
"rebuild home": {
# foot -H home-manager switch --flake ($"~/Sync/setup#(whoami)@(hostname)" | path expand)
- foot -H home-rebuild-loop
+ ${defaultTerminal.runCliCommand} home-rebuild-loop
}
"update flake": {
- foot -H nix flake update --flake ($"~/Sync/setup/" | path expand)
+ ${defaultTerminal.runCliCommand} nix flake update --flake ($"~/Sync/setup/" | path expand)
}
"manage wifi": {
- foot ${pkgs.impala}/bin/impala
+ ${defaultTerminal.runTuiCommand} ${pkgs.impala}/bin/impala
}
"manage bluetooth": {
- foot ${lib.getExe pkgs.bluetui}
+ ${defaultTerminal.runTuiCommand} ${lib.getExe pkgs.bluetui}
}
"manage displays": {
${lib.getExe wdisplays}
diff --git a/home-manager/features/gui/desktops/niri/parts/swayosd.nix b/home-manager/features/gui/desktops/niri/parts/swayosd.nix
index 6cba218..e43b5b2 100644
--- a/home-manager/features/gui/desktops/niri/parts/swayosd.nix
+++ b/home-manager/features/gui/desktops/niri/parts/swayosd.nix
@@ -6,20 +6,10 @@
}: let
cfg = config.features.gui.desktops.niri.parts.swayosd;
aes = config.aesthetics;
-
- swayosd-patched = pkgs.swayosd.overrideAttrs (old: {
- postInstall = ''
- mkdir -p $out/share/dbus-1/services
- mv $out/share/dbus-1/system-services/org.erikreider.swayosd.service \
- $out/share/dbus-1/services/org.erikreider.swayosd.service
- rm -r $out/share/dbus-1/system*
- '';
- });
in {
options.features.gui.desktops.niri.parts.swayosd.enable = lib.mkEnableOption "swayosd";
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.swayosd ];
- dbus.packages = [ swayosd-patched ];
services.swayosd = {
enable = true;
topMargin = 0.5;
diff --git a/home-manager/users/nzxt-desktop/culsans.nix b/home-manager/users/nzxt-desktop/culsans.nix
index c80eb7c..9ac3cf8 100644
--- a/home-manager/users/nzxt-desktop/culsans.nix
+++ b/home-manager/users/nzxt-desktop/culsans.nix
@@ -47,6 +47,7 @@
helix.enable = true;
zellij.enable = true;
lazygit.enable = true;
+ khal.enable = true;
};
utils = {
git.enable = true;
diff --git a/home-manager/users/thinkpad-laptop/lucas.nix b/home-manager/users/thinkpad-laptop/lucas.nix
index 487555d..072bbc0 100644
--- a/home-manager/users/thinkpad-laptop/lucas.nix
+++ b/home-manager/users/thinkpad-laptop/lucas.nix
@@ -43,6 +43,7 @@
helix.enable = true;
zellij.enable = true;
lazygit.enable = true;
+ khal.enable = true;
};
utils = {
git.enable = true;