Auto-Update β
Nothing Browser checks for updates automatically and installs them in-app β no terminal required.
Overview β
| Feature | Description |
|---|---|
| Check frequency | On launch + every 6 hours |
| Update source | GitHub Releases API |
| Download method | In-app streaming |
| Install method | Automatic binary swap |
| User interaction | Two clicks (DOWNLOAD β INSTALL) |
How It Works β
The update checker polls the GitHub Releases API:
https://api.github.com/repos/BunElysiaReact/nothing-browser/releases/latestCheck Timing β
| Event | When |
|---|---|
| First check | 3 seconds after launch |
| Periodic checks | Every 6 hours |
| Manual check | Click CHECK NOW in TECH HOUSE tab |
What It Checks β
| Field | Compared |
|---|---|
tag_name | Against current version |
assets | Downloads for your platform |
body | Changelog content |
Update Notification β
When a newer version is found:
Tab Label Change β
The TECH HOUSE tab label updates to show the new version:
π TECH HOUSE [v0.1.4 ready]Bell Icon β
The notification bell in the top-right of the tab bar turns amber:
| State | Bell | Tab Label |
|---|---|---|
| Up to date | βͺ Gray | TECH HOUSE |
| Update available | π Amber | π TECH HOUSE [v0.1.4 ready] |
| Downloading | π΅ Blue | π TECH HOUSE [downloading...] |
| Ready to install | π’ Green | π TECH HOUSE [install ready] |
Downloading and Installing β
Step-by-Step β
Step 1: Go to TECH HOUSE tab
β
βΌ
Step 2: Click β DOWNLOAD UPDATE
β
βΌ
Step 3: Watch progress bar
β
βΌ
Step 4: Click β‘ INSTALL & RESTART
β
βΌ
Step 5: App closes, swaps binary, restartsProgress Bar β
During download, you'll see:
Downloading: [ββββββββββββββββββββ] 45% (2.3 MB / 5.1 MB)
Speed: 1.2 MB/s Β· Time remaining: 2 secondsAfter Download β
The INSTALL & RESTART button becomes active. Click it to:
- Save current session (auto-save)
- Close the application
- Replace the binary
- Restart the browser
No terminal. No sudo (with tar.gz release).
Platform Differences β
Linux (tar.gz) β Recommended β
| Aspect | Details |
|---|---|
| Binary location | Anywhere (user-writable) |
| Update requires | No password |
| Update method | Direct binary swap |
| Experience | Seamless |
Linux (.deb) β
| Aspect | Details |
|---|---|
| Binary location | /usr/bin (system) |
| Update requires | pkexec or sudo |
| Update method | Password prompt |
| Experience | One password entry |
# .deb users will see:
βββββββββββββββββββββββββββββββββββββββββββ
β Authentication Required β
β β
β [sudo] password for user: β
β βββββββββββββββββββββββββββββββββββ β
β β β β
β βββββββββββββββββββββββββββββββββββ β
β β
β [Cancel] [OK] β
βββββββββββββββββββββββββββββββββββββββββββWindows β
| Aspect | Details |
|---|---|
| Binary location | Anywhere (user-writable) |
| Update requires | No admin (if writable) |
| Update method | Direct binary swap |
macOS β
| Aspect | Details |
|---|---|
| Binary location | /Applications (may need password) |
| Update requires | Password for system install |
| Update method | App bundle replacement |
Update Flow Diagram β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AUTO-UPDATE FLOW β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ββββββββββββ ββββββββββββ ββββββββββββ ββββββββββββ β
β β Launch βββββΊβ Check βββββΊβ AvailableβββββΊβ Notify β β
β β Browser β β GitHub β β ? β β User β β
β ββββββββββββ ββββββββββββ ββββββ¬ββββββ ββββββ¬ββββββ β
β β β β
β No βββββββββββ β Yes β
β β β β
β βΌ βΌ β
β ββββββββββββ ββββββββββββββββ β
β β Wait 6 β β User β β
β β Hours β β Downloads β β
β ββββββββββββ ββββββββ¬ββββββββ β
β β β
β βΌ β
β ββββββββββββββββ β
β β User β β
β β Installs β β
β ββββββββ¬ββββββββ β
β β β
β βΌ β
β ββββββββββββββββ β
β β Browser β β
β β Restarts β β
β β Updated! β β
β ββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββManual Update β
If auto-update fails or you prefer manual:
Linux (.deb) β
sudo apt update
sudo apt upgrade nothing-browserLinux (tar.gz) β
# Download new version
wget https://github.com/BunElysiaReact/nothing-browser/releases/download/v0.1.4/nothing-browser-0.1.4-linux-x86_64.tar.gz
# Extract
tar -xzf nothing-browser-*.tar.gz
# Replace old binary
mv nothing-browser-*/nothing-browser ./nothing-browser
chmod +x nothing-browserWindows β
- Download new
.zipfrom Releases - Extract
- Replace old
.exe
macOS β
- Download new
.dmgfrom Releases - Drag to Applications
- Replace old version
Disabling Auto-Update β
Auto-update is always enabled in the UI version. To disable:
Option 1: Use offline version β
Download the binary and disconnect from network.
Option 2: Block GitHub API β
# /etc/hosts
127.0.0.1 api.github.comOption 3: Use tar.gz and don't update β
The tar.gz version doesn't force updates.
Shipping a New Release (For Maintainers) β
Step 1: Commit Changes β
git add .
git commit -m "feat: what changed"Step 2: Create Tag β
git tag v0.1.4
git push origin v0.1.4Step 3: GitHub Actions Builds β
| Platform | Build Time | Output |
|---|---|---|
| Linux | ~10 min | .deb, .tar.gz |
| Windows | ~15 min | .zip, .exe |
| macOS | ~20 min | .dmg, .tar.gz |
Step 4: Release Published β
GitHub Actions automatically:
- Builds all platforms
- Creates a GitHub Release
- Attaches all assets
- Updates the "latest" tag
Step 5: Users Get Notified β
Within 6 hours (or on next launch), users see the update notification.
Troubleshooting β
Update Check Fails β
Error: Failed to check for updates
Solutions:
- Check internet connection
- GitHub may be blocked in your region
- Firewall may block API access
Download Fails β
Error: Download stuck or fails
Solutions:
- Check disk space
- Check write permissions
- Retry download
- Use manual update
Install Fails (.deb) β
Error: Failed to replace binary
Solution: Ensure pkexec is installed:
sudo apt install policykit-1Install Fails (tar.gz) β
Error: Permission denied
Solution: Binary location must be writable:
chmod +w ./nothing-browser
# Or move to writable locationVersion Shows Wrong After Update β
Solution:
- Close browser completely
- Restart
- Check TECH HOUSE tab again
Update Security β
| Concern | How It's Addressed |
|---|---|
| MITM attacks | GitHub API over HTTPS |
| Corrupted downloads | Checksum verification |
| Fake releases | GitHub signature verification |
| Malicious binaries | Only from official GitHub |
Next Steps β
- TECH HOUSE Tab β Update management UI
- Installation β First-time setup
- Session Management β Save your work before updating
Nothing Ecosystem Β· Ernest Tech House Β· Kenya Β· 2026