Skip to content

Commit 64d9bab

Browse files
committed
fix: fnm windows path
1 parent bed041f commit 64d9bab

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed

src/targets/node/nvmResolver.ts

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ const enum Vars {
3636
NvsHome = 'NVS_HOME',
3737
WindowsNvmHome = 'NVM_HOME',
3838
UnixNvmHome = 'NVM_DIR',
39-
UnixFnmHome = 'FNM_DIR',
39+
FnmHome = 'FNM_DIR',
4040
}
4141

4242
@injectable()
@@ -92,8 +92,8 @@ export class NvmResolver implements INvmResolver {
9292
if (!directory) {
9393
const fnmDir =
9494
this.platform === 'win32'
95-
? path.join(this.env['APPDATA'] || '', 'fnm')
96-
: this.env[Vars.UnixFnmHome] || path.join(this.homedir, '.fnm');
95+
? this.env[Vars.FnmHome] || path.join(this.env['APPDATA'] || '', 'fnm')
96+
: this.env[Vars.FnmHome] || path.join(this.homedir, '.fnm');
9797
if (await this.fsUtils.exists(fnmDir)) {
9898
directory = await this.resolveFnm(version, fnmDir);
9999
versionManagers.push('fnm');
@@ -164,15 +164,6 @@ export class NvmResolver implements INvmResolver {
164164
return directory ? path.join(directory, 'bin') : undefined;
165165
}
166166

167-
private async resolveFnm(version: string, fnmHome: string) {
168-
const directory = this.findBinFolderForVersion(
169-
path.join(fnmHome, 'node-versions'),
170-
`v${version}`,
171-
);
172-
173-
return directory ? path.join(directory, 'installation', 'bin') : undefined;
174-
}
175-
176167
private async resolveWindowsNvm(version: string) {
177168
const nvmHome = this.env[Vars.WindowsNvmHome];
178169
if (!nvmHome) {
@@ -182,6 +173,19 @@ export class NvmResolver implements INvmResolver {
182173
return this.findBinFolderForVersion(nvmHome, `v${version}`);
183174
}
184175

176+
private async resolveFnm(version: string, fnmHome: string) {
177+
const directory = this.findBinFolderForVersion(
178+
path.join(fnmHome, 'node-versions'),
179+
`v${version}`,
180+
);
181+
182+
if (!directory) return;
183+
184+
return this.platform === 'win32'
185+
? path.join(directory, 'installation')
186+
: path.join(directory, 'installation', 'bin');
187+
}
188+
185189
private findBinFolderForVersion(
186190
dir: string,
187191
version: string,

0 commit comments

Comments
 (0)