Установщик Feed NSIS запрашивает у Chocolatey - PullRequest
0 голосов
/ 07 ноября 2018

Я хотел использовать Chocolatey для установки GeoServer ; поскольку в сообществе нет пакета для него, я решил создать свой собственный пакет на основе их официального (NSIS) установщика Windows.

В настоящее время я использую параметр 1006 * commandlet -SilentArgs, чтобы скрыть окно установщика:

Install-ChocolateyPackage `
   -PackageName $Env:ChocolateyPackageName `
   -Url "http://sourceforge.net/.../geoserver-2.14.0.exe" `
   -FileType "exe" `
   -SilentArgs "/S /D..."

Однако у установщика есть несколько интересных подсказок, например, дать вам возможность настроить номер порта веб-сервера ...

Image: GeoServer's NSIS installer, prompting for a custom port.

Есть ли способ передать поля установщика из командной строки, например, /D для пути установки?

1 Ответ

0 голосов
/ 07 ноября 2018

Сам NSIS имеет только встроенную автоматическую поддержку /NCRC, /S и /D=c:\foo\bar, кроме того, что должно быть специально закодировано автором установки.

/S устанавливает режим установщика в режим без вывода сообщений и пропускает все страницы, он будет выполнять только Section с. IfSilent может использоваться для обнаружения тихого режима в вашем коде.

Поддержка пользовательских параметров может быть добавлена ​​в установщик путем анализа командной строки с помощью макроса GetOptions из FileFunc.nsh и / или с помощью файла ответов.

Файл ответов обычно представляет собой просто файл .ini со значениями, которые установщик может прочитать, чтобы изменить значения по умолчанию: ReadIniStr $FooValue "$EXEDIR\mysetupanswer.ini" "Options" "Foo".

...