Skip to content

pnpm/cmd-shim

 
 

Repository files navigation

@zkochan/cmd-shim

Used in pnpm for command line application support

Build Status Build Status on Windows npm version

The cmd-shim used in pnpm to create executable scripts.

Installation

npm install --save @zkochan/cmd-shim

API

cmdShim(src, to, opts?): Promise<void>

Create a cmd shim at to for the command line program at from. e.g.

const cmdShim = require('@zkochan/cmd-shim')
cmdShim(__dirname + '/cli.js', '/usr/bin/command-name')
  .catch(err => console.error(err))

cmdShim.ifExists(src, to, opts?): Promise<void>

The same as above, but will just continue if the file does not exist.

Arguments:

  • opts.preserveSymlinks - Boolean - if true, --preserve-symlinks is added to the options passed to NodeJS.
  • opts.nodePath - String - sets the NODE_PATH env variable.
  • opts.prependToPath - String - prepends the passed path to PATH before executing the Node.js program.
  • opts.nodeExecPath - String - sets the path to the Node.js executable.
  • opts.createCmdFile - Boolean - is true on Windows by default. If true, creates a cmd file.
  • opts.createPwshFile - Boolean - is true by default. If true, creates a powershell file.
  • opts.progArgs - String - optional arguments that will be prepend to any CLI arguments
const cmdShim = require('@zkochan/cmd-shim')
cmdShim(__dirname + '/cli.js', '/usr/bin/command-name', { preserveSymlinks: true })
  .catch(err => console.error(err))

License

BSD-2-Clause © Zoltan Kochan

Packages

No packages published

Languages

  • TypeScript 73.4%
  • JavaScript 26.6%