Skip to content

Releases: tallica/lazyincus

v0.16.1

Choose a tag to compare

@github-actions github-actions released this 18 Oct 13:15
0c8eed1

Fixed

  • A snapshot created with expiry "never" no longer picks up the daemon's default expiry; a new "default" choice, selected first, leaves it to the daemon.

Full changelog: v0.16.0...v0.16.1

v0.16.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 12:39
89e2703

Added

  • : runs an incus command you type, on the focused side panel's remote and starting from its selected row's --project (demo).
  • ; on Stacks or Services runs an incus-compose command you type in the stack's directory, on its remote.
  • tab in the : and ; prompts completes the word before the cursor: incus's verbs, flags and names from the daemon, or incus-compose's verbs and the stack's services.
  • ↑/↓ in the : and ; prompts step through the lines you've run, matching what's typed so far; saved across sessions in history.yml.

Changed

  • R keeps the project you're scoped to when the new remote has one by that name, instead of listing all its projects.

Fixed

  • On a narrow terminal, the footer's key hints stop a space short of the status beside them instead of running into it.
  • On a narrow terminal, a popup's hint is cut short instead of running over its title.
  • An error, or an operation's or warning's details, offers esc/enter: close in the footer instead of a yes or no it isn't asking.
  • W shows how long an ended operation ran, instead of 0s for one that reports no progress along the way, such as a command or a start.
  • On a remote with no stacks, a menu opened straight after startup, P say, hands the focus to Instances when it closes, not back to Stacks.
  • Starting, stopping, restarting, pausing or deleting a replica from Services updates its stack's status straight away, not on the next poll.
  • An oS.openCommand, oS.openLinkCommand or oS.copyToClipboardCommand that can't be split, an unclosed quote say, is reported instead of crashing lazyincus.
  • A data race between the event stream connecting and the per-project requests every listing makes is gone; the race detector found it, no symptom was ever seen.

Full changelog: v0.15.0...v0.16.0

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 23:08
caed926

Added

  • / in the main panel searches it, highlighting the matches: n/N step through them, esc clears.
  • B on the Stacks or Services panel goes straight to the stack's Backups tab, switching to the stack's remote first if it's elsewhere.
  • An instance's Info tab lists its proxy devices on a Ports line, as host:port → target.
  • An instance's Info tab shows its description, under its name.
  • F on an instance, or a service's replica, edits a file inside it in $EDITOR, asking for the path (demo).
  • Rename an instance from the command palette or the x menu, stopping and restarting a running one once confirmed; it has no key of its own.
  • Rename a snapshot the same way, an instance's or a custom volume's.
  • Edit an instance's description from the command palette or the x menu, on Instances or a service's replica.
  • Make a new instance from an instance's snapshot, from the command palette or the x menu on Snapshots; the cursor lands on it once it's created (demo).

Changed

  • The --debug log is plain, readable lines by default; --log-format json keeps it JSON, one object per line.

Fixed

  • When incus-compose config fails, the Config tab says why instead of ending at "Error running incus-compose config:".

Security

  • Built with Go 1.27.2 and golang.org/x/net v0.60.0, fixing GO-2026-6603, -6605, -6607, -6608, -6610, -6611, -6613 and -6617 in its HTTP and TLS client.

Full changelog: v0.14.0...v0.15.0

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 20:57
cef8964

Added

  • remotes.<name>.readOnly in the config, or --read-only for every remote, refuses any key that would change something there; the footer says read-only (demo).
  • ctrl+p opens a command palette: every panel's actions, each naming the item it acts on, and once you type, every listed item to go to; tab lists an item's actions (demo).
  • remotes.<name>.color colours that remote's name in the footer and the borders of panels acting on it.
  • Theme and remote colours also take brightblack to brightwhite, the terminal theme's bright variants.
  • A Backups tab beside Snapshots lists the selected stack's incus-compose backup runs: n backs up, r restores, d/D delete or prune, v verifies (demo).
  • The Volumes panel marks the volumes holding a stack's backups as backup instead of an unused red 0.
  • W lists what the daemon is doing and did this session, with progress and errors (d cancels), and its warnings to acknowledge (a) or delete (d); [/] switch lists (demo).
  • The footer counts running operations, in red those that failed since you last looked, and unacknowledged warnings.

Changed

  • With the main panel or a popup focused, the list it shows keeps its selected row in bold; theme.inactiveSelectedLineBgColor sets the style.
  • While filtering with /, ↑/↓ move through the list without leaving the filter.
  • Collapsed to its title while Stacks or Services has the focus, Instances says how many it lists, as Stacks does.
  • A tabbed panel too narrow for every tab's name shortens the others before the one on show.

Fixed

  • n on the Snapshots panel snapshots what the panel follows, asking which replica for a service, instead of the Instances panel's selection.
  • A popup's title and the hint beside it no longer run together when the popup is only just wide enough for both.
  • The project (P) and remote (R) menus open on the current one instead of the first, so enter keeps where you are.
  • A text prompt's footer says enter submits and esc closes, instead of offering y/n, which type into it.

Full changelog: v0.13.1...v0.14.0

v0.13.1

Choose a tag to compare

@github-actions github-actions released this 03 Oct 14:11
80b8a77

Fixed

  • lazyincus no longer crashes at startup, leaving the terminal garbled, when stacks are listed on two or more other remotes.

Full changelog: v0.13.0...v0.13.1

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 12:07
6def8a5

Changed

  • On a remote with no stacks, Stacks and Services collapse to their titles and the focus starts on Instances; focusing either swaps them with Instances. gui.collapseStacksElsewhere: false turns it off.
  • Focusing Stacks empties the Snapshots panel instead of leaving the last instance's.
  • At startup and after switching remote or project, each panel fills as soon as it's read, instead of every one waiting on the slowest.
  • A panel not read yet says Loading…, in its list and the main panel, instead of looking empty.

Fixed

  • After a remote or project switch, the Snapshots panel no longer lists the snapshots of a same-named volume there, untitled.

Full changelog: v0.12.0...v0.13.0

v0.12.0

Choose a tag to compare

@github-actions github-actions released this 02 Oct 20:12
d546c07

Added

  • A Stacks panel lists compose stacks: the working directory's, plus any added with a and removed with D, saved in state.yml.
  • Stacks run the Services panel's compose verbs against the whole stack.
  • A stack's Info tab shows its endpoints, summed usage, and drift: instances the compose file no longer declares, services never created.
  • A stack's Logs tab shows every service's logs, one instance under each heading; m jumps to it.
  • C on Standalone Instances shows or hides the stacks' instances, for one list of everything.
  • y on a stack copies its project, its directory, or a published port's address.
  • M on a stack or service follows its logs, every instance's interleaved (incus-compose logs --follow). It shows only new output: the Logs tabs have already read the rest.
  • e on Stacks edits a stack's remote and directory; c opens its compose file in $EDITOR.
  • R switches every panel to another of the incus CLI's remotes, for the session.
  • a on Stacks takes a remote before the directory, pve01:~/caddy, so one list holds stacks from several servers.
  • space on a stack switches to its remote. A remote column marks the active one *; titles and confirmations name any other.
  • A stack whose remote is slow or away reads connecting or unreachable, and the rest of the screen carries on.
  • Info tabs and Config headers start with where the item lives: remote, project, and a compose instance's stack and service.

Changed

  • A stack is saved with the remote it was added on. Ones saved earlier are pinned to the remote lazyincus next starts on: start it on your usual remote once, or e a stack pinned wrongly.
  • The Services panel shows the selected stack's services. Stacks and Services are 1 and 2 whenever incus-compose is installed, so other panels move down two.
  • Standalone Instances leaves out every listed stack's compose instances, not just the working directory's.
  • Info tabs show N/A for usage the daemon doesn't report, instead of (no usage reported).

Removed

  • C, the project menu on the Services panel: select the stack on the Stacks panel and press the verb's own key; M follows logs.

