refactor shell config

This commit is contained in:
ulic-youthlic 2025-05-03 20:40:22 +08:00
parent aa062722d5
commit 385bfedd8f
Signed by: youthlic
GPG key ID: 63E86C3C14A0D721
9 changed files with 139 additions and 78 deletions

View file

@ -0,0 +1,35 @@
{
config,
lib,
...
}: let
cfg = config.youthlic.programs.fish;
in {
options = {
youthlic.programs.fish = {
enable = lib.mkEnableOption "fish";
};
};
config = lib.mkIf cfg.enable {
programs = {
fish = {
enable = true;
interactiveShellInit = ''
fish_vi_key_bindings
'';
functions = {
__fish_command_not_found_handler = {
body = "__fish_default_command_not_found_handler $argv[1]";
onEvent = "fish_command_not_found";
};
fish_greeting = {
body = ''
fastfetch
'';
};
};
};
fastfetch.enable = true;
};
};
}