DEV Community

Cover image for umux v1.7.7 ships Core Session
Crystal Studio
Crystal Studio

Posted on

umux v1.7.7 ships Core Session

umux v1.7.7: Core Session, a sleep block with an end time

Quick context for anyone new here: umux is an open-source terminal workspace manager. One desktop app (Tauri v2) with its own embedded terminal. You group terminals into named workspaces, each workspace holds tabs, and every tab splits into as many resizable panels as you need. Linux, Windows, macOS.

v1.7.7 ships Core Session, and it fixes a human problem more than a technical one.

umux Core keeps the machine awake while agents run long jobs. It shipped as a toggle: ON until someone flips it OFF. That someone is you, hours later, and until then the hardware runs for nothing.

Core Session puts a clock on the hold:

umux core-session start 90m
Enter fullscreen mode Exit fullscreen mode

The machine (not just the screen) stays awake for exactly that window, 24 hours max per session. umux core-session extend 30m adds time mid-flight. umux core-session stop ends it early. When the deadline passes, the daemon releases the hold on its own and posts one desktop notification. Settings shows the countdown and, after the fact, when the session ended and why.

The deadline is absolute. It is stored the moment the session starts, and a restart brings the session back with whatever window remained. A crash can never stretch the hold by accident. umux status --json carries the same truth for scripts: active, endsAt, remainingSecs.

Under the hood, nothing new holds the machine. The same three backends as before: an IOKit assertion on macOS, SetThreadExecutionState on Windows, a logind inhibitor on Linux. The new part is the deadline on top.

Platform details worth knowing. On macOS, the persistent Core switch retires. Settings now shows Core Session (BETA), and umux core on refuses with a pointer to the new command. On Windows and Linux, Core stays as shipped, and Core and a session never run at the same time.

Also in this release:

  • Clicking a notification on macOS navigates to the panel it came from.
  • Windows gets a umux-owned notification banner, because the old toasts ignored clicks.
  • Daemon replay no longer answers a fresh terminal's hardware probes, so a restored session starts clean instead of printing probe garbage.
  • A fix for the keyboard freeze some setups hit when the app resolved a working directory.

I'm running this build on my Mac as of today. Install and build steps live in the README, and the full notes are here: https://github.com/CrystalPlatforms/umux/releases/tag/v1.7.7

Top comments (0)