From 7599d66c14db6af0abef1c8d51d6eae6f3c4a799 Mon Sep 17 00:00:00 2001 From: Typas Liao Date: Fri, 3 Jul 2026 01:58:09 +0800 Subject: [PATCH] feat(mac): provide fnm via nix instead of Homebrew fnm's install script falls back to `brew install` on macOS. Add fnm to home.packages so mac gets it from nix; the node recipe's `command -v fnm` guard then skips the installer on mac. Document the no-Homebrew rule. Co-Authored-By: Claude Opus 4.8 --- AGENTS.md | 4 ++++ nix/home/packages.nix | 3 +++ 2 files changed, 7 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index b0b3b57..0237f90 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -53,6 +53,10 @@ Fix the recipe and push a follow-up commit until all targets pass. The CI only checks that `just ` exits 0, not that the binary works. If the justfile target lacks a verification command (e.g., `emacs --version`), add one. +## macOS: never use Homebrew + +Mac tooling comes from nix (`nix/home/packages.nix`), never brew. If an installer brews on macOS (e.g. fnm), add the tool to nix and gate the installer behind `command -v `. + ## Command Chaining - `git commit` must always run alone — never chain it with other commands. diff --git a/nix/home/packages.nix b/nix/home/packages.nix index ec54d49..18375c5 100644 --- a/nix/home/packages.nix +++ b/nix/home/packages.nix @@ -36,5 +36,8 @@ # from init.sh + scripts/install-wezterm.sh just wezterm + + # from scripts/install-node.sh + fnm ]; }