2 changed files with 78 additions and 0 deletions
@ -0,0 +1,70 @@ |
|||||||
|
Windows-инсталлятор VibeChat |
||||||
|
=========================== |
||||||
|
|
||||||
|
Требования к компьютеру сборки |
||||||
|
----------------------------- |
||||||
|
Обычные зависимости ChatGUI в MSYS2 UCRT64 (Qt, CMake/Ninja, OpenSSL и т.д.) |
||||||
|
и Inno Setup 6.3 или новее: https://jrsoftware.org/isdl.php |
||||||
|
Inno Setup нужен только для сборки, пользователю приложения он не требуется. |
||||||
|
|
||||||
|
ISCC.exe ищется в PATH и стандартных каталогах Program Files. |
||||||
|
Для нестандартной установки задайте в CMD перед сборкой: |
||||||
|
set "ISCC=D:\Tools\Inno Setup 6\ISCC.exe" |
||||||
|
|
||||||
|
Создание инсталлятора |
||||||
|
-------------------- |
||||||
|
Из корня репозитория: |
||||||
|
tools\chatgui\build.bat только ChatGUI и его инсталлятор |
||||||
|
build.bat ядро, тесты, ChatGUI и его инсталлятор |
||||||
|
build_full.bat полная сборка и инсталлятор |
||||||
|
|
||||||
|
BAT-скрипты автоматически включают --installer. Отсутствие Inno Setup или |
||||||
|
ошибка упаковки завершают сборку с ненулевым кодом, даже при выводе через tee. |
||||||
|
Корневые BAT собирают ChatGUI и при отсутствии предыдущего CMakeCache.txt. |
||||||
|
|
||||||
|
Из UCRT64 shell можно запускать вручную: |
||||||
|
cd tools/chatgui |
||||||
|
bash build.sh --installer -j4 |
||||||
|
|
||||||
|
Или повторно упаковать уже готовый Windows-комплект: |
||||||
|
cd tools/chatgui |
||||||
|
bash package_win.sh |
||||||
|
|
||||||
|
Результат: |
||||||
|
tools\chatgui\build\installer\VibeChat-<версия>-win64-setup.exe |
||||||
|
|
||||||
|
Версия берётся из project(vibechat VERSION ...) в CMakeLists.txt. |
||||||
|
--installer задаёт Release; без этого флага поведение shell-сборки прежнее. |
||||||
|
Логи: tools\chatgui\build_win.log, а для корневых BAT также build_win.log |
||||||
|
или build_full.log в корне. Итоговый путь печатается после успеха компилятора. |
||||||
|
|
||||||
|
Состав и поведение |
||||||
|
------------------ |
||||||
|
Комплект включает EXE, фактически импортируемые DLL, Qt-плагины Windows/JPEG/WebP |
||||||
|
с их зависимостями и лицензии. Проверяются x64 PE-формат и полнота зависимостей. |
||||||
|
Конфиги, ключи, базы, медиа, логи, lock-файлы, тесты и старые DLL из build |
||||||
|
не включаются. Ошибка компилятора не считается успехом из-за старого setup.exe. |
||||||
|
|
||||||
|
Установка: Windows 10/11 с поддержкой x64, Program Files\VibeChat, |
||||||
|
права администратора для установки и настройки firewall. Создаются ярлык |
||||||
|
в меню Пуск и необязательный ярлык на рабочем столе; после установки приложение |
||||||
|
запускается от исходного пользователя. Входящие подключения разрешаются |
||||||
|
правилом "VibeChat (installer)" только для установленного EXE. |
||||||
|
|
||||||
|
При обновлении установщик предлагает закрыть приложение, использующее EXE/DLL. |
||||||
|
Обновление и удаление сохраняют конфиг, ключи, историю и медиа пользователя. |
||||||
|
Деинсталлятор удаляет своё правило firewall и установленные файлы программы. |
||||||
|
Журналы установки/удаления и вывод netsh сохраняются средствами Inno Setup; |
||||||
|
для явного пути журнала используйте /LOG="C:\path\setup.log". |
||||||
|
|
||||||
|
Проверки |
||||||
|
-------- |
||||||
|
На Linux/Unix: python3 tools/chatgui/tests/test_windows_installer.py |
||||||
|
Тест запускает настоящие скрипты с подставленными objdump/pacman/ISCC: |
||||||
|
проверяет комплект, ошибки, повторную упаковку и GUI-флаг --installer. |
||||||
|
Корневой флаг проверяет python3 tests/test_build_script.py build.sh. |
||||||
|
Это не заменяет проверку настоящего Inno-компилятора и установщика на Windows. |
||||||
|
|
||||||
|
На чистой Windows без MSYS2/Qt: установка, запуск обычным пользователем, |
||||||
|
сообщения/звуки/медиа, обновление с сохранением идентичности, удаление, |
||||||
|
повторная установка. Проверить пути с пробелами и имя пользователя с кириллицей. |
||||||
Loading…
Reference in new issue