OdyTTY

A Linux-first GPU terminal emulator, written from scratch in Rust.

release v0.16.1 platforms Linux · Windows · macOS theme odyssey-classic visual ambient search

$ install odytty

Installation and release verification

Release artifacts target Linux x86_64, Windows x86_64, and Apple Silicon. Other architectures use the documented source-build route. Minisign and GitHub attestations are complementary checks.

$ Install OdyTTY - v0.16.1

v0.16.1 was published October 3, 2026. Choose the channel for your platform and use that same channel to update.

Linux x86_64 is the primary target, with Wayland primary and X11 supported. macOS ships a prebuilt Apple Silicon app; Windows ships an x86_64 portable executable. Linux ARM, Windows ARM, and Intel macOS have no prebuilt release artifact and use source builds.

install for:

Linux: verified installer

The installer detects apt/dpkg or dnf/rpm and installs the matching verified native package. Other Linux x86_64 systems receive the portable binary tarball. Rendering requires a host graphics driver: Vulkan is preferred, accelerated OpenGL/GLES is supported, and software rendering is a slow last resort. From v0.15.5, Linux binaries also use the system FreeType and Fontconfig libraries, which standard desktop installations provide and the .deb, .rpm, and AUR packages declare.

Run the same one-line command to install or update from Bash, Zsh, Fish, or another shell. The fetched installer resolves the latest release, authenticates SHA256SUMS with the pinned OdyTTY release key, verifies the selected artifact, and only then installs it. If Minisign is missing, the installer first installs it through pacman, apt, dnf, or zypper; package installation may request sudo.

Install or update Linux - verified latest release
curl -fsSL https://raw.githubusercontent.com/ghreprimand/odytty/master/dist/install.sh | bash

Add -s -- --dry-run after bash to preview the installation plan. If you prefer to inspect the installer before it runs, use the manual download, verification, and run block. The guide also documents --insecure-skip-signature as an explicit opt-out when Minisign cannot be installed.

Command source: the repository's current Linux README. The fetched installer source is committed for review.

Other Linux release formats

For manual installation, download the format you need and authenticate the manifest and verify its checksum before running or installing it.

The Linux guide covers apt/dpkg and dnf/rpm local-package installation, AppImage permissions and FUSE/extraction options, and the tarball's bundled install.sh with a user-local default prefix. RPM support is best-effort, not validation on every RPM distribution. OdyTTY does not publish an apt or dnf repository.

AppImage updates and desktop integration

From v0.16.1, the x86_64 AppImage embeds update information for the latest GitHub release. AppImageUpdate can use the companion odytty-x86_64.AppImage.zsync control file to check for and download updates. It describes the always-latest alias; the version-pinned AppImage is byte-identical.

v0.16.0 and earlier have no update information. Replace those AppImages manually once to reach an update-capable version. OdyTTY itself performs no automatic update check.

Before running an updated image, authenticate the release's SHA256SUMS with its Minisign signature and verify the image's SHA-256. Both the AppImage and zsync file are covered by the signed manifest and build provenance. Zsync SHA-1 checks transfer integrity and does not replace release authentication. Follow download verification below.

The executable bit is required: run chmod +x odytty-x86_64.AppImage after verification. For menu integration, Gear Lever or appimaged can register the bundled desktop entry and icon.

Since v0.16.0 the AppImage bundles the runtime X11 xkbcommon-x11, Xcursor, and XInput libraries. It still uses host libxkbcommon, display-session libraries, Fontconfig, FreeType, and the graphics driver. Earlier AppImages could fail at startup on X11 without libxkbcommon-x11. AppImage guide.

Arch Linux: AUR

With paru or yay already installed, use the project-maintained odytty AUR package:

AUR - choose your installed helper
paru -S odytty

For yay, use yay -S odytty. Manual AUR checkout and makepkg steps are in the AUR guide.

Update through the same channel

  • Installer: rerun the verified one-line install command above.
  • Direct .deb or .rpm: rerun the installer, or download, verify, and reinstall the latest local package. Ordinary apt/dnf repository updates do not provide OdyTTY updates.
  • AUR: use paru -Syu or yay -Syu. For a manual checkout, run git pull --ff-only, then makepkg -si.
  • AppImage: from v0.16.1, AppImageUpdate can use embedded update information; earlier AppImages need one manual replacement. Verify the signed checksums before running an updated image. See AppImage updates.
  • Tarball: download and verify the latest artifact, then replace the prior installation in the same location.
  • Source: update the source tree, rebuild with cargo build --release --locked, and reinstall to the same prefix.

Complete Linux update instructions →

Windows: Scoop or portable zip

Requires Scoop for the recommended install. Run these commands in PowerShell:

Scoop - install
scoop bucket add odytty https://github.com/ghreprimand/odytty
scoop install odytty

Scoop verifies the checksum, adds odytty to PATH, and creates a Start-menu entry.

Download portable Windows x86_64 zip

For the portable option, follow the verification and extraction steps before running odytty.exe. The executable is unsigned and may show a SmartScreen prompt. Manifest signing does not provide Authenticode signing.

Windows uses ConPTY and supports live local and integrated SSH panes. Detached/persistent Windows host sessions, detached SSH, and headless --interactive are not supported. OdyTTY cannot register as the Windows system default terminal; open it from Scoop, the Start menu, a shortcut, or odytty.

