🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

locate-executable

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

locate-executable

Locate executable files for specific commands

1.2.0
latest
Source
npm
Version published
Weekly downloads
0
-100%
Maintainers
1
Weekly downloads
 
Created
Source

Locate Executable npm version

Locate executable files for specific commands (useful for child_process inside Electron apps)

After building an Electron app using electron-builder, the $PATH variable inside child_process may get set to /usr/bin:/bin:/usr/sbin:/sbin which makes it virtually impossible to spawn additional non-UNIX commands.

This package allows you to locate paths of executable files for such commands. You can then use these paths to spawn child_process inside the compiled app.

Install

Tested on macOS only. Let me know if it does/not work on Linux/Windows.

npm install --save locate-executable

locateExecutable(command[,subpath][,callback])

Looks for executable files for specified command in user's home directory recursively. You can narrow down the search by specifying additional subpath.

  • command (String) Command you need the executable of
  • subpath (String) (optional) Specify a particular subpath you want to look at
  • callback (Function) (optional)
    • error (String)
    • paths (Array) List of absolute paths to executables
// Example
import locateExecutable from 'locate-executable'

locateExecutable('jupyter-console', (error, paths) => {
    if (error) console.log(error)

    console.log(paths)
    return
})

NOTE: As the search inside the home directory recursively can take some time, consider running it only on the first launch and saving the paths persistently in something like electron-store.

Contribute

So if you're awesome and want to contribute to this project, go fork, clone and send pull requests! These are the tips for features to work on:

  • support for Windows and Linux (if it already doesn't work)

License

MIT

Keywords

locate

FAQs

Package last updated on 23 Jul 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts