Skip to main content

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​

OptionRegistryDefaultEffect
local_dirLocalInstallDir(unset)Directory of Node.js .7z archives used as the install source
local_install_onlyLocalInstallOnlyfalseInstall 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
Policy

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
  1. Look for node-v24.11.0-win-*.7z under local_dir (or .cache/versions when local_dir is unset).
  2. Run integrity checks (verify-cache, local SHASUM, trusted policy path, or live mirror SHASUM when online).
  3. If found and valid → extract and install.
  4. If missing and local_install_only=true → fail with not found in local install directory (no download).
  5. 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.

air_gapped

The 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.