0
0
Fork 0
flake/home/modules/cli/shell.nix
2025-01-02 17:26:51 -08:00

93 lines
2 KiB
Nix

{lib, ...}: {
programs.htop.enable = true;
programs.btop.enable = true;
programs.fastfetch.enable = true;
programs.eza.enable = true;
programs.eza.git = true;
programs.eza.icons = "auto";
programs.ripgrep.enable = true;
programs.bat.enable = true;
programs.fish = {
enable = true;
shellAliases = {
ls = "eza -laghHUum@ --sort name --group-directories-first --git --icons";
tree = "eza -laghHUumRT@ --sort name --group-directories-first --git --icons";
nixos-rebuild = "sudo nixos-rebuild --flake ~/git/flake#wahnix";
};
};
programs.starship = {
enable = true;
enableFishIntegration = true;
enableTransience = true;
settings = {
add_newline = true;
format = lib.concatStrings ["$username@$hostname" " " "$directory" " " "$all$character"];
right_format = "$cmd_duration";
directory = {
format = "[$path]($style)[$read_only]($read_only_style)";
read_only = " 🔒";
};
hostname = {
ssh_only = false;
format = "[$hostname]($style)";
};
username = {
show_always = true;
format = "[$user]($style)";
};
shell = {
disabled = false;
};
status = {
disabled = false;
};
};
};
programs.atuin = {
enable = true;
daemon.enable = true;
settings = {
dialect = "us";
timezone = "local";
auto_sync = true;
update_check = false;
sync_address = "https://atuin.relms.dev";
sync_frequency = "10m";
filter_mode = "workspace";
workspaces = true;
style = "auto";
show_preview = true;
show_help = true;
show_tabs = true;
enter_accept = false;
keymap_mode = "vim-normal";
};
};
catppuccin = {
fish = {
enable = true;
flavor = "mocha";
};
starship = {
enable = true;
flavor = "mocha";
};
btop = {
enable = true;
flavor = "mocha";
};
bat = {
enable = true;
flavor = "mocha";
};
};
}