Release binary
Install a Teldrive release archive without containers.
Release builds are standalone binaries for Linux, macOS, and Windows. Linux releases use CGO_ENABLED=0.
Install
Linux installer
Requires Bash, curl, tar, and sha256sum. Python 3 is needed only for automatic version detection.
curl -fsSL https://tgdrive.github.io/teldrive/install.sh -o install.sh
less install.sh
bash install.shPass a version, such as bash install.sh 2.0.0, to pin the installation. The default destination is ~/.local/bin; set TELDRIVE_INSTALL_DIR to override it. Add the directory to PATH.
Windows installer
Run PowerShell as your normal user:
Invoke-WebRequest https://tgdrive.github.io/teldrive/install.ps1 -OutFile install.ps1
Get-Content .\install.ps1
.\install.ps1Use -Version 2.0.0 or -InstallDir PATH to override defaults. Add %LOCALAPPDATA%\Teldrive\bin to your user PATH. If script execution is blocked, review your execution policy or use a manual installation; do not disable system-wide protections.
Both installers verify release checksums. They install the CLI and completion files, not PostgreSQL, configuration, or a background service. Latest-version detection uses published stable GitHub releases, not drafts. Checksums detect corruption, not a compromised publisher.
Manual installation
Download the archive for your OS/architecture from GitHub Releases, then on Linux:
tar -xzf teldrive-X.Y.Z-linux-amd64.tar.gz
sudo install -m 0755 teldrive /usr/local/bin/teldrive
teldrive versionRelease targets include Linux amd64/arm/arm64, macOS amd64/arm64, and Windows amd64/arm64.
Configure
Use an explicit config path:
teldrive check --config /etc/teldrive/config.toml
teldrive run --config /etc/teldrive/config.tomlSee Configuration overview for file discovery and required settings.
systemd
[Unit]
Description=Teldrive
After=network-online.target postgresql.service
Wants=network-online.target
[Service]
Type=simple
User=teldrive
Group=teldrive
ExecStart=/usr/local/bin/teldrive run --config /etc/teldrive/config.toml
Restart=on-failure
RestartSec=5
NoNewPrivileges=true
PrivateTmp=true
[Install]
WantedBy=multi-user.targetProtect the config:
sudo chown root:teldrive /etc/teldrive/config.toml
sudo chmod 0640 /etc/teldrive/config.tomlListener
For a host with a local reverse proxy, keep the default 127.0.0.1:8080. Use 0.0.0.0:8080 only when network exposure is intentional.