index
Prefer a visual tour? See the BlueShell overview β page.
BlueShell is a container-native terminal for GNOME. It is a fork of Ghostty that carries the features of Ptyxis. You get the Ghostty terminal engine with the container-first workflow that Ptyxis brought to GNOME.
Toolbox, Distrobox, and Podman containers appear in the new-tab menu.
Profiles snapshot your whole configuration. The preferences window, in the
Ptyxis style, drives the Ghostty config live, so you never have to edit a
config file. The file stays at ~/.config/ghostty/config, and you can
still edit it by hand.
App ID: org.tunaos.BlueShell
β¨ Key featuresβ
- π₯οΈ GPU acceleration β the Ghostty engine, with ligatures, HarfBuzz text layout, and fast scrollback.
- π¦ Container tabs β Toolbox, Distrobox, and Podman containers in the new-tab menu; one click opens a shell inside.
- π€ Corral targets β Corral VMs and containers appear as spawn targets, next to Lima, LibVirt, Incus, and Kubernetes.
- π€ Profiles β named snapshots of a full configuration. Switch between them live, and edit each one on its own page.
- π¨ Preferences window β 244 palettes from the Gogh collection, plus font, cursor, scrollback, bell, and shortcut controls.
- πΌοΈ Kitty graphics protocol β inline images in the terminal.
- π Extras from Ghostty β OSC 8 hyperlinks, splits, tab overview, and a fuzzy command palette.
- π Light and dark β follows the desktop preference, with a System, Light, and Dark picker in the main menu.
Installationβ
Flatpak (TunaOS remote)β
flatpak remote-add --if-not-exists tuna-os https://tunaos.org/flatpak/tuna-os.flatpakrepo
flatpak install tuna-os org.tunaos.BlueShell
CI publishes x86_64 and aarch64 builds on every push to ptyxis-port.
Flatpak (build it yourself)β
flatpak-builder --install --user build-dir flatpak/org.tunaos.BlueShell.yml
From sourceβ
Needs Zig 0.15.x and the GTK4 stack, with blueprint-compiler 0.16 or later:
sudo dnf install blueprint-compiler gtk4-layer-shell-devel libadwaita-devel
zig build -Dapp-runtime=gtk -Doptimize=ReleaseFast
The binary lands at zig-out/bin/ghostty.
How it tracks Ghosttyβ
BlueShell is a patch-set on top of Ghostty, not a hard fork. Every day, CI
rebases it onto ghostty-org/ghostty:main. A clean rebase opens a pull
request. A conflict opens an issue that names each file and its resolution
recipe.
Fork code lives in new files wherever it can, so most upstream changes never touch it. The test suite checks every preferences table against the Ghostty config enums, so an upstream rename turns into a red build instead of silent drift.
Creditsβ
BlueShell exists because of two other projects:
- Ghostty by Mitchell Hashimoto β the terminal itself, and the project this forks.
- Ptyxis by Christian Hergert β the container-first design that this fork carries over.
BlueShell has no affiliation with either project. Report BlueShell bugs to tuna-os/blueshell, never to Ghostty or Ptyxis.
Statusβ
BlueShell is alpha. The features above work, and the fork tracks Ghostty every day.