Updating Desktop Rust
5 days ago
- #desktop-applications
- #legal-technology
- #software-updates
- Desktop software is fast, local, and secure, making it ideal for legal technology.
- Desktop applications require updates, which can be risky if they fail or brick the application.
- Tritium aims to own the update process to ensure a smooth user experience.
- Background update daemons (e.g., Adobe) manage updates but may compromise privacy and trust.
- Zed editor uses an asynchronous background thread to check for updates hourly.
- On POSIX systems, files can be updated in place, but Windows locks running binaries.
- Zed uses a separate binary on Windows to update locked files and restart the application.
- Tritium adopts a 'speedbump' approach, checking for updates on every launch and applying them immediately.
- The 'speedbump' ensures updates receive first-class attention but risks interrupting user flow.
- Tritium uses a helper binary on all platforms for simplicity and updates the updater itself by renaming and replacing it.