Skip to content

Add browser profile picker to web app setup - #9679

Open
cbullard wants to merge 1 commit into
omacom:quattrofrom
cbullard:feat/webapp-browser-profile
Open

Add browser profile picker to web app setup#9679
cbullard wants to merge 1 commit into
omacom:quattrofrom
cbullard:feat/webapp-browser-profile

Conversation

@cbullard

@cbullard cbullard commented Sep 1, 2026

Copy link
Copy Markdown

Summary

  • discover profiles for the effective Chromium-family web app browser
  • offer an optional profile picker when the interactive wizard finds multiple profiles
  • store the selected --profile-directory directly in the generated desktop launcher
  • keep Automatic as the default, preserving current behavior
  • hide the picker when profile selection would be redundant

The direct launcher binding keeps the choice visible and portable, requires no separate runtime profile store, and lets other desktop-entry work inspect the selected profile.

Browser support

Profile discovery follows the browsers already supported by omarchy-launch-webapp: Chromium, Chrome, Brave, Brave Origin, Edge, Opera, Vivaldi, and Helium. Unsupported default browsers continue to use Chromium's profile state because web apps already fall back to Chromium.

Related work

#6105 proposes a broader profile-aware runtime for the older dev branch, including remembered launch-time choices. This is an independent, narrower Quattro implementation: it binds a profile only during web app creation and writes the choice into the launcher itself.

Testing

  • bash test/shell.d/webapp-browser-profile-test.sh
  • bash test/shell.d/webapp-install-test.sh
  • bash test/shell.d/webapp-name-test.sh
  • bash test/shell.d/webapp-install-escaping-test.sh
  • ./test/cli
  • ./test/shell — 221 of 226 files passed; the same five unrelated graphical/package-coverage failures reproduce on untouched origin/quattro
  • exercised against an isolated copy of a real six-profile Chromium Local State; generated launcher passed desktop-file-validate and preserved Profile 2 as one argument

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