Fixed

  • A prompt's title and its hint no longer run together on a narrow terminal: the prompt widens to fit both.
  • A replicated service's Logs tab leaves one blank line between replicas, not two.
  • An instance whose service the compose file no longer declares shows in Standalone Instances, instead of in no list at all.
  • An instance that has never run no longer shows Last used: 1970/01/01 on its Info tab.
  • [ and ] switch tabs again after m on the Services panel has jumped to Logs.
  • Clicking a main-panel tab works while the main panel has focus, as it does after m or enter.

Full changelog: v0.11.0...v0.12.0

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 21:50
f6f125d

Added

  • --debug logs every Incus event to development.log.

Changed

  • Lists follow Incus's event stream: changes made anywhere show within half a second, not on the next poll (up to 10s).
  • Images, Volumes, Networks and Profiles are polled once a minute while the event stream is connected, instead of every 10s.
  • Rows show starting, stopping, restarting or restoring for actions started anywhere: a shell, another client, ic-healthd.
  • p is pause/resume, and rows show freezing/unfreezing on the way.
  • The Services panel is polled every 2s with the instances, instead of every 10s.
  • A VM's Info tab switches to the guest agent's view as soon as the agent starts.

Fixed

  • Config, Env, Forwards and ACLs tabs update when their item changes while open.
  • "Connection lost" appears and clears within a moment, not on the next 2s check.
  • A VM's Logs tab no longer repeats its log.
  • Restoring a snapshot shows restoring on the row, and the row keeps its place.

Full changelog: v0.10.1...v0.11.0

v0.10.1

Choose a tag to compare

@github-actions github-actions released this 27 Sep 17:36
fc6665f

Fixed

  • Rows show starting, stopping or restarting until the action is done, and keep their place; a VM used to read running throughout.
  • A VM's Logs tab shows its boot as clean text, without terminal codes or a grey block, each reboot on a line of its own.

Full changelog: v0.10.0...v0.10.1

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 26 Sep 23:16
ea70782

Added

  • A Profiles tab in Resources: each profile's users and devices; u lists its instances, c edits it, d deletes it.
  • Custom volumes have snapshots: select one to see them in Snapshots; n takes one, r restores, d deletes.
  • A network Forwards tab: each published port, where it goes, and the instance holding that address.
  • A network ACLs tab: the ACLs applied, their default actions, NICs with ACLs of their own, and every rule.
  • c edits the selected instance, image, volume or network in $EDITOR, through incus ... edit.
  • u on an image, volume or network narrows Instances to what uses it; esc goes back.
  • The Volumes list shows each volume's size and users, marking unattached custom volumes red. Sizes stay blank on a pool that doesn't report them, such as dir without quotas.
  • The Images list shows each image's users, last use and kind; D prunes unused or cached images.
  • Network Leases and State tabs: every lease, one host to a row, and incus network info with ports named by instance.
  • e on Snapshots lists every instance's snapshots at once; gui.showAllSnapshots starts that way.
  • S on a service with stopped dependencies offers to start them too (start --with-deps).

Changed

  • Stop, delete and restore prompts name the item's project when the list spans several; deleting something in use says so instead of asking.
  • y opens a copy menu on every list - an instance's name or addresses, an image's fingerprint, and so on; y y copies the name.
  • ←/→ and h/l move between lists, as in lazydocker; tab/shift+tab move a panel at a time.
  • Long names use the room a wider panel gives them instead of a fixed cut.
  • The Networks list hides the host's unmanaged interfaces; e shows them.
  • Images, Volumes and Networks share one Resources panel, 3 (4 with Services); 3 again switches tabs. 4–6 no longer reach those lists.
  • Built against the Incus 7.5 client (v7.5.1).
  • A release is published only once its commit passes the tests, lint and govulncheck.

Security

  • golang.org/x/crypto v0.57.0, fixing GO-2026-6354 and GO-2026-6355 (neither reachable from lazyincus); dependencies are checked weekly and kept current by Dependabot.

Full changelog: v0.9.1...v0.10.0