Agent skill

nix-config

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/nix-config

SKILL.md

Nix Config

Declarative macOS environment at ~/nix-config. See the repo's CLAUDE.md for full architecture.

Adding Packages

CLI toolsusers/tengjizhang/home/packages.nix

nix
home.packages = with pkgs; [
  ripgrep
  jq
  # ...
];

GUI appsusers/tengjizhang/darwin.nix

nix
homebrew.casks = [ "raycast" "obsidian" ];

Third-party taps → Use full tap/cask path:

nix
homebrew.casks = [ "steipete/tap/codexbar" ];

Mac App Storeusers/tengjizhang/darwin.nix

nix
homebrew.masApps = { "Things" = 904280696; };

npm Package Pattern

For latest npm packages, use pnpm dlx wrapper:

nix
(writeShellScriptBin "toolname" ''
  exec ${pnpm}/bin/pnpm dlx @scope/package@latest "$@"
'')

Examples in packages.nix: claude, codex, gemini, gccli

Rebuild

bash
cd ~/nix-config && make switch > /tmp/nix-switch.log 2>&1 && echo "✓ Switch succeeded" || echo "✗ Switch failed (see /tmp/nix-switch.log)"

Workflow

  1. Edit the appropriate .nix file
  2. Commit changes (keeps git clean before rebuild)
  3. make switch to rebuild and activate
  4. Push changes

Key Files

  • flake.nix - Inputs/outputs, system definition
  • users/tengjizhang/home/packages.nix - CLI packages
  • users/tengjizhang/home/programs.nix - Program configs (git, neovim, etc.)
  • users/tengjizhang/darwin.nix - Homebrew, macOS settings

Didn't find tool you were looking for?

Be as detailed as possible for better results