touchifyapp / sfx

Go package that allows creating Self Extracting Archive (sfx) for Windows.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sfx (Self Extracting Archive) Build Status

sfx is Go package that allows creating Self Extracting Archive (sfx) for Windows.

Usage

This package provides a bundler which append an archive into an sfx bootstrapper.

$ copy sfx.exe dest/myprogram.exe
$ bundler.exe -exe dest/myprogram.exe -dir myarchivedir -compress 9 -id myprogramid

SFX bootstrappers

This package provides two SFX bootstrappers:

  • sfx.exe: Silent SFX boostrapper
  • sfxv.exe: Verbose SFX bootstrapper

Bundler options

Run bundler -h to print usage help :

Option Type Description
-args string arguments to pass to executable
-compress int The program to run in the project directory.
-dest string The absolute destination path to extract project in (default: temp).
-dir string The directory to bundle into sfx. (default "project")
-exe string The program to bundle the project in. (default "sfx.exe")
-id string The unique ID for this package. (default "co.touchify.sfx")
-run string The program to run in the project directory (default: auto-detect).
-v boolean Enable program output.
-version string The program version to check for updates. (default 1.0.0)

License

MIT

Changelog

  • 1.0.0: Initial release
  • 1.0.1:
    • Append Microsoft Windows File Properties/Version Info to sfx.exe and sfxv.exe using goversioninfo.
    • This allows File Properties/Version Info modification via tools like rcedit.
  • 1.0.2:
    • Append arguments passed to sfx.exe to bundled executable.
    • Use sfx.exe modification time instead of archive ones.
    • Use ldflags to reduce sfx.exe size.
  • 1.0.3:
    • Add Mac OS X Bundler target.
    • Improve publish configuration.

About

Go package that allows creating Self Extracting Archive (sfx) for Windows.

License:MIT License


Languages

Language:Go 81.6%Language:Shell 10.3%Language:Batchfile 8.1%