hermes-hub/installer
Hermes Team d4c4facc94 fix(installer): нормализация переводов строк молча зависела от нерабочего python3
Нормализация в сборщике делалась через sed -i, а на Windows в Git Bash это
ненадёжно. Замена на Python сначала не сработала по неожиданной причине:
python3 здесь — заглушка Microsoft Store, которая печатает "Python" и не
выполняет ничего. Нормализация тихо становилась пустой операцией, а сборщик
при этом рапортовал об успехе.

Теперь интерпретатор выбирается проверкой: python3, python, py — берётся
первый, который действительно исполняет код. Не нашёлся ни один — сборка
прерывается с объяснением, потому что установщик без нормализации ломается
на Linux с "$'\r': command not found".

Проверено побайтово на собранной поставке: в прологе ноль байтов 0d, маркер
на своём месте, среди .sh и .py файлов поставки ни одного с возвратом
каретки.

Отдельно отмечу для истории: тревога о возврате CRLF была поднята по ошибке
измерения — grep -c с шаблоном возврата каретки в этой оболочке давал ложные
срабатывания. Сама поставка была исправна и до правки.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-31 01:54:12 +07:00
..
build_installer.ps1 fix: проверка готовности всегда врала, установщик показывал зашитую версию 2026-08-24 09:47:00 +07:00
build_installer_linux.sh fix(installer): нормализация переводов строк молча зависела от нерабочего python3 2026-08-31 01:54:12 +07:00
HermesHubSetup.cs feat(hub): A34 восстановление подключения аккаунтов, OpenRouter, NVIDIA, удаление десктопа 2026-08-31 00:23:27 +07:00
HermesHubSetup.py feat(hub): A34 восстановление подключения аккаунтов, OpenRouter, NVIDIA, удаление десктопа 2026-08-31 00:23:27 +07:00
install-linux.sh feat(web): скрипт открытия хаба в домашнюю сеть, с подтверждением цели 2026-08-25 10:27:16 +07:00
README.md feat: production update feed architecture, host allowlist, and truthful release gate 2026-08-20 17:25:30 +07:00
uninstall-linux.sh feat(installer): A19 — установщики Windows и Linux, запуск веб-интерфейса окном приложения 2026-08-23 22:14:47 +07:00

Hermes Hub — Installer Architecture

Canonical Windows Installer

  • Canonical Binary: HermesHubSetup.exe (built from HermesHubSetup.cs)
  • Build Script: build_installer.ps1 (compiles HermesHubSetup.cs using standard .NET Framework csc.exe present on all Windows 10/11 machines without extra toolchains).

Development & Helper Scripts

  • HermesHubSetup.py: Internal development helper script for testing installer logic in Python. Not distributed as a primary installer artifact.
  • install.ps1: Deprecated legacy bootstrap script for earlier development environments.

Testing Policy (S7)

  • Unit Tests: Must NEVER modify user Windows Registry (HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall) or Start Menu shortcuts.
  • Integration Tests: Executed against isolated sandbox mock directories.
  • Live VM Tests: Real Windows installer execution is reserved for disposable CI/VM environments.