Docs: Package-manager installs silently ship without auto-switch
Problem
fnm can be installed via multiple package managers: Homebrew, Winget, Scoop, Chocolatey, Cargo, or binary download. The README proudly lists them all. However, the README does not document that every install method except the official install script ships without shell integration — meaning fnm use runs but the shell's PATH never updates to reflect the switched version.
Concrete failure mode:
- User installs fnm via Scoop:
scoop install fnm
- Creates
.nvmrc with 22
- Opens a new terminal, runs
fnm use — succeeds with no error
- Runs
node --version → shows the system Node, not 22
The fix (running fnm env | Out-String | Invoke-Expression in PowerShell profile, or eval "$(fnm env)" in .bashrc) is documented in the Shell Setup page — but the install instructions don't link there, and many users complete the install without ever reading Shell Setup.
Proposed fix
Add a prominent callout to each package-manager install section:
Required: shell integration. After installing, you must add fnm env evaluation to your shell profile, or auto-switching will not work. See Shell Setup.
Also: the README's feature blurb "Works with .nvmrc" should be qualified as "Works with .nvmrc after shell setup is complete."
Environment
- OS: Windows 11 Enterprise
- Shell: PowerShell 7.x and Git Bash
- fnm: installed via Scoop
- Node.js not switching despite
.nvmrc present
Docs: Package-manager installs silently ship without auto-switch
Problem
fnm can be installed via multiple package managers: Homebrew, Winget, Scoop, Chocolatey, Cargo, or binary download. The README proudly lists them all. However, the README does not document that every install method except the official install script ships without shell integration — meaning
fnm useruns but the shell'sPATHnever updates to reflect the switched version.Concrete failure mode:
scoop install fnm.nvmrcwith22fnm use— succeeds with no errornode --version→ shows the system Node, not 22The fix (running
fnm env | Out-String | Invoke-Expressionin PowerShell profile, oreval "$(fnm env)"in.bashrc) is documented in the Shell Setup page — but the install instructions don't link there, and many users complete the install without ever reading Shell Setup.Proposed fix
Add a prominent callout to each package-manager install section:
Also: the README's feature blurb "Works with
.nvmrc" should be qualified as "Works with.nvmrcafter shell setup is complete."Environment
.nvmrcpresent