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

[Windows] Consider using 7z for installer archives #1237

Closed
mcdurdin opened this issue Oct 6, 2018 · 3 comments
Closed

[Windows] Consider using 7z for installer archives #1237

mcdurdin opened this issue Oct 6, 2018 · 3 comments

Comments

@mcdurdin
Copy link
Member

mcdurdin commented Oct 6, 2018

In testing, using 7-Zip instead of Zip reduced the Keyman Developer 10 installer archive from 84MB to 56MB.

There are a number of ways we could embed the 7-Zip library to decompress:

  1. Include 7z.dll as a resource in setup.exe, and automatically extract and use it if a .7z file is found in the appended archive.
  2. Create a SFX and embed that in the installer, calling it silently to extract when setup starts.
  3. Use native Delphi LZMA code; however this is quite slow.
@mcdurdin
Copy link
Member Author

mcdurdin commented Oct 6, 2018

Note: using msi compression=high reduced installer from 84MB to 70MB. We can still get an additional 14MB (less 7Z library size) by using 7Z but may look at this for KM12 instead when we embed CEF in Keyman Desktop, where installer size is more significant.

@mcdurdin
Copy link
Member Author

mcdurdin commented Oct 8, 2018

Suggested yesterday: xz. Looks more maintained than 7z at this time.

https://github.com/delphiunderground/xz-examples-delphi
https://tukaani.org/xz/

@mcdurdin mcdurdin added this to the Future milestone Oct 23, 2018
@mcdurdin mcdurdin added feat and removed enhancement labels May 13, 2021
@mcdurdin
Copy link
Member Author

This is a fair bit of work and seems to be low priority as download size is not considered a serious issue by any of our testing community.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant