browser setup assumes a headed environment (xdg-open + interactive install prompt fails on headless)
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 19.9k
- Forks
- 2.3k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 30
Description
On headless Linux (no DISPLAY/WAYLAND_DISPLAY), jcode browser setup xdg-opens the XPI and waits for an interactive Firefox "Add extension?" click, so it always times out with "Extension not detected".
Fix implemented and validated on headless Debian 13: sideload the signed bridge XPI into a managed profile (~/.jcode/browser/firefox-profile, extensions.autoDisableScopes=0) and start a detached headless Firefox. The repair path also restarts the managed headless Firefox when the bridge stops responding.
Branch (PR creation is blocked for my account on this repo): https://github.com/taylor-shift/jcode/tree/headless-browser-setup
Commit: https://github.com/taylor-shift/jcode/commit/64ec0785
Validation: fresh install connects, repair reconnects after killing Firefox, rerun is idempotent, bridge navigation works, cargo test -p jcode-base browser passes (2 new tests), clippy clean.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the jcode browser setup command and the browser-related code covered by cargo test -p jcode-base browser; reproduce the failure on headless Linux without DISPLAY or WAYLAND_DISPLAY. Done means fresh setup connects, repair reconnects after Firefox stops, reruns are idempotent, and bridge navigation works with the browser tests and clippy passing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux, rust
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 25/100