From cf351071fb4aac4add29ed6a88cc75a8c2865b5e Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Sun, 27 Apr 2025 21:23:08 -0500 Subject: [PATCH] lsd: enableAliases -> enableShellIntegration Allow granular control of alias creation utilizing our shell integration options. --- modules/programs/lsd.nix | 33 ++++++++++++------- .../modules/programs/lsd/example-settings.nix | 1 - 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/modules/programs/lsd.nix b/modules/programs/lsd.nix index 42bde53f..87d50dda 100644 --- a/modules/programs/lsd.nix +++ b/modules/programs/lsd.nix @@ -19,21 +19,30 @@ let lla = "${pkgs.lsd}/bin/lsd -lA"; llt = "${pkgs.lsd}/bin/lsd -l --tree"; }; - in { + imports = + let + msg = '' + 'programs.lsd.enableAliases' has been deprecated and replaced with integration + options per shell, for example, 'programs.lsd.enableBashIntegration'. + + Note, the default for these options is 'true' so if you want to enable the + aliases you can simply remove 'programs.lsd.enableAliases' from your + configuration.''; + in + [ (lib.mkRemovedOptionModule [ "programs" "lsd" "enableAliases" ] msg) ]; + meta.maintainers = [ ]; options.programs.lsd = { enable = lib.mkEnableOption "lsd"; - enableAliases = lib.mkOption { - default = false; - type = lib.types.bool; - description = '' - Whether to enable recommended lsd aliases. - ''; - }; + enableBashIntegration = lib.hm.shell.mkBashIntegrationOption { inherit config; }; + + enableFishIntegration = lib.hm.shell.mkFishIntegrationOption { inherit config; }; + + enableZshIntegration = lib.hm.shell.mkZshIntegrationOption { inherit config; }; settings = lib.mkOption { type = yamlFormat.type; @@ -101,17 +110,17 @@ in config = lib.mkIf cfg.enable { home.packages = [ pkgs.lsd ]; - programs.bash.shellAliases = lib.mkIf cfg.enableAliases aliases; + programs.bash.shellAliases = lib.mkIf cfg.enableBashIntegration aliases; - programs.zsh.shellAliases = lib.mkIf cfg.enableAliases aliases; + programs.zsh.shellAliases = lib.mkIf cfg.enableZshIntegration aliases; programs.fish = lib.mkMerge [ (lib.mkIf (!config.programs.fish.preferAbbrs) { - shellAliases = lib.mkIf cfg.enableAliases aliases; + shellAliases = lib.mkIf cfg.enableFishIntegration aliases; }) (lib.mkIf config.programs.fish.preferAbbrs { - shellAbbrs = lib.mkIf cfg.enableAliases aliases; + shellAbbrs = lib.mkIf cfg.enableFishIntegration aliases; }) ]; diff --git a/tests/modules/programs/lsd/example-settings.nix b/tests/modules/programs/lsd/example-settings.nix index 223928f6..85f5d704 100644 --- a/tests/modules/programs/lsd/example-settings.nix +++ b/tests/modules/programs/lsd/example-settings.nix @@ -1,7 +1,6 @@ { programs.lsd = { enable = true; - enableAliases = false; settings = { date = "relative"; blocks = [