Summary
playwright-cli install-browser currently hard-fails on Fedora and other non-Debian-based distributions. This restriction feels unnecessarily narrow given that most of the logic appears to be packaging/OS-detection rather than deep platform incompatibility.
Context
There has already been prior discussion around expanding OS support:
microsoft/playwright#29559
However, the ecosystem has evolved since then, this isn't just about UI testing for web apps, it's about AI agents driving workflows. Don't expect AI developers to alter their operating system just for a tool.
Why this matters now
-
Fedora is moving faster than Debian/Ubuntu
In a fast-paced AI/dev tooling environment, Fedora (and similar distros) ship newer kernels, libraries, and toolchains significantly earlier than Ubuntu/Debian. Many developers building modern infra are increasingly choosing Fedora-based environments (including container bases).
-
Playwright is increasingly critical infra
With Playwright being used in CI, scraping, testing, and AI workflows, limiting support to Ubuntu/Debian creates friction for teams standardizing on newer stacks.
-
The current failure mode is hard-coded, not technical
The installer explicitly blocks non-Debian distros instead of attempting compatibility.
Observed behavior (real output)
╰─❯ playwright-cli install-browser
browserType.launchPersistentContext: Chromium distribution 'chrome' is not found at /opt/google/chrome/chrome
Run "npx playwright install chrome"
╰─❯ npx playwright install chrome
╔═══════════════════════════════════════════════════════════════════════════════╗
║ WARNING: It looks like you are running 'npx playwright install' without first ║
║ installing your project's dependencies. ║
║ ║
║ To avoid unexpected behavior, please install your dependencies first, and ║
║ then run Playwright's install command: ║
║ ║
║ npm install ║
║ npx playwright install ║
║ ║
║ If your project does not yet depend on Playwright, first install the ║
║ applicable npm package (most commonly @playwright/test), and ║
║ then run Playwright's install command to download the browsers: ║
║ ║
║ npm install @playwright/test ║
║ npx playwright install ║
║ ║
╚═══════════════════════════════════════════════════════════════════════════════╝
Switching to root user to install dependencies...
++ arch
+ [[ x86_64 == aarch64 ]]
+ '[' -z '' ']'
+ [[ ! -f /etc/os-release ]]
++ bash -c 'source /etc/os-release && echo $ID'
+ ID=fedora
+ [[ fedora != ubuntu ]]
+ [[ fedora != debian ]]
+ echo 'ERROR: cannot install on fedora distribution - only Ubuntu and Debian are supported'
ERROR: cannot install on fedora distribution - only Ubuntu and Debian are supported
+ exit 1
Failed to install browsers
Error: Failed to install chrome
Hypothesis: This is primarily a packaging problem
From inspection, Playwright’s Linux support relies on:
- Installing system dependencies (apt-based today)
- Downloading browser binaries
- Ensuring required shared libraries are present
On Fedora:
- Equivalent packages exist via
dnf
- Required libraries (glibc, libnss, libatk, etc.) are available with similar names
This suggests:
- The main gap is dependency resolution + package manager abstraction
- Not fundamental incompatibility
Suggested approach
-
Remove hard allowlist
- Attempt install on non-Debian systems instead of exiting
-
Add package manager abstraction
-
Support:
apt (existing)
dnf (Fedora/RHEL)
- optionally others later
-
Graceful fallback
-
If auto-install fails:
- Print required packages
- Allow manual install + continue
Effort estimate (rough)
- OS detection refactor: low
- Fedora dependency mapping: moderate (~1–2 days initial)
- Test coverage: moderate
- Maintenance: low once abstraction exists
Why this is worth it
- Expands Playwright adoption in modern Linux environments
- Aligns with dev trends toward newer distros
- Removes need for Docker/Ubuntu workarounds
Request
- Reconsider the Ubuntu/Debian restriction
- Evaluate Fedora as first expansion target
- Happy to help validate or contribute mappings
Summary
playwright-cli install-browsercurrently hard-fails on Fedora and other non-Debian-based distributions. This restriction feels unnecessarily narrow given that most of the logic appears to be packaging/OS-detection rather than deep platform incompatibility.Context
There has already been prior discussion around expanding OS support:
microsoft/playwright#29559
However, the ecosystem has evolved since then, this isn't just about UI testing for web apps, it's about AI agents driving workflows. Don't expect AI developers to alter their operating system just for a tool.
Why this matters now
Fedora is moving faster than Debian/Ubuntu
In a fast-paced AI/dev tooling environment, Fedora (and similar distros) ship newer kernels, libraries, and toolchains significantly earlier than Ubuntu/Debian. Many developers building modern infra are increasingly choosing Fedora-based environments (including container bases).
Playwright is increasingly critical infra
With Playwright being used in CI, scraping, testing, and AI workflows, limiting support to Ubuntu/Debian creates friction for teams standardizing on newer stacks.
The current failure mode is hard-coded, not technical
The installer explicitly blocks non-Debian distros instead of attempting compatibility.
Observed behavior (real output)
Hypothesis: This is primarily a packaging problem
From inspection, Playwright’s Linux support relies on:
On Fedora:
dnfThis suggests:
Suggested approach
Remove hard allowlist
Add package manager abstraction
Support:
apt(existing)dnf(Fedora/RHEL)Graceful fallback
If auto-install fails:
Effort estimate (rough)
Why this is worth it
Request