Ghostty's speed and native UI with the drop-down workflow and tab ergonomics of iTerm2.
Download ·
Features ·
Install ·
Platform support
Ghostty² (ghostty2) is an independent Ghostty fork for people who live in a Quake-style terminal. It keeps Ghostty's fast Zig core, native SwiftUI/GTK interfaces, Metal/OpenGL rendering, splits, and libghostty, then makes the hotkey terminal a first-class, tabbed workspace.
- Global Quake terminal: press Control+` to show or hide the same drop-down terminal from anywhere. The shortcut is enabled by default and can be changed with normal Ghostty keybind configuration.
- Tabs inside the quick terminal: Command+T on macOS or Control+Shift+T on Linux creates another live terminal without leaving the drop-down window.
- Real multi-session behavior: each tab keeps its own process and split tree while the quick terminal is hidden; tab switching, closing, moving, restoration, and close confirmation use the native platform UI.
- Ghostty compatibility: Ghostty² uses its own configuration directory while keeping Ghostty's configuration syntax,
TERM=xterm-ghostty, and internallibghostty/protocol identifiers.
The result is deliberately small in scope: if iTerm2 and Ghostty had a child, this is the part of the family resemblance we wanted most.
Install the latest binary release:
curl -fsSL https://raw.githubusercontent.com/pihalf/ghostty2/main/install.sh | shOn macOS a new installation places the universal Ghostty2.app in ~/Applications; upgrades preserve an existing copy in either ~/Applications or /Applications. On Linux the installer installs the Flatpak bundle for the current CPU architecture. Linux requires Flatpak and a configured Flathub remote. On first setup, the installer can copy an existing Ghostty configuration into Ghostty²; declining leaves the original untouched and starts Ghostty² with a clean configuration.
Ghostty² reads its macOS configuration from ~/Library/Application Support/io.github.pihalf.ghostty2/config.ghostty and its Linux configuration from the ghostty2/config.ghostty path under the platform's XDG configuration directory. Importing copies settings into that namespace; it never links to or modifies the original Ghostty configuration.
You can also download the macOS ZIP or Linux Flatpak directly from Releases.
Nix users can install the package from source with:
nix profile install github:pihalf/ghostty2#ghostty2Ghostty² uses Ghostty's build system and Zig 0.15.2:
git clone https://github.com/pihalf/ghostty2.git
cd ghostty2
zig build -Doptimize=ReleaseFastThe result is zig-out/bin/ghostty2 on Linux and zig-out/Ghostty2.app on macOS. Linux needs the GTK/libadwaita/layer-shell development packages; macOS needs full Xcode with the macOS, iOS, and Metal components. The Nix development shell provides the remaining build dependencies.
| Platform | App | Quake terminal | Global shortcut | Quick-terminal tabs |
|---|---|---|---|---|
| macOS 13+ | Native SwiftUI/Metal | Yes | Native global key monitor | Command+T |
| Linux Wayland | Native GTK/OpenGL | On supported compositors | XDG GlobalShortcuts portal or compositor binding | Control+Shift+T |
| Linux X11 | Native GTK/OpenGL | Not currently supported | Compositor/window-manager binding only | Normal window tabs work |
On Linux, the drop-down placement requires a compositor with the layer-shell protocol. KDE Plasma Wayland and wlroots-based compositors are the intended targets. GNOME's compositor and X11 do not provide the required layer-shell behavior. If your desktop does not expose the global-shortcut portal, bind this command in the compositor instead:
ghostty2 +toggle-quick-terminalFor the Flatpak build, use flatpak run io.github.pihalf.ghostty2 +toggle-quick-terminal.
Ghostty² does not include a crash-capture SDK or bundled updater. “Check for Updates…” opens this fork's Releases page on demand. The retained auto-update configuration names are inert compatibility keys so existing Ghostty configurations continue to parse.
zig build test
zig fmt --check .The public CI additionally runs the Swift/macOS test suite, Linux core tests, GTK Wayland and X11 builds, dependency/icon checks, and distributable macOS and Flatpak builds.
See HACKING.md for the upstream development environment and architecture notes.
Ghostty² is based on Ghostty and remains MIT licensed; the original Ghostty authors and contributors did the overwhelming majority of the work. The interaction model is inspired by iTerm2, but no iTerm2 source code is incorporated. Ghostty² is not affiliated with either project.
See LICENSE for license terms.