152 lines
2.4 KiB
Nix
152 lines
2.4 KiB
Nix
{
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
username = "lcech";
|
|
homedir = "/Users/${username}";
|
|
|
|
zshSourceDirs = [];
|
|
in
|
|
{
|
|
home.username = username;
|
|
|
|
home.homeDirectory = homedir;
|
|
|
|
home.stateVersion = "24.11";
|
|
|
|
home.packages = with pkgs; [
|
|
awscli2
|
|
k9s
|
|
kubectl
|
|
nixd
|
|
pstree
|
|
watch
|
|
];
|
|
|
|
# ghostty marked as broken as of 2025-01-05 in nix, using homebrew and custom config
|
|
home.file = {
|
|
"${homedir}/Library/Application Support/com.mitchellh.ghostty/config" = {
|
|
text = ''
|
|
theme = "catppuccin-mocha"
|
|
font-size = 14
|
|
window-width = 9999
|
|
window-height = 9999
|
|
'';
|
|
};
|
|
};
|
|
|
|
programs.direnv = {
|
|
enable = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
|
|
programs.git = {
|
|
enable = true;
|
|
userName = "Lukas Cech";
|
|
userEmail = "lcech@veracode.com";
|
|
|
|
ignores = [
|
|
".vscode"
|
|
".direnv"
|
|
".devenv"
|
|
".envrc"
|
|
];
|
|
|
|
extraConfig = {
|
|
core = {
|
|
autocrlf = "input";
|
|
editor = "vim";
|
|
};
|
|
|
|
pull.rebase = false;
|
|
|
|
init.defaultBranch = "main";
|
|
};
|
|
};
|
|
|
|
programs.zsh = {
|
|
enable = true;
|
|
|
|
dirHashes = {
|
|
mac = "${homedir}/storage/.macshare";
|
|
nix = "${homedir}/.config/nix";
|
|
};
|
|
|
|
initExtra = ''
|
|
${builtins.concatStringsSep "\n" (
|
|
builtins.map (dir: ''
|
|
for file in ${dir}/*.zsh; do
|
|
source "$file"
|
|
done
|
|
'') zshSourceDirs
|
|
)}
|
|
|
|
autoload -U +X bashcompinit && bashcompinit
|
|
|
|
source <(kubectl completion zsh)
|
|
complete -C '/usr/local/bin/aws_completer' aws
|
|
'';
|
|
};
|
|
|
|
home.sessionVariables = {
|
|
EDITOR = "vim";
|
|
GO111MODULE = "on";
|
|
TERMINAL = "ghostty";
|
|
};
|
|
}
|
|
|
|
# TODO: launchd timers
|
|
|
|
# <?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
# <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
|
|
|
|
# "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
|
|
# <plist version="1.0">
|
|
|
|
# <dict>
|
|
|
|
# <key>Label</key>
|
|
|
|
# <string>com.example.happybirthday</string>
|
|
|
|
# <key>ProgramArguments</key>
|
|
|
|
# <array>
|
|
|
|
# <string>happybirthday</string>
|
|
|
|
# </array>
|
|
|
|
# <key>StartCalendarInterval</key>
|
|
|
|
# <dict>
|
|
|
|
# <key>Day</key>
|
|
|
|
# <integer>11</integer>
|
|
|
|
# <key>Hour</key>
|
|
|
|
# <integer>0</integer>
|
|
|
|
# <key>Minute</key>
|
|
|
|
# <integer>0</integer>
|
|
|
|
# <key>Month</key>
|
|
|
|
# <integer>7</integer>
|
|
|
|
# <key>Weekday</key>
|
|
|
|
# <integer>0</integer>
|
|
|
|
# </dict>
|
|
|
|
# </dict>
|
|
|
|
# </plist>
|