Repository navigation
feat(setup): Botloft's own install window (I1) - #46
Merged
Merged
Conversation
…uietly The file people download opens a window of Botloft's own (spec 15.7): the mascot, the name and one button, in the app's look, three languages and the Windows theme. Behind it, the NSIS installer it carries runs with /S, so shortcuts, Installed apps, the uninstaller, WebView2 and the service hook stay as they were, and so do updates. - botloft-setup (app/src-setup): reads what Installed apps says, closes the open app, runs the installer from a folder of its own under %TEMP%, deletes it and opens the installed app. Its manifest asks for asInvoker, since Windows takes a "setup" program for an installer. Without WebView2 it hands over to the classic installer. A build without the installer inside only rehearses. - The page (app/src/setup, setup.html) depends on SetupHost only; the fake drives the tests and the dev preview at /setup.html. - pnpm bundle:setup builds the page with `vite build --mode setup` and the crate with the installer from `pnpm bundle` inside. Tested for real on Windows 11: a fresh install took about 3 s, created the Installed apps entry and opened the app; "Install again" with the app open closed it, installed and opened it again, and the daemon kept running throughout. Spec 15.7 records the results.
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.
What
The first milestone of the setup window (spec 15.7, I1). The file people download opens a window of Botloft's own: the mascot, the name and one button, in the app's look, three languages and the Windows theme (light or dark). Behind it, the NSIS installer it carries runs quietly (
/S). Shortcuts, the Installed apps entry, the uninstaller, WebView2 and the service hook stay as they were, and so do updates, which keep using the NSIS installer directly.Pages
How
botloft-setup(app/src-setup), a small Tauri app:Botloft.exerunning from the install folder and writes the installer to a folder of its own under%TEMP%./S, deletes the folder and opens the installed app.asInvoker, since Windows takes a program with "setup" in its name for an installer.%TEMP%\Botloft-setup-webview.app/src/setup, entrysetup.html) depends onSetupHostonly.FakeSetupHostdrives the tests and the dev preview at/setup.html(?relation=older&installed=0.5.0&running&fail).pnpm bundle:setup(scripts/setup.mjs) builds the page withvite build --mode setupintodist-setup, then the crate with--features tauri/custom-protocoland the installer frompnpm bundleinside. The output istarget\release\bundle\setup\Botloft_<version>_x64-setup.exe, 15.4 MB for 0.5.0.scripts/workspace.mjsnow holds the workspace version for both the release and the setup scripts.CLAUDE.mdlists the new command.Tests
cargo fmt,cargo clippy --workspace --all-targets -D warnings,cargo test --workspaceandpnpm check(190 tests) pass.pnpm buildstill builds only the app.Real test (Windows 11 25H2, 0.5.0)
%LOCALAPPDATA%\Botloft), opened the app from that folder and deleted the temp folder./Sover the same version only overwrites.Still open (I2 and I3 in spec 15.7)
Botloft_<version>_x64-setup.exeand NSIS as-update.exeforlatest.json; README./Swith the app open when the setup does not close it, and no WebView2.