Skip to content

Releases: DevGeekPhoenix/phoenix-term

v0.9.0

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 13 Jul 13:57

Graphical system monitor

The sidebar is now a live graphical dashboard on Ghostty + tmux:

  • Orbitron LED clock — pixel-exact, rendered with Kitty graphics
  • Ring gauges — CPU, memory, disk, battery
  • Network dials — download & upload, with the rate in the centre and the unit in the dial
  • CPU temperature — live, no sudo (macOS SMC · Linux hwmon)
  • Public IP in the network title — updates live when your network changes (Wi-Fi switch, VPN)

Faster & lighter

The sidebar no longer shells out to top every second — CPU is sampled natively (host_statistics via ctypes), and a single shared collector feeds every tab instead of each pane sampling on its own.

  • Metric collection is ~67× faster — 585 ms → 9 ms per update
  • A sidebar that used to burn over half a CPU core every second now sits near 1%
  • It scales with tabs — the collector samples once, not once per pane
  • Compact too: the whole graphical dashboard adds only ~0.5 MB (a factored gauge atlas, not thousands of pre-baked frames)

⇄ Reorder tabs

Move the current tab left / right:

  • macOS — Cmd+Alt+, / Cmd+Alt+.
  • Linux — Ctrl+Shift+, / Ctrl+Shift+.
  • Anywhere — Ctrl-A < / Ctrl-A >

Configurable font size

New phoenix-term settings option PHOENIX_FONT_SIZE — auto (14 on macOS, 12 on Linux) or a fixed number.

v0.8.3

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 08 Jul 18:45

Park & resume — now per-tab

Ctrl-A d / Ctrl-A a operate on the current tab, not the whole window:

  • Ctrl-A d parks just the current tab — its window moves to a hidden holding
    session; your other tabs stay put.
  • Ctrl-A a resumes a parked tab into the current window (picker; Ctrl-X
    kills one) — it's added as a new tab, not swapped in over everything.
  • Cmd+W / tab-close is untouched — park/resume no longer detaches or switches
    sessions.
  • Thanks to @mdaneshyab for reporting this in #3.

v0.8.1

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 27 Jun 16:19

Fix: installer preflight crash on Debian & Fedora

  • Preflight no longer aborts with $4: unbound variable. Adding the
    Fedora/Arch support in v0.8.0 grew the _pre_need_cmd helper to read $4/$5,
    but the Debian (3-arg) and Fedora (4-arg) call sites still passed fewer — so
    under the installer's set -euo pipefail the unbound argument killed the run
    before anything was installed.
  • Fix: the optional hint args now default to empty (${4:-} / ${5:-}), so
    preflight survives on every OS. macOS and Arch were never affected.
  • Thanks to the discussion bug report that pinpointed the exact line. 🙏
  1. Final discussion answer

Fix: installer preflight crash on Debian & Fedora

  • Preflight no longer aborts with $4: unbound variable. Adding the
    Fedora/Arch support in v0.8.0 grew the _pre_need_cmd helper to read $4/$5,
    but the Debian (3-arg) and Fedora (4-arg) call sites still passed fewer — so
    under the installer's set -euo pipefail the unbound argument killed the run
    before anything was installed.
  • Fix: the optional hint args now default to empty (${4:-} / ${5:-}), so
    preflight survives on every OS. macOS and Arch were never affected.
  • Thanks to @emad1234-msoudi and @makcodeir who pinpointed the exact line. 🙏

v0.8.0

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 20 Jun 22:41

🏛️ Arch Linux support

  • Phoenix now installs on Arch and its derivatives — Manjaro, EndeavourOS,
    Garuda, CachyOS, ArcoLinux, Artix (and anything with ID_LIKE=arch, e.g.
    SteamOS) — on x86_64 / aarch64. detect_os gains a fourth target and the
    installer dispatches to a pacman path; phoenix-term doctor and preflight
    grew Arch arms too.
  • Everything comes from the official repos, Ghostty included (extra/ghostty)
    — no COPR or .deb dance. The one exception, lazyssh (AUR-only), is fetched
    from its GitHub release like on the other distros.
  • ⚠️ Full system upgrade on install. Arch forbids partial upgrades, so the
    installer runs a complete pacman -Syu rather than -Sy <pkg> — it upgrades
    your whole system, not just Phoenix's packages (a kernel bump may want a
    reboot). This is the safe, Arch-correct behavior.
  • RHEL/Rocky/Alma remain unsupported — they're rejected explicitly, same as
    before.

v0.7.0

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 14 Jun 18:58

Fedora support

  • Phoenix now installs on Fedora and its derivatives (Nobara, Ultramarine,
    Bazzite) on x86_64 / aarch64 — detect_os grows a third target and the
    installer dispatches to a dnf path (DNF_PACKAGES + the shared Linux
    extras). phoenix-term doctor and preflight gained Fedora arms too.
  • Ghostty on Fedora installs from the scottames/ghostty COPR, with a
    manual-install fallback printed if it can't (Phoenix still runs in any
    truecolor terminal).
  • RHEL/Rocky/Alma stay unsupported — they advertise ID_LIKE=fedora but
    ship a different package set, so they're rejected explicitly rather than
    installed into a broken state.

