Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Process created using pkg returns the wrong path #30

Open
MorCohenAres opened this issue Sep 1, 2022 · 0 comments
Open

Process created using pkg returns the wrong path #30

MorCohenAres opened this issue Sep 1, 2022 · 0 comments

Comments

@MorCohenAres
Copy link

The module doesn't return the correct path when running as a self-executable process (not directly using node).
This happens due to the usage of process.execPath which is assumed to return node/node.exe but that isn't always the case.

Steps to reproduce:

  1. Install pkg globally: npm i -g pkg
  2. Install global-prefix locally
  3. Create a new file myApp.js, type in console.log(require('global-prefix'))
  4. Run node index.js -> You get something like /usr/bin/ or /Users/MY_USERNAME/.nvm/versions/node/v14.20.0
  5. Now create a self-executable file for the local project: pkg myApp.js -t linux / pkg myApp.js -t macos / whatever..
  6. Run the newly created myApp / myApp.exe -> Unexepected result, something like: C:\Users\myApp.exe. The expected result is the global directory where NodeJS sits.

A proposed solution would be to explicitly search for node executable (like this library does with npm) instead of using process.execPath.

Pull Request

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant