nixos-config/modules/home-manager/zsh.nix

40 lines
1.2 KiB
Nix

{ pkgs, config, lib, ... }:
{
options.speccon18.hm.zsh.enable = lib.mkEnableOption "enables specs zsh config";
config = lib.mkIf config.speccon18.hm.zsh.enable {
programs.zsh = {
enable = lib.mkDefault true;
dotDir = ".config/zsh";
history = {
path = "$ZDOTDIR/.zsh_history";
save = 10000000;
};
autosuggestion.enable = lib.mkDefault true;
enableCompletion = lib.mkDefault true;
syntaxHighlighting.enable = lib.mkDefault true;
shellAliases = {
mo2 = "steam-run steamtinkerlaunch mo2 start";
ls = "eza --icons -alog --group-directories-first --no-permissions --no-time --total-size --git --header";
#grep = "rg";
osrb = "sudo nixos-rebuild $1 --flake ~/Documents/code/nix/nixos-config/#katana";
nvim-cfg = "nvim /home/speccon18/.config/nvim/";
edit-nix-cfg = "nvim --cmd 'cd /home/speccon18/Documents/code/nix/nixos-config' flake.nix";
cat = "bat";
};
localVariables = {
EDITOR = "nvim";
};
# This adds the atuin init line to your Zsh config
initContent = ''
eval "$(atuin init zsh)"
'';
};
};
}