macOS default-browser gate that asks which Firefox profile should open every link (Slack, Mail, etc.).
Finicky is not used here — it routes by rules and does not provide a reliable “always ask” picker.
- FoxGate is set as your system default browser.
- When any app opens an
http/httpsURL, FoxGate shows a list of your Firefox profiles. - Choosing a profile launches Firefox with
--profile <path>and the URL (no-no-remote, so an already-running profile can receive the link).
Profiles are discovered from Firefox’s Profile Groups database (the same friendly names as about:profiles / the profile selector, e.g. “Work”, “Original profile”). Falls back to profiles.ini if needed. Unused leftover folders like default / default-release are not listed.
./scripts/build-app.shThis compiles Foxgate.applescript, builds an .icns from logo.png, patches Info.plist so macOS treats the app as a browser, installs to ~/Applications/FoxGate.app, and registers it with Launch Services.
Optional install location:
INSTALL_DIR=/Applications ./scripts/build-app.sh-
Open FoxGate once from
~/Applications(confirm Gatekeeper if prompted). -
System Settings → Desktop & Dock → Default web browser → choose FoxGate.
-
If Finicky (or another router) was the default, replace it with this app.
-
Click a link in Slack, or run:
open 'https://example.com'
If profile discovery fails entirely, the script falls back to names in fallbackProfiles near the top of Foxgate.applescript. Prefer renaming profiles in Firefox (about:profiles) so they show up correctly in FoxGate. Edit the fallback list and re-run ./scripts/build-app.sh only if needed.
- Prefer starting profiles normally (about:profiles → Launch profile in new browser, or via FoxGate). Avoid starting secondary profiles with
-no-remoteif you want links handed off into those instances. - FoxGate must stay the default browser for Slack/other apps to show the picker.
- Rebuild and reinstall after editing the AppleScript or
logo.png.
- Set the default browser back to Firefox (or another browser).
- Delete
~/Applications/FoxGate.app(and any olderFoxgate.app/Firefox Profile Picker.appif present).