
· 2 min read
Running NVM on a Dev Drive with an ARM Device
There’s nothing quite like the feel of a new device 🚀. I recently got myself a Surface Laptop, and it’s been a great experience so far. It’s fast, lightweight, and the battery life easily holds out through the day. Naturally, I wanted to get my dev setup just right, including a clean Dev Drive configuration from the get-go.
First stop: Dev Drive. If you haven’t set this up before, I highly recommend it. It’s optimized for performance, and the process went smoothly. I have been playing with it before, but finally made the switch for everything I still develop on this device. Once I had the volume ready, I started pointing key developer folders to it, including the global npm cache.
Installing NVM was next. I reached for winget install -e --id CoreyButler.NVMforWindows. But there I got stuck. The installation went fine, however you have no control over where it installs. Since I just had setup the dev drive, I wanted to make sure everything was on there. I removed it and reinstalled manually to ensure it lived on the Dev Drive.
From there, setting up the npm cache was straightforward. If you’re doing this yourself, just run:
setx /M npm_config_cache D:\packages\npm
NVM on an ARM device
I figured I was done, but got stuck a few days later. My default nvm install lts and nvm use lts steps didn’t work as expected. The root cause? This Surface Laptop is ARM-based, and using the normal flags, the NVM installation did not recognize my ARM architecture.
To fix it, I reinstalled using the correct architecture:
nvm install lts arm64
nvm use lts arm64
From there, everything worked as expected. It’s a small adjustment, but one that can easily be overlooked, and it took me a few hours before figuring out why my npm i commands where causing me grief on repo’s that where working fine just a few days ago. So if you’re on an ARM device, make sure to specify the correct architecture in your NVM commands, or you’ll spend unnecessary time troubleshooting.

Albert-Jan Schot
CTO, Microsoft MVP & FastTrack Recognized Solution Architect
I am Albert-Jan Schot, CTO at Blis Digital, Microsoft MVP, and FastTrack Recognized Solution Architect focused on Microsoft 365, Azure, and AI agents. I help teams turn complex Microsoft Cloud challenges into practical architecture decisions and shipped outcomes.
Zuid Holland, Netherlands


