Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New target module 'exe' (for Windows SFX installers) #810

Open
prof-milki opened this issue Nov 15, 2014 · 3 comments

Comments

@prof-milki
Copy link

@prof-milki prof-milki commented Nov 15, 2014

Took a while, but here's a trivial Win32 packaging target.

gist :
fpm…package…exe.rb

It creates basic self-extracting zips, with an Installer-like look and feel, courtesy of FreeExtractor. Its makesfx.exe runs well under wine/Linux; and neatly maps fpm package information.

screenshot

Obviously its use regularily requires crafting a windows-specific start.cmd wrapper etc., and packaging files relocatable without absolute paths (no --prefix), so they can end up in $programfiles$/appxy.


If there's enough interest, it's eventually even possible to cut out the middleman (wine makesfx.exe) requirement.
The final "installer" .exe is just a concatenation of:

  • the SFX binary,

    MZP@C@...
    
  • an INI-style description block (max 1024 byte),

    [FE]
    Name='package'
    ZipSize=20524
    Exec=
    DefaultPath=C:/App/
    Intro="...\n"
    URL=
    Author=
    
  • and the plain ZIP archive appended.

    PKCDT@B@...
    
  • (Not sure about the icon though.)

@prof-milki

This comment has been minimized.

Copy link
Author

@prof-milki prof-milki commented Nov 17, 2014

fpm…package…exe.rb v0.3 now bundles the SFX binary, to do away with the wine and makesfx.exe dependency.

Moreover it uses a customized INI section, which retains a few more fpm packaging parameters. Which allows the resulting installer data to be imported again (fpm -s exe -t deb) now. The field mapping still needs some fine tuning though.

@ViktorNova

This comment has been minimized.

Copy link

@ViktorNova ViktorNova commented Nov 18, 2014

Very cool.

prof-milki pushed a commit to prof-milki/xpm that referenced this issue Dec 18, 2014
…lizing

FreeExtractors unzip module. Self-contained, manually patches up the
generated ZIP, retains further fpm meta data fields in the embedded INI section.
<a href="https://github.com/jordansissel/fpm/issues/810">#810</a>
prof-milki pushed a commit to prof-milki/xpm that referenced this issue Dec 27, 2014
…lizing

FreeExtractors unzip module. Self-contained, manually patches up the
generated ZIP, retains further fpm meta data fields in the embedded INI section.
<a href="https://github.com/jordansissel/fpm/issues/810">#810</a>
@vrecan

This comment has been minimized.

Copy link

@vrecan vrecan commented Apr 6, 2015

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.