dots/modules/hosts/darwin/home.nix
Gene Liverman 9b3c078319
Add linting, formatting, and CI with fixes for all warnings
Infrastructure:
- Add deadnix, nixfmt, and statix to flake inputs
- Add formatter output to flake for nix fmt support
- Add deadnix, nixfmt, statix to Home Manager packages
- Add GitHub Actions workflow for CI validation
- Add .pre-commit-config.yaml with hooks for nixfmt, deadnix, and statix
- Support x86_64-darwin in formatter

Statix fixes (W10/W20 warnings):
- Remove unused lambda argument from nixpkgs-settings.nix
- Merge repeated keys in hardware-configuration.nix files (boot.initrd, boot, fileSystems)
- Merge repeated keys in nixnuc/default.nix (services, virtualisation)
- Merge repeated keys in rainbow-planet/default.nix (desktopManager)
- Merge repeated keys in home/general/default.nix (home)

Deadnix fixes (unused declarations):
- Remove unused pkgs/lib/username/http_port arguments from various files
- Fix unused final parameter in overlay functions (final -> _final)

CI/pre-commit fixes:
- Fix pre-commit statix config: add pass_filenames: false
- Fix CI workflow: use nix run nixpkgs# prefix and --ci flag for nixfmt
2026-03-20 22:29:46 -04:00

35 lines
1.4 KiB
Nix

{ username, ... }:
{
# dawrwin-specific shell config
programs = {
zsh = {
initContent = ''
function otpon() {
osascript -e 'tell application "yubiswitch" to KeyOn'
}
function otpoff() {
osascript -e 'tell application "yubiswitch" to KeyOff'
}
# Include Puppet's normal bin folder since it is installed via Homebrew
export PATH=$PATH:/opt/puppetlabs/bin
export PATH=$PATH:/opt/puppetlabs/pdk/bin
export PATH=$PATH:/opt/puppetlabs/puppet/bin
# Podman installer pkg for the cli places podman here
export PATH=/opt/podman/bin:$PATH
'';
oh-my-zsh.plugins = [ "macos" ];
shellAliases = {
currentwifi = "networksetup -getairportnetwork en0 |cut -d ':' -f2- | cut -d ' ' -f2-";
nixdiff = "brew outdated && brew outdated --cask && mas outdated && cd ~/repos/dots && sudo darwin-rebuild build --flake . && nvd diff /run/current-system result";
nixup = "sudo darwin-rebuild switch --flake ~/repos/dots";
uwgconnect = "networksetup -setairportnetwork en0 SecureWest";
uwgforget = "networksetup -removepreferredwirelessnetwork en0 SecureWest";
ykey = "pkill -9 gpg-agent && source ~/.zshrc; ssh-add -L";
};
};
};
sops.age.keyFile = "/Users/${username}/Library/Application Support/sops/age/keys.txt";
}