I was just trying to build an up-to-date portable ImgBurn with full language support (1 main download, 36 [!] separate language files) and found that the PA.c Installer will only allow one download.
For such cases, it would be extremely nice if we could have more than one download (and more than 10, if anyhow possible). ImgBurn’s language files aren’t delivered with the main application but instead in lots of separate (few-hundred-byte) ZIP files.
In general, I suggest modifying PA.c’s INI file syntax, away from
SomeThing#
and changing to
SomeThing_##
This should allow for easy parsing and more than 10 instances of variables, INI sections, and so forth. If also implemented for [DownloadFiles], the above problem could easily be overcome without duplicating a bunch of already built-in NSIS downloading and extracting code.
Also, it would be nice if downloads could depend on whatever options a user selects during install (thus skipping unneeded downloads). How would that be done now? As far as I can see »options« depend on (available) files right now, meaning I would have to download all language files beforehand in order to have the user decide which he wants. (?)
Thanks for considering — and feedback from other developers very welcome! Have you ever run into such a situation?
It's up to the packager to download the files individually and package them in rather than inconveniencing the user and making them wait for the installer to individually download dozens of individual files with the associated wait time. I did it myself this week when I packaged WinSCP and KeePass. 5-10 minutes of annoyance in packaging saves hundreds of thousands of people quite a bit more collective time.
We don't usually do all the languages. We usually only do the better-supported ones. WinSCP, for example, lists what % the completion is on each translation and we only do the ones above 50%. For KeePass, we do the ones that are updated more regularly and fit in with our standard 'major' languages we support (currently: English, French, German, Italian, Japanese, Korean, Chinese (Simplified and Traditional), Spanish (International and Spain), Portuguese (Portugal and Brazilian), Polish, Russian, Hungarian and Dutch.
Sometimes, the impossible can become possible, if you're awesome!
There might be other situations (apart from language files) that require more than one download. (Maybe a convenient plugin/option that should always be included and not require a separate install, or the like.)
Re languages: The other side(s) of the coin is (are):
Re ImgBurn: I wasn’t totally sure about including the language files (but not the app itself), since the author doesn’t wish his product to be »bundled«. Whatever that means. Still, I ended up with the same scheme: Including the language files, downloading the app. The language files are marked »Freeware« inside, are useless without the app, and created by third parties anyway. So maybe it’s okay …
Hey, and thanks for your time and the fast response!