Install
Install the macOS or Linux desktop app from the terminal, verify the local system, and keep developer builds separate from release installs.
Terminal installer
curl -fsSL https://tetherapp.vercel.app/install.sh | bash- Detects macOS or Linux and the machine architecture.
- Checks required system tools before changing anything.
- Downloads the matching release artifact from GitHub Releases.
- Installs or replaces the macOS app at /Applications/Tether.app, using sudo when needed, or installs the Linux package or AppImage path.
- Installs the tether CLI with help, update, uninstall, version, doctor, and open commands.
- Use --dry-run to inspect the plan or --yes for non-interactive Linux package installation.
Installed CLI
tether help
tether doctor
tether open
tether update
tether uninstall
tether uninstall --purgetether update closes the desktop app if it is running, replaces /Applications/Tether.app with the newest macOS release, reopens it when it was open before the update, and shows a desktop notification when the update succeeds. The macOS app exposes the same update path through an Update Tether confirmation window that opens Terminal before running the command. tether uninstall keeps local traces and settings unless --purge is passed.
Local developer setup
cd core/proxy
cargo build
cd ../../apps/web
npm install
npm run devThe web app is the public site and documentation surface. The macOS app lives under apps/macos/, the Linux app lives under apps/linux/, and the proxy binary is built from core/proxy/.
Package desktop builds
./scripts/package-dmg.sh- Builds the Rust proxy helper in release mode.
- Builds the Tether Xcode scheme.
- Copies tether-proxy into Tether.app/Contents/Helpers.
- Creates dist/Tether.dmg and mirrors it into apps/web/public/downloads/.
- Use scripts/package-linux.sh for Linux AppImage and deb packaging.