50 lines
1.4 KiB
Nix
50 lines
1.4 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
let
|
|
base = (home: {
|
|
programs = {
|
|
zsh = {
|
|
enable = true;
|
|
dotDir = ".config/zsh";
|
|
history = {
|
|
expireDuplicatesFirst = true;
|
|
};
|
|
shellGlobalAliases = {
|
|
ls = "exa -lh";
|
|
cat = "bat";
|
|
};
|
|
plugins = [
|
|
{
|
|
name = "zsh-autosuggestions";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "zsh-users";
|
|
repo = "zsh-autosuggestions";
|
|
rev = "v0.4.0";
|
|
sha256 = "0z6i9wjjklb4lvr7zjhbphibsyx51psv50gm07mbb0kj9058j6kc";
|
|
};
|
|
}
|
|
{
|
|
name = "zsh-syntax-highlighting";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "zsh-users";
|
|
repo = "zsh-syntax-highlighting";
|
|
rev = "0e1bb14452e3fc66dcc81531212e1061e02c1a61";
|
|
sha256 = "09ncmyqlk9a3h470z0wgbkrznb5zyc9dj96011wm89rdxc1irxk2";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
exa.enable = true;
|
|
bat.enable = true;
|
|
|
|
starship = {
|
|
enable = true;
|
|
enableZshIntegration = true;
|
|
};
|
|
};
|
|
});
|
|
in
|
|
{
|
|
home-manager.users.moritz = {...}: (base "/home/moritz");
|
|
}
|