Skip to content

Design refresh: new icon, cleaner menu, better Settings - #1

Open
severinlindenmann wants to merge 8 commits into
willmot:mainfrom
severinlindenmann:feature/design-refresh
Open

severinlindenmann wants to merge 8 commits into
willmot:mainfrom
severinlindenmann:feature/design-refresh

Conversation

@severinlindenmann

@severinlindenmann severinlindenmann commented Oct 20, 2026 •

Copy link
Copy Markdown

A visual and UX refresh for LumeBar.

  • New app icon and menu bar symbol. SVG sources are in design/icon/; run swift scripts/render-icons.swift to regenerate the PNGs.
  • Cleaner menu. It shows service status and VM counts, running VMs come first, and actions are compact icon buttons. Right-click a VM for more options. There are proper empty and error states.
  • Better Settings. Settings has grouped sections, a connection test, and shows where the lume CLI was found.

Screen Sharing sources

  • Right-click a VM to choose Automatic (Lume VNC if available, else the guest's own Screen Sharing), Lume VNC, or macOS Screen Sharing. This supports VMs started with --vnc disabled.
  • Live previews work for guest Screen Sharing too, using a login stored in the Keychain (Set Screen Sharing Login…). Without one, the card shows a placeholder.
  • Adds NSLocalNetworkUsageDescription: connecting to a guest needs macOS Local Network permission. Unsigned builds may need it toggled off and on after updating; a Developer ID signature avoids that. package-app.sh also accepts an optional LUMEBAR_SIGN_IDENTITY.
  • Existing behaviour is unchanged for VMs with Lume VNC.

Fixes

  • Start is no longer offered while a VM is still provisioning.
  • lume in ~/.local/bin is now found when the app is opened from Finder.
  • The menu bar icon now loads correctly instead of a fallback symbol.
  • package-app.sh works with newer SwiftPM.

Screenshots are in the README. They use demo VM data.

New menu bar popover

🤖 Generated with Claude Code

Severin Lindenmann and others added 8 commits October 20, 2026 17:56
Newer SwiftPM makes .build/release a symlink into .build/out, so find
without -L missed the resource bundle and libRoyalVNCKit.dylib.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Stacked Instances design with SVG sources in design/icon and a
render script that regenerates the asset catalog PNGs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Header with service status, VM counts and refresh
- Compact VM rows with icon actions, provisioning state and context menu
- Empty state and actionable error banner
- Grouped settings with connection test, CLI location and version
- Find lume in ~/.local/bin and load menu bar icon from Assets.car

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Sort running and provisioning VMs first
- Smaller round icon buttons and a quieter start button
- Compact thumbnail placeholder; open hint only on hover
- Settings applies URL changes immediately and hides Reset when default
- README header with app icon, screenshots and updated sections

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Per-VM source: Automatic (Lume VNC, else guest), Lume VNC, macOS Screen Sharing
- Guest live preview via a Keychain-stored login; placeholder without one
- Add NSLocalNetworkUsageDescription so macOS prompts for guest access
- Optional LUMEBAR_SIGN_IDENTITY for package-app.sh
- Document sources and Local Network permission

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
macOS 27.0 can crash `lume run` in the VNC server setup. LumeBar now passes
--vnc disabled on start (toggle in popover footer and Settings, default on) and
keeps headless on by default. Also includes guest Screen Sharing fallback tweaks.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The row's Screen Sharing icon remains the way to connect.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant