You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(packaging): make portable zip truly portable out-of-the-box via .portable marker #1056
Сделать так, чтобы скачанные Portable zip архивы (Windows и Linux) работали как полноценный Portable софт «из коробки» без необходимости вручную создавать папку QueryaData или прописывать переменные окружения.
Problem
Сейчас в release.yml релизные zip-архивы просто пакуют выходную папку сборки Flutter.
В коде AppDataRoot.resolvePortableRoot() портативный режим включается ТОЛЬКО если папка QueryaData уже физически существует, либо установлена переменная QUERYA_PORTABLE=1.
Пользователь скачивает Querya-Desktop-windows.zip, распаковывает, запускает — и программа молча пишет всё в %APPDATA%\querya_desktop. При копировании папки на флешку пользователь теряет все подключения.
Секреты (пароли БД) привязаны к OS Keyring (Windows Credential Manager / DPAPI) и не переносятся между разными ПК на флешке.
Solution
Автоопределение Portable по маркеру:
В AppDataRoot проверять не только директорию QueryaData, но и наличие файла-маркера .portable или portable.txt рядом с исполняемым файлом. При наличии маркера автоматически создавать QueryaData/ при первом запуске.
В .github/workflows/release.yml вкладывать маркер .portable (или готовую папку QueryaData/) в zip-бандлы Windows и Linux.
Информирование о паролях на флешке:
В панели настроек / статусе портативного режима показывать индикатор: «Portable Mode: Data stored in local folder. Passwords stored in host OS keyring».
Acceptance Criteria
Скачанный из GitHub Releases zip-архив сразу сохраняет базу данных рядом с exe.
Пользователь видит понятный статус портативного режима в About/Preferences.
Activity
Merge pull request #1069 from QueryaHub/issue/1056-out-of-the-box-por…
ZhuchkaTriplesix commentedon Oct 5, 2026
Resolved in PR #1069