Repository navigation
Fix FreeOS Windows installer Chinese mojibake and noisy openXYOS provision - #52
Merged
Merged
Conversation
Keep UTF-8 Node/PowerShell output in provision.log and start.log. NSIS detail now shows localized step results only (nsExec::Exec, stdout discarded) so Chinese is not misread as GBK. Stop and wait for a leftover FreeOS openXYOS Node before extract; livez success is not blocked by transient auth/seed console lines. Co-authored-by: XYAI Labs <haoboy8@gmail.com>
Nested .../openxyos/openxyos made `node backend-dist/server.js` exit immediately with an empty console, so provision waited 90s and failed with exit 12. Choose the live root when backend-dist + dist exist there; require fresh start.log/pid/livez after Shell.Application; fail-fast on node crash instead of a livez timeout. Co-authored-by: XYAI Labs <haoboy8@gmail.com>
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.
Summary
Windows Setup was failing with exit code 12 (livez timeout) after extract left both a healed live root and a leftover nested
openxyos\openxyostree.Definitive cause (user PC):
start-sidecar.ps1preferred cwd...\FreeOS\openxyos\openxyos. From that nested directory,node backend-dist/server.jsexits immediately with empty stdout/stderr (node exited (fail-fast)). The same binary from the top-level live root starts and livez works. JWT_SECRET was a red herring when Node was launched by hand without the helper.This PR:
$live\backend-dist\server.jsand$live\dist\index.htmlexist, use$live. Only use$live\openxyoswhen the top-level server is missing. Same rule instart-sidecar.ps1, the provisioner, desktop GosidecarAppAt, and Python_sidecar_app_dir.cwd/layout; empty nested crash is written tostart.log; provision exits 10 onnode exited (fail-fast)instead of sitting 90s for exit 12.start.log, a livestart.pid, or livez; otherwise retry explorer /Start-Process. Logs are truncated each start.nsExec::Exec(notExecToLog), UTF-8 logs only, OEM-safe host lines, no raw Node console in the NSIS detail list.Target branch
develop(feature / fix — default)main(requested for this installer hotfix)Type of change
Test plan
uv run pytest tests/unit/desktop/test_openxyos_provisioner.py tests/unit/desktop/test_nsis_uninstall.py tests/unit/desktop/test_nsis_detail_encoding.py tests/unit/test_sidecar_launch.py -q— 61 passedTestSidecarAppAtPrefersTopLevelWhenBothExist)make all— not run here (cloud image)Checklist
CHANGELOG.mdNotes
Do not merge (per request). After this lands on a test installer, provision should exit 0 with livez +
.install-readywhen the zip layout is present; exit 12 only on a real start/health failure with a freshstart.log.