Update Scoop

Scoop - update
scoop update
scoop update odytty

For a portable install, download the latest zip, authenticate the manifest, verify the checksum, and replace the previous executable. Windows update guide →

macOS: Homebrew

With Homebrew installed, the cask provides the prebuilt Apple Silicon (arm64) OdyTTY.app:

Homebrew cask - Apple Silicon
brew tap ghreprimand/odytty
brew install --cask odytty

The app is ad-hoc signed and not notarized. The cask's disclosed postflight clears the quarantine attribute with xattr -dr com.apple.quarantine. Developer ID signing and notarization are not available for this release. If Homebrew reports an untrusted tap, follow the documented tap-trust instructions.

Intel Macs: build from source

Intel Macs use the documented source path, including the Homebrew source formula. The formula installs the CLI, not a prebuilt app:

Homebrew source formula
brew install ghreprimand/odytty/odytty

Download Apple Silicon app zip - for manual installation, follow the verification, app placement, and quarantine instructions.

Update Homebrew

Homebrew cask - update
brew update
brew upgrade --cask odytty
Homebrew source formula - update
brew update
brew upgrade odytty

For a direct app install, download and verify the newest zip, then replace OdyTTY.app in the same location. macOS update guide →

Verify a manual download

v0.16.1 publishes seven artifact formats under both stable and version-pinned names, one version-pinned installer, odytty-x86_64.AppImage.zsync, SHA256SUMS, and SHA256SUMS.minisig: 18 uploaded assets (GitHub also lists its two auto-generated source archives). Buttons here use the published stable aliases. Use the v0.16.1 release page for version-pinned downloads, or earlier release pages for historical versions.

v0.16.1 uploaded assets: aliases and pinned copies
Always-latest nameVersion-pinned copy
odytty-amd64.debodytty-0.16.1-amd64.deb
odytty-x86_64.rpmodytty-0.16.1-x86_64.rpm
odytty-linux-x86_64.tar.gzodytty-0.16.1-linux-x86_64.tar.gz
odytty-x86_64.AppImageodytty-0.16.1-x86_64.AppImage
odytty-macos-arm64.zipodytty-0.16.1-macos-arm64.zip
odytty-windows-x86_64.zipodytty-0.16.1-windows-x86_64.zip
odytty.tar.gzodytty-0.16.1.tar.gz
noneodytty-0.16.1-install.sh
odytty-x86_64.AppImage.zsyncnone
SHA256SUMSnone
SHA256SUMS.minisignone

Each package alias and its pinned copy have identical bytes and hashes. The zsync control file and verification files have no separate pinned filename; download them from the chosen release.

  1. Download the artifact, SHA256SUMS, and SHA256SUMS.minisig from the same release.
  2. Authenticate the manifest signature with Minisign and the published release key.
  3. Check the chosen artifact's SHA-256 against that authenticated manifest. Stop on any failure before extracting, installing, or running the download.

The per-platform verification guide covers Minisign and checksum tools. The recommended Linux installer performs these checks automatically. Releases before v0.11.0 have no Minisign signature.

GitHub build provenance is an additional check from v0.12.0 onward. With GitHub CLI 2.97.0 or newer and the AppImage downloaded, verify the release workflow:

Optional additional provenance check
gh attestation verify odytty-x86_64.AppImage \
  --repo ghreprimand/odytty \
  --signer-workflow ghreprimand/odytty/.github/workflows/release.yml

Attestations are stored by GitHub against artifact digests. Stop if verification fails. Neither Minisign nor provenance replaces macOS or Windows operating-system code signing.

Build from source

Use Rust 1.96 or newer with Cargo through rustup; the repository pins 1.96.0. macOS also requires the Xcode Command Line Tools. Linux needs a working Vulkan or OpenGL/GLES graphics stack and the FreeType and Fontconfig libraries at runtime. Other architectures use the documented source path.

From v0.15.5, Linux source builds also need pkg-config and the FreeType and Fontconfig development packages, because the Wayland title-bar text backend links those libraries. Install them for your distribution first; macOS and Windows need no extra packages.

Linux build prerequisites: Debian / Ubuntu
sudo apt install pkg-config libfontconfig1-dev libfreetype6-dev
Linux build prerequisites: Fedora
sudo dnf install pkgconf-pkg-config fontconfig-devel freetype-devel
Linux build prerequisites: Arch
sudo pacman -S --needed pkgconf fontconfig freetype2

Download source archive - authenticate its manifest and verify its checksum before extracting. From the verified source directory:

Build the verified source
cargo build --release --locked

Follow the source and platform prerequisites and installation-prefix instructions. To update, fetch the new release source, rebuild with the same command, and reinstall to the same prefix.

Run and configure

Open your default shell
odytty

Open Settings with Ctrl+Shift+,, the command palette with Ctrl+Shift+P, or the theme picker with Ctrl+Shift+H. Choose reusable launches in Profile Manager. See runtime settings, configuration locations, and default-terminal setup.

Uninstall through the original channel

Remove an apt/dnf/AUR package with that package manager; use scoop uninstall odytty, brew uninstall --cask odytty, or brew uninstall odytty for the matching channel. For an AppImage or portable zip, remove the downloaded app. For tarball/source installs, follow the installed-prefix guidance; keep your configuration if you intend to reinstall.