From 2e0f6163f61cb1e4195f1a08ad1148e57a4f5843 Mon Sep 17 00:00:00 2001 From: Arpit Chakladar Date: Sun, 2 Aug 2026 18:18:07 +0530 Subject: feat: Added package option to each module, darkman service - Added package options to each module which defines the package/derivation that should be used in all other modules - Added a systemd oneshot service that autosets darkman to dark mode - Removed the prompt from rofi --- modules/terminal/bat/default.nix | 8 ++++++-- modules/terminal/fzf/default.nix | 9 ++++++--- modules/terminal/kitty/default.nix | 9 ++++++--- modules/terminal/less/default.nix | 6 ++++++ modules/terminal/starship/default.nix | 6 ++++++ modules/terminal/tmux/default.nix | 9 ++++++--- modules/terminal/zsh/default.nix | 9 ++++++--- 7 files changed, 42 insertions(+), 14 deletions(-) (limited to 'modules/terminal') diff --git a/modules/terminal/bat/default.nix b/modules/terminal/bat/default.nix index 7dcf33c..2344c15 100644 --- a/modules/terminal/bat/default.nix +++ b/modules/terminal/bat/default.nix @@ -8,13 +8,17 @@ { options.terminal.bat = { enable = lib.mkEnableOption "Enables bat."; - package = lib.mkPackageOption pkgs "bat" { }; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.bat.package; + description = "The bat package to use."; + }; }; config = lib.mkIf config.terminal.bat.enable { programs.bat = { enable = true; - package = config.terminal.bat.package; config = { theme = "base16"; }; diff --git a/modules/terminal/fzf/default.nix b/modules/terminal/fzf/default.nix index c056446..5842db4 100644 --- a/modules/terminal/fzf/default.nix +++ b/modules/terminal/fzf/default.nix @@ -2,7 +2,6 @@ { config, lib, - pkgs, ... }: { @@ -10,7 +9,12 @@ options.terminal.fzf = { enable = lib.mkEnableOption "Enables fzf."; - package = lib.mkPackageOption pkgs "fzf" { }; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.fzf.package; + description = "The fzf package to use."; + }; }; config = @@ -22,7 +26,6 @@ lib.mkIf config.terminal.fzf.enable { programs.fzf = { enable = true; - package = config.terminal.fzf.package; defaultOptions = [ "--height 100%" "--layout=reverse" diff --git a/modules/terminal/kitty/default.nix b/modules/terminal/kitty/default.nix index 68824a9..f4d81ba 100644 --- a/modules/terminal/kitty/default.nix +++ b/modules/terminal/kitty/default.nix @@ -2,13 +2,17 @@ { config, lib, - pkgs, ... }: { options.terminal.kitty = { enable = lib.mkEnableOption "Enables kitty."; - package = lib.mkPackageOption pkgs "kitty" { }; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.kitty.package; + description = "The kitty package to use."; + }; }; config = lib.mkIf config.terminal.kitty.enable { @@ -18,7 +22,6 @@ programs.kitty = { enable = true; - package = config.terminal.kitty.package; extraConfig = '' # Keep normal clicks for selection and prompt placement; Ctrl+click opens links. mouse_map left click ungrabbed mouse_handle_click selection prompt diff --git a/modules/terminal/less/default.nix b/modules/terminal/less/default.nix index b2d2ac6..f68875c 100644 --- a/modules/terminal/less/default.nix +++ b/modules/terminal/less/default.nix @@ -3,6 +3,12 @@ { options.terminal.less = { enable = lib.mkEnableOption "Enables less."; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.less.package; + description = "The less package to use."; + }; }; config = lib.mkIf config.terminal.less.enable { diff --git a/modules/terminal/starship/default.nix b/modules/terminal/starship/default.nix index 7bcc8a0..86e8527 100644 --- a/modules/terminal/starship/default.nix +++ b/modules/terminal/starship/default.nix @@ -3,6 +3,12 @@ { options.terminal.starship = { enable = lib.mkEnableOption "Enables starship."; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.starship.package; + description = "The starship package to use."; + }; }; config = lib.mkIf config.terminal.starship.enable { diff --git a/modules/terminal/tmux/default.nix b/modules/terminal/tmux/default.nix index 22fba87..2e8d57d 100644 --- a/modules/terminal/tmux/default.nix +++ b/modules/terminal/tmux/default.nix @@ -2,19 +2,22 @@ { config, lib, - pkgs, ... }: { options.terminal.tmux = { enable = lib.mkEnableOption "Enables tmux."; - package = lib.mkPackageOption pkgs "tmux" { }; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.tmux.package; + description = "The tmux package to use."; + }; }; config = lib.mkIf config.terminal.tmux.enable { programs.tmux = { enable = true; - package = config.terminal.tmux.package; }; }; } diff --git a/modules/terminal/zsh/default.nix b/modules/terminal/zsh/default.nix index bd0fee6..d04ebb7 100644 --- a/modules/terminal/zsh/default.nix +++ b/modules/terminal/zsh/default.nix @@ -2,13 +2,17 @@ { config, lib, - pkgs, ... }: { options.terminal.zsh = { enable = lib.mkEnableOption "Enables zsh."; - package = lib.mkPackageOption pkgs "zsh" { }; + package = lib.mkOption { + type = lib.types.package; + readOnly = true; + default = config.programs.zsh.package; + description = "The zsh package to use."; + }; }; config = @@ -18,7 +22,6 @@ lib.mkIf config.terminal.zsh.enable { programs.zsh = { enable = true; - package = config.terminal.zsh.package; dotDir = "${config.xdg.configHome}/zsh"; history.path = "${config.xdg.cacheHome}/zsh/history"; enableCompletion = true; -- cgit v1.2.3