- packaging/repo.sh: download release assets over HTTPS (no GitHub API), show nfpm errors, PKGREL for packaging-only revisions, and declare ALSA as a hard dependency (the release binary links libasound.so.2), with libasound2t64 preferred so Ubuntu 24.04 doesn't pick the OSS shim. Verified by clean installs on Debian 12/13, Ubuntu 22.04/24.04, Fedora 42 and Arch. - README: Install section (Homebrew cask, apt, dnf/zypper, pacman, zips).
Nexus Terminal
A native desktop client for SSH, Telnet, RAW TCP, Serial, VNC, RDP, IRC, GitHub and local terminals — with secure credential handling and a focused, multi-session workflow.
Nexus Terminal helps you manage many connections at once, keep terminal work organised, and move files with confidence. It is a single Rust application with no webview, so it starts quickly and stays responsive under heavy terminal output.
Highlights
- SSH, Telnet, RAW TCP, Serial, VNC, RDP, IRC, GitHub and local terminal sessions in one app
- Tabbed sessions with split panes, pinning and drag-to-reorder
- SFTP browser with drag-and-drop uploads and a permission-aware directory picker
- SSH jump hosts, SOCKS5/HTTP proxies, local and remote port forwards, agent forwarding and TOTP auto-fill
- Serial consoles with full line settings (baud, data bits, parity, stop bits, flow control)
- Native VNC and RDP viewers; RDP with NLA, certificate pinning, and SOCKS5/HTTP proxy or SSH tunnel routes
- Disconnected overlay with one-click reconnect, and auto-reconnect with backoff
- Broadcast input, snippets, trigger rules and terminal search
- Session recording (asciicast v2) and playback
- Secure credential storage with the OS keychain first and an encrypted vault fallback
Install
macOS (Homebrew):
brew install --cask andydixon/tap/nexusterminal
Debian, Ubuntu (22.04 and later):
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://repo.dixon.cx/dixon.gpg | sudo tee /etc/apt/keyrings/dixon.gpg >/dev/null
echo "deb [signed-by=/etc/apt/keyrings/dixon.gpg] https://repo.dixon.cx/apt stable main" |
sudo tee /etc/apt/sources.list.d/dixon.list
sudo apt update && sudo apt install nexusterminal
Fedora, RHEL, openSUSE:
sudo curl -fsSL -o /etc/yum.repos.d/dixon.repo https://repo.dixon.cx/rpm/dixon.repo
sudo dnf install nexusterminal # or: sudo zypper install nexusterminal
Arch Linux:
curl -fsSL https://repo.dixon.cx/dixon.asc | sudo pacman-key --add -
sudo pacman-key --lsign-key C22FF7330668417C62C7A304CBC7951D7F2234D1
printf '\n[dixon]\nServer = https://repo.dixon.cx/arch/$arch\n' | sudo tee -a /etc/pacman.conf
sudo pacman -Sy nexusterminal
Windows, or any platform by hand: download a zip from
GitHub Releases and check it against SHA256SUMS.
Builds aren't code-signed yet, so macOS and Windows ask you to confirm the first launch.
Quick start
- Launch Nexus Terminal.
- Click + at the bottom of the sidebar (or press Cmd+N / Ctrl+N) and create a connection profile.
- Click Create & Connect to save it and open a session in a new tab. Afterwards, click the profile in the sidebar to connect.
Prefer a one-off session? Use Cmd+Shift+Q / Ctrl+Shift+Q to quick connect, or click Local Machine in the sidebar for a local shell.
If a session drops, use the Reconnect button in the disconnected overlay.
Documentation
- Product overview: docs/overview.md
- Quick start (shareable): docs/quick-start.md
- User manual: docs/user-manual.md
- Illustrated user guide (PDF): docs/guide/nexus-guide.pdf, built from LaTeX in docs/guide (
makethere;tools/screenshots.shregenerates the screenshots) - Build and release: docs/build-and-release.md
Keyboard shortcuts
All shortcuts use Cmd on macOS and Ctrl on Windows/Linux.
| macOS Shortcut | Windows/Linux Shortcut | Action |
|---|---|---|
| Cmd + K | Ctrl + K | Open command palette |
| Cmd + N | Ctrl + N | New connection |
| Cmd + W | Ctrl + W | Close current tab |
| Cmd + Tab | Ctrl + Tab | Next tab |
| Cmd + Shift + Tab | Ctrl + Shift + Tab | Previous tab |
| Cmd + 1–9 | Ctrl + 1–9 | Switch to tab by number |
| Cmd + , | Ctrl + , | Open settings |
| Cmd + F | Ctrl + F | Find in terminal |
| Cmd + Shift + D | Ctrl + Shift + D | Split pane right (side by side) |
| Cmd + Shift + E | Ctrl + Shift + E | Split pane down (top and bottom) |
| Cmd + Shift + R | Ctrl + Shift + R | Toggle session recording |
| Cmd + Shift + B | Ctrl + Shift + B | Toggle broadcast input mode |
| Cmd + Shift + S | Ctrl + Shift + S | Open snippet library |
| Cmd + Shift + Q | Ctrl + Shift + Q | Quick connect |
| F11 | F11 | Toggle fullscreen |
Building from source
Nexus Terminal is a Rust workspace in rust/. With rustup installed:
cd rust
cargo run --release
See docs/build-and-release.md for platform prerequisites, tests and release packaging.
License
Copyright (C) 2026 Andy Dixon.
Nexus Terminal is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License, version 3 as published by the Free Software Foundation. It is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for details.
Third-party crates (including the patched copies in rust/vendor/) keep their own licenses,
which are listed in each crate.