I've posted a beta version of the PortableApps.com Installer 3.10. This beta adds support for large installers over 2GB.
Currently, I'm using a 7-Zip container inside an installer to get things within the standard NSIS limit of 2GB with apps like FreeCAD. This updated installer adds the ability to use NSISBI, a fork of NSIS with support for large installers. It's not as common and can't currently be extracted with 7-Zip like a standard NSIS installer can. Compilation requires a 64-bit OS though using the resulting installer does not.
Large format support is activated by adding the following to the installer.ini:
[LargeInstallerMode]
LargeInstallerMode=true
It should only be used with larger installers where you get an error trying to create a PA.c Installer without this change.
Download PortableApps.com Installer 3.10 Beta 1 (installs to the same PortableApps.comInstaller directory as stable unless you manually change it)
Download: 4MB / Install: 22MB
SHA256: a8983a81e088b30baa1164d7e218c68b8b13fd1a03aa0ff7c15f823ebd13dedc
Here's an example installer for FreeCAD Portable 1.1.1 to test out the performance compared to the current version. The current version requires an extra 365MB during install as it has to extract the 7z file and then extract that. The large format installer doesn't require this but it is larger (458MB vs 371MB) due to 7-Zip's extreme compression setting working better than the regular LZMA in NSIS.
The new dev test of Red Eclipse also makes use of this beta installer: https://portableapps.com/node/82453
Release History:
2026-07-12: 3.10 Beta 1



Tested FreeCADPortable_1.1.1_NewPAcInstaller.paf.exe
The default language selection on first screen is not English.
It is for me starting it up on Windows 10 64-bit with post EOL updates set to English US. What OS and language are you using? How are you launching the installer? What language does the standard FreeCAD Portable 1.1.1 installer default to?
Sometimes, the impossible can become possible, if you're awesome!
Yesterday I tested it on Win 7 32-bit English system. The default language is Spanish International.
Today I tested it again and also tested it on win 10 64-bit system. The default language now are both in English.
Since there are only 2 folders and 1 file different between NSIS and NSISBI, 32-64 bit switch method can be used to save some space.
Replace Lines 1390 to 1396 with:
${If} $R0 != "false"
${If} ${FileExists} "$EXEDIR\App\NSIS\Stubs_LargeInstaller"
Rename "$EXEDIR\App\nsis\Stubs" "$EXEDIR\App\nsis\Stubs_Std"
Rename "$EXEDIR\App\nsis\Stubs_LargeInstaller" "$EXEDIR\App\nsis\Stubs"
${EndIf}
${If} ${FileExists} "$EXEDIR\App\nsis\Bin_LargeInstaller"
Rename "$EXEDIR\App\nsis\Bin" "$EXEDIR\App\nsis\Bin_Std"
Rename "$EXEDIR\App\nsis\Bin_LargeInstaller" "$EXEDIR\App\nsis\Bin"
${EndIf}
${If} ${FileExists} "$EXEDIR\App\nsis\makensis_LargeInstaller.exe"
Rename "$EXEDIR\App\nsis\makensis.exe" "$EXEDIR\App\nsis\makensis_Std.exe"
Rename "$EXEDIR\App\nsis\makensis_LargeInstaller.exe" "$EXEDIR\App\nsis\makensis.exe"
${EndIf}
WriteINIStr "$strInstallAppDirectory\App\AppInfo\pac_installer_log.ini" "PortableApps.comInstaller" "LargeInstallerMode" "true"
${Else}
${If} ${FileExists} "$EXEDIR\App\nsis\Stubs_Std"
Rename "$EXEDIR\App\nsis\Stubs" "$EXEDIR\App\nsis\Stubs_LargeInstaller"
Rename "$EXEDIR\App\nsis\Stubs_Std" "$EXEDIR\App\nsis\Stubs"
${EndIf}
${If} ${FileExists} "$EXEDIR\App\nsis\Bin_Std"
Rename "$EXEDIR\App\nsis\Bin" "$EXEDIR\App\nsis\Bin_LargeInstaller"
Rename "$EXEDIR\App\nsis\Bin_Std" "$EXEDIR\App\nsis\Bin"
${EndIf}
${If} ${FileExists} "$EXEDIR\App\nsis\makensis_Std.exe"
Rename "$EXEDIR\App\nsis\makensis.exe" "$EXEDIR\App\nsis\makensis_LargeInstaller.exe"
Rename "$EXEDIR\App\nsis\makensis_Std.exe" "$EXEDIR\App\nsis\makensis.exe"
${EndIf}
WriteINIStr "$strInstallAppDirectory\App\AppInfo\pac_installer_log.ini" "PortableApps.comInstaller" "LargeInstallerMode" "false"
${EndIf}
ExecDos::exec `"$EXEDIR\App\nsis\makensis.exe" /O"$EXEDIR\Data\PortableApps.comInstallerLog.txt" "$strInstallAppDirectory\Other\Source\PortableApps.comInstaller.nsi"` "" ""
If you run multiple instances of the PA.c Installer, this could cause issues. That's why I have them as separate full instances.
For example, I routinely compile 42 packages of Firefox for a single channel. 112 packages on a Tuesday release day. I have these compiling 5 concurrently. While that is going on, I'm working on other apps at the same time. If a publisher had a normal and a lite package with only the normal one requiring NSISBI, both could not be compiled at the same time.
Sometimes, the impossible can become possible, if you're awesome!