feat(installer): harden packaging pipeline and first-run setup (fast build, embedded payload, provider-based model config)#51
Merged
GCWing merged 4 commits intoGCWing:mainfrom Mar 1, 2026
Conversation
- add release-fast cargo profiles for workspace and installer - enhance installer build script with --mode fast|release, --fast, and help output - support mode-aware desktop binary discovery and installer build command selection - simplify desktop build scripts and CI commands to rely on Tauri beforeBuildCommand - add installer tauri:build:fast script and update lockfile dependencies - document fast/release installer build commands and output paths in installer README
- embed src-tauri/payload into installer binary at build time via embedded_payload.zip - add payload preflight validation for embedded zip, external zip, and directory sources - refactor extraction/copy helpers to support filtered install entries - validate installed BitFun.exe size to prevent broken payload installs - harden uninstall flow on Windows with case-insensitive path checks and scheduled cleanup script - run cleanup script via cmd /C call with no window and retry deletion until success/failure - add uninstall runtime/cleanup logs under %TEMP% for diagnostics - auto-close uninstall UI after successful backend invocation to reduce file lock timing issues
…rding after install - Add a pre-build sync:theme-i18n step and wire it into installer dev/build/tauri scripts. - Keep exe-only output for fast packaging via tauri:build:exe* with --no-bundle. - Return saved appLanguage in installer LaunchContext and initialize installer locale from it. - Move launchAfterInstall from Options to ThemeSetup, with finish-state error handling. - Localize installer theme names (themeSetup.themeNames) and add sync script from web-ui locales. - Gate desktop onboarding with ENABLE_MAIN_ONBOARDING and mark completed when disabled to prevent duplicate first-run wizard after install.
- Rebuild installer model setup around provider templates (provider/model/base URL guided flow). - Add backend model connection testing (test_model_config_connection) and frontend wiring. - Extend model config persistence with advanced fields (config name, custom body, SSL skip, custom headers/mode). - Add model i18n sync script and hook sync:i18n into installer dev/build/tauri scripts. - Update installer en/zh model locale strings and model setup styles. - Refresh Zhipu default models to glm-5 and glm-4.7.
b8c5432 to
3144416
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Upgrades installer build reliability, packaging robustness, and first-run UX end to end.
build (fast/release), and update CI/workflow commands.
zip/dir), and verify installed BitFun.exe integrity.
diagnostic logs.
initialize installer UI language from saved app language.
names from web-ui locale sources.
completed state when disabled.
(test_model_config_connection), and wire frontend test actions.
UI, and update provider defaults.