59 lines
1.4 KiB
Nix
59 lines
1.4 KiB
Nix
{ lib, pkgs, assets, ... }:
|
|
{
|
|
|
|
programs.zsh = {
|
|
enable = true;
|
|
defaultKeymap = lib.mkDefault "viins";
|
|
};
|
|
|
|
programs.bash = {
|
|
enable = true;
|
|
bashrcExtra = ''
|
|
set -o vi
|
|
'';
|
|
};
|
|
|
|
programs.thefuck.enable = true;
|
|
|
|
# a better cat
|
|
programs.bat = {
|
|
enable = true;
|
|
#config.theme = "gruvbox-light";
|
|
};
|
|
|
|
home.shellAliases.cat = "${pkgs.bat}/bin/bat --theme='gruvbox-light'";
|
|
home.shellAliases.llt = "${pkgs.eza}/bin/exa -a --tree";
|
|
|
|
# use z instead of cd
|
|
# use zi to fuzzy search through all registered directories
|
|
programs.zoxide = {
|
|
enable = true;
|
|
enableZshIntegration = true;
|
|
};
|
|
|
|
# provide better `Ctrl+r` command in terminal
|
|
programs.atuin = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
enableZshIntegration = true;
|
|
#package = pkgs.atuin;
|
|
package = pkgs.legacy_2405.atuin.overrideAttrs (_old: {
|
|
# as cursed as doing mitigations=off in the kernel command line
|
|
patches = [ "${assets}/0001-make-atuin-on-zfs-fast-again.patch" ];
|
|
});
|
|
settings = {
|
|
auto_sync = true;
|
|
sync_frequency = "5m";
|
|
sync_address = "http://chungus.private:8888";
|
|
search_mode = "fuzzy";
|
|
style = "full";
|
|
inline_height = 20;
|
|
keymap_mode = "vim-normal";
|
|
|
|
# With workspace filtering enabled, Atuin will filter for commands executed
|
|
# in any directory within a git repository tree.
|
|
workspaces = true;
|
|
|
|
};
|
|
};
|
|
}
|