Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

sfxbundler

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sfxbundler

Node module wrapper around the touchifyapp/sfx binaries.

latest
Source
npmnpm
Version
1.0.4
Version published
Maintainers
1
Created
Source

node-sfxbundler

node-sfxbundler is a Node module wrapper around the touchifyapp/sfx binary.

Getting Started

node-sfxbundler works as a wrapper around the sfx bundler. It abstracts the commands' switches with JS object abstraction.

Installation

node-sfxbundler can be installed using NPM:

$ npm install sfxbundler --save

Usage

First import node-sfxbundler in your project:

var sfxbundler = require("sfxbundler");

Then use sfxbundler's commands:

sfxbundler.bundle("path/to/my.exe", "path/to/dir", { id: "my.app.id", version: "1.2.3", arch: "i386" });

node-sfxbundler uses native Promise to wrap asynchronous operations and resolves with the result of the command:

sfxbundler.bundle("path/to/my.exe", { certificate: "path/to/my/cert.pfx", password: "*******" });
	.then(result => {
		result.code 	// The sfx bundler exit code.
		result.stdout 	// The sfx bundler stdout content.
		result.stderr	// The sfx bundler stderr content.
	});

Command-line

node-sfxbundler can work as a simple wrapper around touchifyapp/sfx.

# Install module globally
$ npm install sfxbundler -g

# Run module from command line
$ sfxbundler -exe path/to/sfx.exe -dir path/to/dir -id my.app.id

Documentation

sfxbundler.bundle(dest: string, dir: string, [options: BundleOptions]): Promise

Bundle a new sfx Executable using sfx bootstrapper.

/** Bundle Options */
export interface BundleOptions extends RunOptions {
    /** A unique ID for the result SFX. (default: from dest name). */
    id?: string;
    /** The Bootstrapper architecture. */
    arch?: "i386" | "x64";
    /** The Bootstrapper Type (default: `sfx`). Set `sfxv` for verbose extraction. */
    type?: "sfx" | "sfxv";
    /** The program to run in the project directory (default: auto-detect). */
    run?: string;
    /** The absolute destination path to extract project in (default: `${os.tempdir()}/${id}`). */
    dest?: string;
    /** Arguments to pass to executable. */
    args?: string[];
    /** The program version to check for updates. */
    version?: string;
    /** The compression level. */
    compress?: number;
    
    /** Print verbose success and status messages. This may also provide slightly more information on error. */
    verbose?: boolean;
}

sfxbundler.run(args: string[], [runOptions: RunOptions]): Promise

Run SFX bundler by using raw arguments.

/** Run Options */
export interface RunOptions {
    /** The current working directory to execute sfx bundler binary on. */
    cwd?: string;
    /** The inner spawn stdio option. */
    stdio?: string;
}

Contribute

Install Project dependencies

$ npm install

Build project

$ npm run build

License

MIT

Keywords

archive

FAQs

Package last updated on 25 May 2017

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