nixconf/home-manager/zsh.nix

38 lines
1 KiB
Nix

{ config, lib, pkgs, ... }:
{
programs.zsh = {
enable = true;
autocd = true;
dotDir = ".config/zsh";
autosuggestion.enable = true;
enableCompletion = true;
shellAliases = {
ls = "eza -lh";
ip = "ip --color=auto";
nano = "nvim";
# Aliases for my nixos workflow, requires nh and home-manager
switch = "sudo nixos-rebuild switch --flake ~/nixconf |& nom";
homeswitch = "home-manager switch --flake ~/nixconf |& nom";
serverswitch = "nixos-rebuild switch --flake ~/nixconf#biggerpi --target-host blue@biggerpi --use-remote-sudo |& nom";
};
plugins = with pkgs; [
{
name = "zsh-syntax-highlighting";
src = fetchFromGitHub {
owner = "zsh-users";
repo = "zsh-syntax-highlighting";
rev = "0.6.0";
sha256 = "0zmq66dzasmr5pwribyh4kbkk23jxbpdw4rjxx0i7dx8jjp2lzl4";
};
file = "agkozak-zsh-prompt.plugin.zsh";
}
];
oh-my-zsh = {
enable = true;
theme = "agnoster";
};
};
}