Local Installations
Local installations let NVM for Windows install Node.js from archives already on disk instead of (or before) contacting a download mirror. Use this for air-gapped hosts, shared lab mirrors, or any environment where outbound downloads are blocked or undesirable.
This differs from the ordinary download cache: local_dir replaces .cache/versions as the archive root for installs. With local_install_only, a miss never falls back to the network.
Settings
| Option | Registry | Default | Effect |
|---|---|---|---|
local_dir | LocalInstallDir | (unset) | Directory of Node.js .7z archives used as the install source |
local_install_only | LocalInstallOnly | false | Install only from that local source; fail if the archive is missing |
Both are overridable preferences (often set by machine policy on certified fleets). They are hidden from everyday nvm config docs output, but still work with nvm config:
nvm config set local_dir=D:\node-archives
nvm config set local_install_only=true
nvm config get local_dir local_install_only
Enterprise deployments usually lock these under Administrative Templates / registry policy so every machine shares the same archive share. See LocalInstallDir / LocalInstallOnly.
Archive layout
Place official Windows Node.js archives in local_dir (or the default version cache if you are not using local_dir):
D:\node-archives\
node-v24.11.0-win-x64.7z
SHASUMS256-v24.11.0-win-x64.txt # optional but recommended offline
node-v22.20.0-win-x64.7z
SHASUMS256-v22.20.0-win-x64.txt
- Archive name:
node-v{version}-win-{x64|arm64}.7z(arch matches the machine). - Optional SHASUM file beside the archive:
SHASUMS256-v{version}-win-{arch}.txt.
On a connected machine you can populate a folder with nvm cache add and copy .cache/versions (or set that path as local_dir on the offline host).
Install flow
nvm install 24.11.0
- Look for
node-v24.11.0-win-*.7zunderlocal_dir(or.cache/versionswhenlocal_diris unset). - Run integrity checks (verify-cache, local SHASUM, trusted policy path, or live mirror SHASUM when online).
- If found and valid → extract and install.
- If missing and
local_install_only=true→ fail withnot found in local install directory(no download). - If missing and local-only is off → download from configured mirrors as usual.
Machine policy with both LocalInstallOnly and LocalInstallDir set treats archives under that directory as a trusted local source for integrity when offline (archives still must sit under the configured root).
For end-to-end offline steps (prefetch → media/share → configure → install), see Air-gapped Installations.
Related
- Air-gapped Installations — step-by-step offline workflow
- Download Cache — default
.cache/versionsstore and--cache/cache_downloads nvm install— install flags and local-source notes- Registry policy —
LocalInstallDir,LocalInstallOnly
air_gappedThe separate air_gapped preference controls offline license/JWKS behavior for Author mirrors. It does not by itself redirect Node.js installs to a local archive folder — use local_dir / local_install_only for that.