module(fzf,eza): Enable shell integration if possible

This commit is contained in:
ulic-youthlic 2025-06-11 22:13:26 +08:00
parent ca4365b1d4
commit 9b4a5c89c2
Signed by: youthlic
GPG key ID: 63E86C3C14A0D721
2 changed files with 34 additions and 10 deletions

View file

@ -4,15 +4,29 @@
... ...
}: let }: let
cfg = config.youthlic.programs.eza; cfg = config.youthlic.programs.eza;
fish-cfg = config.youthlic.programs.fish;
bash-cfg = config.youthlic.programs.bash;
ion-cfg = config.youthlic.programs.ion;
in { in {
options = { options = {
youthlic.programs.eza = { youthlic.programs.eza = {
enable = lib.mkEnableOption "eza"; enable = lib.mkEnableOption "eza";
}; };
}; };
config = { config = lib.mkMerge [
programs.eza = lib.mkIf cfg.enable { (lib.mkIf cfg.enable {
enable = true; programs.eza = {
}; enable = true;
}; };
})
(lib.mkIf (cfg.enable && fish-cfg.enable) {
programs.eza.enableFishIntegration = true;
})
(lib.mkIf (cfg.enable && bash-cfg.enable) {
programs.eza.enableBashIntegration = true;
})
(lib.mkIf (cfg.enable && ion-cfg.enable) {
programs.eza.enableIonIntegration = true;
})
];
} }

View file

@ -4,15 +4,25 @@
... ...
}: let }: let
cfg = config.youthlic.programs.fzf; cfg = config.youthlic.programs.fzf;
fish-cfg = config.youthlic.programs.fish;
bash-cfg = config.youthlic.programs.bash;
in { in {
options = { options = {
youthlic.programs.fzf = { youthlic.programs.fzf = {
enable = lib.mkEnableOption "fzf"; enable = lib.mkEnableOption "fzf";
}; };
}; };
config = { config = lib.mkMerge [
programs.fzf = lib.mkIf cfg.enable { (lib.mkIf cfg.enable {
enable = true; programs.fzf = {
}; enable = true;
}; };
})
(lib.mkIf (cfg.enable && fish-cfg.enable) {
programs.fzf.enableFishIntegration = true;
})
(lib.mkIf (cfg.enable && bash-cfg.enable) {
programs.fzf.enableBashIntegration = true;
})
];
} }