Hello,

I have in my package three directories of document files. The installer file size is ~1.9 GB. I zipped these three directories into three files included them in the package and excluded the three directories from the package. I used 2 methods of compression:

  1. zip with no compression ( -0 option)
  2. zip with maximum compression (-9 option)

With the first option the size of the installer file reached to ~2.3 GB With the second option the size of the installer file reached to ~2.1 GB

The method compression which I use for my package is LZMA and I wonder why the size of the package with the zipped file is larger then the original package with the directories. I assumed that bitrock might not compress files with zip extension so I rename the file to .dat.

Is bitrock have the ability to compress zipped file (with or without compression as described) by LZMA? Is there any way to compress these directories into a zip file and still not exceed 2 GB ?

Thank You, Ronen

asked 09 Sep '13, 06:55

Ronen's gravatar image

Ronen
16565656
accept rate: 0%


InstallBuilder contains logic for optimizing large number of small files, which is why not using zip compression makes the installer smaller.

InstallBuilder compresses the ZIP file regularly, but unfortunately when compressing the zip file, these optimizations are not done - which may account for the difference.

Unfortunately it may not be possible to create an installer under 2GB that would ship the zip files.

link

answered 09 Sep '13, 11:01

wojciechka's gravatar image

wojciechka ♦♦
7.8k61122
accept rate: 26%

Would it be possible to explain a little about the type of optimization Bitrock applies for multiple files? We could try implementing a similar optimization for ZIP that's created.

(10 Sep '13, 05:15) GigaG

They involve grouping by file name, looking for same large chunks of files and other processing we apply when adding files to installer.

Unfortunately it is not possible to do the same when packing to zip file. Only thing that may apply is to try changing order of files when adding them to zip file - i.e. grouping by extension or file type - pack all text files, then pack all images, then pack all *.class files. You can do this by running zip -@ and passing ordered list of files via stdin. However, the result will probably not be the same.

Could you provide more details on your use case? Why do the files have to be zipped? Is it a Java application and those are jar/war/ear files?

link

answered 10 Sep '13, 05:59

wojciechka's gravatar image

wojciechka ♦♦
7.8k61122
accept rate: 26%

We're trying to optimize the performance of the installer on Windows. The problem is that our HTML documentation contains over 80,000 files and copying those on Windows is very slow. We attempted to apply a workaround of putting documentation files in a single archive and then extracting it as a post-install step. This operation is faster, but we started to exceed the 2GB file size of a single-file installer.

So, the original problem we're trying to solve is the installation speed on Windows when deploying 10's of thousands of small files. We would appreciate any tips on this.

(10 Sep '13, 06:33) GigaG

Could you send your project to support@bitrock.com? Is it also possible for us to get the actual contents of the documentation you want to ship? We could provide you with some help and/or try to optimize your specific use case.

(10 Sep '13, 07:25) wojciechka ♦♦

I've just asked Ronen to prepare the required information and open a support call. We'll provide you with the data you requested asap.

Thank you Giga

(10 Sep '13, 07:39) GigaG
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×19
×7

Asked: 09 Sep '13, 06:55

Seen: 1,167 times

Last updated: 10 Sep '13, 07:39