Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
readme-6978-1.txt | 2018-02-04 | 2.1 kB | |
changelog.txt | 2018-02-04 | 2.8 kB | |
nsis-binary-6978-1.zip | 2018-02-04 | 3.1 MB | |
nsis-code-6978-1-NSIS-trunk.zip | 2018-02-04 | 2.2 MB | |
Totals: 4 Items | 5.3 MB | 0 |
NSISBI aims to remove the current 2GB limit found in NSIS. This version adds support for using a separate file for storing the install data, therefore allowing installer sizes up to a theoretical max size of 8EB. Single files are still limited to 2GB. The compiler (makensis) is designed to run on 64 bit machines as this is the feature needed to make installers bigger than 2GB. The command to use an external file is: SetExOutFile auto | off | on. The 'off' setting is the same as classic nsis (all-in-one installers). The 'on' setting forces creation of external files regardless of size (except zero data installers). The 'auto' setting is the default, so it creates all-in-one installers up to the 4GB limit, past this limit it switches to an external file for the data. The only down side is that solid compression is not supported, due to its design it just isn't feasible to add support. An undocumented 'Target' command also exists that allows the target architecture to be selected. It is: Target cpu-charset. Valid values are: x86-ansi, x86-unicode, amd64-unicode. See the changelog for updates. This release has an experimental lz4 compressor. To use it, just use 'SetCompressor lz4'. I've also implemented high compression support, use 'SetCompressorDictSize 1' to turn it on, and 'SetCompressorDictSize 0' to turn it off (this feature might be removed if I can get dictionary support to work). High compression is really only useful for highly compressible files (mainly text files), other files that already have compression (video, audio, pictures, and compressed files) won't benefit from high compression so it's better to leave it off. I still can't get the streaming (dictionary based) to work in nsis, but it works fine in my test project (which I use to verify the codec). It's currently using independent blocks of 64kb to store the data, I might increase this in the future to improve the compression ratio. Also, I know solid compression is broken, not a big deal since big installers can't use solid compression anyway.