tldr fixed on Debian 13 (and hardened everywhere)

  • Debian 13 (trixie) removed the tldr package, so it silently went missing.
    Phoenix now installs tealdeer (whose binary is tldr) via a dedicated
    installer: native package on Debian 11/12/13, Ubuntu, and Fedora, with an
    upstream static-binary fallback for any spin that packages neither. Existing
    Debian/Ubuntu users keep tldr exactly as before.

v0.6.0

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 09 Jun 17:01

phxssh — SSH host manager

  • New phxssh command opens lazyssh: a
    keyboard-driven TUI over your ~/.ssh/config — connect, add, edit, delete,
    fuzzy-search, pin, ping, port-forward. Installed for you: Homebrew tap on macOS,
    pinned GitHub release on Linux. Hosts live in your real ~/.ssh/config, so a
    bare ssh <host> works too.
  • Ghostty SSH integration enabled (ssh-env, ssh-terminfo) — typing
    ssh <host> from a Ghostty prompt forwards your env and auto-installs the
    xterm-ghostty terminfo on the remote, so remote colors and keys render correctly.

Release notes now cover the whole gap

  • Skip several versions? You now see every release in between — one tab per
    version.
    Switch with ←/→ or number keys, scroll with ↑/↓. So jumping
    v0.4.0 → v0.6.0 shows v0.4.1, v0.4.2, v0.5.0, v0.5.1 and v0.6.0, not just the
    newest. View any span manually with phoenix-term notes <from>..<to>.

⚠️ Aliases renamed: lg/ld → phxgit/phxld

  • lazygit and lazydocker are now phxgit and phxld, joining the new
    phx* family (phxssh, phxgit, phxld). Update any muscle memory or scripts.

v0.5.1

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 07 Jun 22:56

Fix: web popup flicker in non-tmux terminals

  • web no longer flickers/loops outside Ghostty. The saved-links and
    web dev popups redrew the whole screen every tick — invisible inside a tmux
    popup, but a constant full-screen flash in plain terminals (VS Code, Apple
    Terminal, any non-tmux zsh). The TUI now repaints only on keypress or resize,
    matching the cheat sheet. Search, navigation, add/edit/delete, and quit are
    unchanged.

v0.5.0

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 07 Jun 16:38

Web launcher, tmux power tools & release notes

  • web — a browser launcher in your prompt. web <url> opens any URL in your
    default browser. Bare web pops up your saved links — / to search, Enter/1-9
    to open, a add, e edit, d delete. Open saved links by name (web github,
    case-insensitive prefix works). The list lives in ~/.config/phoenix-term/web-list
    and survives updates.
  • web dev — localhost picker. Shows every dev server listening right now
    (port + process), Enter opens it in the browser, / searches, r rescans.
  • New tmux power tools. Ctrl-A Tab fuzzy-grabs any path/URL/word from your
    scrollback (extrakto, wired to phoenix-clip) · Ctrl-A g toggles a floating
    scratch terminal that survives closing · Ctrl-A * force-kills a hung process ·
    copy-mode o/S open or web-search the selection (tmux-open).
  • Release notes popup. After every phoenix-term update, what's-new appears in
    a popup (you're reading it now). Re-read anytime with phoenix-term notes [tag].
  • Tab completion for web (saved names + dev) and phoenix-term
    (subcommands, settings --get/--set with live setting keys).
  • Popups get rounded LightSeaGreen borders; cheat sheet and README cover everything.

v0.4.2

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 06 Jun 13:37

Divider fixes for editor terminals

  • No more stacking dividers in VS Code — VS Code's shell integration rewrites the
    prompt around every command, which fed the old divider back into itself: one extra
    rule per command. The divider/marker now renders through a promptsubst call baked
    into PROMPT once — the prompt string never changes, so integrations wrap it a
    single time. Verified against VS Code's real shellIntegration-rc.zsh; also covers
    Cursor, Windsurf, and any other OSC 633-style shell integration.
  • No more stranded divider rows on window resize outside tmux — the live divider
    redraw is now tmux-only (the Ghostty experience), where the repaint is reliable.
    Bare terminals (VS Code, JetBrains, kitty, …) simply draw the correct divider at
    the next prompt.
  • Docs: README image refresh and formatting cleanups.

v0.4.1

Choose a tag to compare

@DevGeekPhoenix DevGeekPhoenix released this 06 Jun 11:10

Linux shortcuts that actually work

  • Ctrl+Shift mirrors for every Cmd keybind — Super-based shortcuts (Cmd = Super on Linux) are often grabbed by the desktop environment before Ghostty sees them. Tabs, nav, fullscreen, and the cheat sheet now also answer to Ctrl+Shift+T / W / ←→ / Enter / / on every DE. The Super variants still work wherever your DE leaves them free.
  • Ghostty's native Linux splits disabled (Ctrl+Shift+O/E) — tmux owns splits, matching the existing Cmd+D unbinds on macOS.
  • OS-aware cheat sheet — Ctrl-A ? now shows the keys for your OS, and on Linux it probes GNOME/KDE/Xfce settings to only advertise Super shortcuts your desktop hasn't grabbed.
  • phoenix-term doctor detects shortcut grabs — new Linux check lists any DE keyboard shortcut shadowing a Phoenix keybind (including custom GNOME bindings via dconf), so "why does Super+Alt+→ do nothing" answers itself.