69 lines
2.2 KiB
Nix
69 lines
2.2 KiB
Nix
{ config, pkgs, lib, ... }:
|
||
|
||
{
|
||
programs.zsh = {
|
||
enable = true;
|
||
enableCompletion = true;
|
||
|
||
syntaxHighlighting.enable = true;
|
||
autosuggestion.enable = true;
|
||
|
||
initContent = ''
|
||
# Powerlevel10k
|
||
source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme
|
||
[[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh
|
||
'';
|
||
|
||
shellAliases = {
|
||
# Defaults – hosts may override
|
||
ls = lib.mkDefault "lsd --color=auto";
|
||
ll = lib.mkDefault "lsd -lah --color=auto";
|
||
".." = lib.mkDefault "cd ../";
|
||
v = lib.mkDefault "nvim .";
|
||
c = lib.mkDefault "clear";
|
||
z = lib.mkDefault "zoxide";
|
||
op = lib.mkDefault "opencode .";
|
||
ff = lib.mkDefault "fastfetch";
|
||
gs = lib.mkDefault "git status";
|
||
gc = lib.mkDefault "git commit -m";
|
||
gp = lib.mkDefault "git push -u origin";
|
||
tsm = lib.mkDefault "tmux-session-manager";
|
||
# rgi = lib.mkDefault ''
|
||
# rg --color=always --line-number --no-heading --smart-case . |
|
||
# fzf --ansi --delimiter : \
|
||
# --preview "bat --style=full --color=always --highlight-line {2} {1}" \
|
||
# --preview-window "~4,+{2}+4/3,<80(up)"
|
||
# '';
|
||
rgi = lib.mkDefault ''
|
||
rg --color=always --line-number --no-heading --smart-case . |
|
||
fzf --ansi --delimiter : \
|
||
--preview "bat --style=full --color=always --highlight-line {2} {1}" \
|
||
--preview-window "~4,+{2}+4/3,<80(up)" \
|
||
--bind "enter:become(nvim +{2} {1})"
|
||
'';
|
||
hmr = lib.mkDefault "sudo nixos-rebuild switch --flake .#$(hostname)";
|
||
snr = lib.mkDefault "sudo nixos-rebuild switch --flake .";
|
||
ncg = "nix-collect-garbage --delete-old && sudo nix-collect-garbage -d && sudo /run/current-system/bin/switch-to-configuration boot";
|
||
reload = lib.mkDefault "exec zsh";
|
||
};
|
||
};
|
||
|
||
################################
|
||
# Fonts (for p10k icons)
|
||
################################
|
||
fonts.fontconfig.enable = true;
|
||
|
||
################################
|
||
# Packages
|
||
################################
|
||
home.packages = with pkgs; [
|
||
nerd-fonts.fira-code
|
||
nerd-fonts.hack
|
||
nerd-fonts.jetbrains-mono
|
||
|
||
zsh-powerlevel10k
|
||
zsh-autosuggestions
|
||
zsh-syntax-highlighting
|
||
];
|
||
}
|