configuration.nix/home/programs/zsh.nix

42 lines
1 KiB
Nix
Raw Normal View History

2023-11-04 16:12:45 +05:30
{ config
, pkgs
, ...
2024-01-04 21:51:11 +05:30
}:
let
gnome-keyring-daemon = "${pkgs.gnome.gnome-keyring}/bin/gnome-keyring-daemon";
hyprland = "${config.wayland.windowManager.hyprland.finalPackage}/bin/Hyprland";
in
{
2023-04-07 19:09:05 +05:30
programs.zsh = {
enable = true;
defaultKeymap = "viins";
enableAutosuggestions = true;
enableCompletion = true;
2023-07-01 11:49:27 +05:30
syntaxHighlighting.enable = true;
2023-04-07 19:09:05 +05:30
history = {
expireDuplicatesFirst = true;
extended = true;
path = "${config.xdg.dataHome}/zsh/zsh_history";
};
initExtra = ''
bindkey -v '^?' backward-delete-char
2024-01-04 21:51:11 +05:30
eval $(${gnome-keyring-daemon} -s -d 2> /dev/null)
export SSH_AUTH_SOCK
2023-04-07 19:09:05 +05:30
'';
profileExtra = ''
if [ -z $DISPLAY ] && [ "$(tty)" = "/dev/tty1" ] ; then
2024-01-04 21:51:11 +05:30
exec ${hyprland}
fi
'';
2023-04-07 19:09:05 +05:30
shellAliases = {
2023-08-05 10:55:31 +05:30
cat = "${pkgs.bat}/bin/bat";
2023-04-07 19:09:05 +05:30
cp = "cp -v";
grep = "grep --color=auto";
ln = "ln -v";
mv = "mv -v";
2024-01-04 21:51:29 +05:30
rebuild_system = "sudo nixos-rebuild --flake /persist/home/.config/nixos#Skipper --cores 0";
2023-04-07 19:09:05 +05:30
};
};
}