Binary wrapper that makes your programs seamlessly available as local dependencies
$ npm install bin-wrapper
constBinWrapper=require('bin-wrapper');constbase='https://github.com/imagemin/gifsicle-bin/raw/master/vendor';constbin=newBinWrapper().src(`${base}/macos/gifsicle`,'darwin').src(`${base}/linux/x64/gifsicle`,'linux','x64').src(`${base}/win/x64/gifsicle.exe`,'win32','x64').dest(path.join('vendor')).use(process.platform==='win32' ? 'gifsicle.exe' : 'gifsicle').version('>=1.71');(async()=>{awaitbin.run(['--version']);console.log('gifsicle is working');})();Get the path to your binary with bin.path():
console.log(bin.path());//=> 'path/to/vendor/gifsicle'Creates a new BinWrapper instance.
Type: Object
Type: boolean
Default: false
Whether to skip the binary check or not.
Type: number
Default: 1
Strip a number of leading paths from file names on extraction.
Adds a source to download.
Type: string
Accepts a URL pointing to a file to download.
Type: string
Tie the source to a specific OS.
Type: string
Tie the source to a specific arch.
Type: string
Accepts a path which the files will be downloaded to.
Type: string
Define which file to use as the binary.
Returns the full path to your binary.
Type: string
Define a semver range to check the binary against.
Runs the search for the binary. If no binary is found it will download the file
using the URL provided in .src().
Type: Array
Default: ['--version']
Command to run the binary with. If it exits with code 0 it means that the
binary is working.
MIT © Kevin Mårtensson