Version sync
The version source of truth is the version field in package.json. Before every production build, sync it to backend/tauri.conf.json:
This is run automatically as part of npm run build, but you can run it manually after editing package.json.
Build
This runs version sync, builds the Vite frontend, then invokes tauri build to produce platform installers.
Output locations
After a successful build, installers are in:
backend/target/release/bundle/
├── nsis/
│ └── Trueears_<version>_x64-setup.exe
└── msi/
└── Trueears_<version>_x64_en-US.msi
Bundle size: approximately 15–20 MB.
Bundle targets
| Target | Format | Platform |
|---|
nsis | NSIS installer (.exe) | Windows |
msi | MSI installer (.msi) | Windows |
deb | Debian package (.deb) | Linux |
appimage | AppImage (.AppImage) | Linux |
To build a specific target:
cd backend && tauri build --target nsis
Windows
- Visual Studio Build Tools 2019+
- Windows SDK
The embedBootstrapper webview install mode bundles the WebView2 installer with the app, ensuring it works on systems without WebView2 pre-installed.
Linux
Install the required system packages before building:
# Ubuntu / Debian
sudo apt install libwebkit2gtk-4.1-dev libsoup-3.0-dev
Environment variables for production
| Variable | Purpose |
|---|
TAURI_PRIVATE_KEY | Code signing private key (optional) |
TAURI_KEY_PASSWORD | Password for the signing key |
Code signing is optional for local builds but required for distribution via package managers or auto-update channels.
Release checklist
- Update the version in
package.json
- Run
npm run sync-version to propagate the version to tauri.conf.json
- Update
CHANGELOG.md with release notes
- Run
npm run build and verify the output
- Test the installer on a clean machine
- Create a git tag:
git tag v<version>
- Push with tags:
git push --tags
Troubleshooting
”WebView2 not found” on Windows
The embedBootstrapper mode handles this automatically. If the error persists, users can install WebView2 manually from Microsoft’s WebView2 page.
Rust build errors
Ensure the Rust toolchain is up to date:
Icon not appearing
Verify the following icon files exist before building:
| File | Platform |
|---|
build/icon.ico | Windows (256×256 minimum) |
build/icon.png | Linux |
build/icon.icns | macOS |