nix-configuration/devices/lcech-mac-veracode.nix
2025-01-05 23:51:55 +01:00

150 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" = {
source = ''
theme = "catppuccin-mocha";
font-size = 10;
'';
};
};
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>