nix: install CLI formulae from the flake profile
Neovide goes too, since its cask depends on the Homebrew neovim formula.

Assisted-by: Claude Opus 5.5 via Claude Code
change sruqvwrynvmswsrmvvlxtnwquzmyysvo
commit 101786e72688b22e7d38a2a23805bc1db005f240
author Alpha Chen <alpha@kejadlen.dev>
date
parent mpmwoprn
diff --git a/.config/neovide/config.toml b/.config/neovide/config.toml
deleted file mode 100644
index c11d39ad..00000000
--- a/.config/neovide/config.toml
+++ /dev/null
@@ -1 +0,0 @@
-neovim-bin = "/opt/homebrew/bin/nvim"
diff --git a/Brewfile b/Brewfile
index 75ed26d7..6f2e1ee9 100644
--- a/Brewfile
+++ b/Brewfile
@@ -6,11 +6,7 @@ brew "chruby"
 brew "curl"
 brew "docker"
 brew "dockutil"
-brew "dotslash"
-brew "entr"
-brew "eza"
 brew "ffmpeg"
-brew "git"
 brew "lua@5.4"
 brew "luarocks"
 brew "mas"
@@ -18,11 +14,9 @@ brew "restic"
 brew "ruby-install"
 brew "syncthing", restart_service: :changed
 brew "terraform"
-brew "tmux"
 brew "trurl"
 brew "ykman"
 brew "z3"
-brew "zsh"
 
 ## editor things
 
@@ -36,8 +30,6 @@ brew "yamllint"
 
 # install from head
 
-brew "tree-sitter", args: ["HEAD"] # install this before neovim
-brew "neovim", args: ["HEAD"]
 brew "universal-ctags", args: ["HEAD"] # don't remember why this is installing from head
 
 # install from taps
@@ -58,7 +50,6 @@ cask "ghostty"
 cask "glide-browser"
 cask "hammerspoon"
 cask "keyboardcleantool"
-cask "neovim-app"
 cask "obsidian"
 cask "orbstack"
 cask "sf-symbols"
diff --git a/README.md b/README.md
index b335da6b..542bc96b 100644
--- a/README.md
+++ b/README.md
@@ -35,6 +35,29 @@ Other non-automatable things:
 - [ ] MailMate
 - [ ] Syncthing
 
+## Packages from nix
+
+CLI tools without a DotSlash file in `bin/` come from the `profile`
+package in `flake.nix`. Homebrew still provides the GUI apps and the
+formulae that haven't moved to nix.
+
+`bootstrap.sh` doesn't install nix. On a new machine, install it with
+the [upstream installer][nix], then add the profile:
+
+[nix]: https://nixos.org/download/
+
+```sh
+nix profile add ~/.dotfiles#profile
+```
+
+After editing `flake.nix` or running `nix flake update`, apply the
+change with `nix profile upgrade profile`. `nix profile rollback`
+returns to the previous generation.
+
+The flake only sees files that git tracks, and new files in a jj change
+aren't in the git index until they're committed. Commit a new `.nix`
+file before the flake refers to it.
+
 ## Hammerspoon and Fennel
 
 Hammerspoon embeds Lua 5.4, but Homebrew's `lua` formula tracks the latest
diff --git a/docs/nix-migration.md b/docs/nix-migration.md
index 404d7718..5f3f5b3e 100644
--- a/docs/nix-migration.md
+++ b/docs/nix-migration.md
@@ -1,8 +1,8 @@
 # Moving the dotfiles to nix
 
 Status: `flake.nix` builds a package profile, and imperishable-night
-installs it for `alpha`. The Mac still uses its hand-installed
-`nix profile` entries (2026-11-05).
+installs it for `alpha`. The Mac installs it with `nix profile`, and its
+formulae are gone from the Brewfile (2026-11-05).
 
 This note records a plan to install packages with nix, so the dotfiles
 work on Linux hosts as well as the Mac. frork keeps creating the
@@ -133,7 +133,7 @@ packages.${system}.profile = pkgs.buildEnv {
 };
 ```
 
-With `nix profile`, install it once with `nix profile install .#profile`,
+With `nix profile`, install it once with `nix profile add .#profile`,
 then run `nix profile upgrade profile` after each edit.
 
 Every option except home-manager leaves frork and syncthing to a wrapper