TL;DR

Store Cost Time Result
Firefox Add-ons free 3 days approved (automated)
Chrome Web Store $5 once 5 days rejected once, then live
GNOME Extensions free 8+ days still in review

Earful is an open-source GNOME extension that gives every player its own controls in the top bar (part 1). This post is about getting it into three stores.

Why a GNOME extension needs browser stores

GNOME sees media players through MPRIS (D-Bus). A browser is one player for all its tabs, so two YouTube tabs and a Twitch stream are just "Chrome", with one shared set of controls. The Earful Bridge add-on publishes every tab as its own player: its own card, play/pause and volume, even on sites without a volume control.

Every tab that plays gets its own row in the menu

Chrome Web Store: rejected for "keyword spam"

One line of my description listed the Chromium-based browsers it runs in. That was the entire problem; code and permissions passed. I replaced it with "Chrome and other Chromium-based browsers", resubmitted the same zip, and it was live two days later.

The rejected description line and the one that went live

Gotchas: no brand-name lists in the description; an add-on with a content script on all sites gets an in-depth review, so explain each permission clearly.

Firefox Add-ons: three days, automated

Approved by automated screening; a human may review later. Declaring data collection in the manifest is required for new add-ons.

GNOME Extensions: humans read your code

Volunteer reviewers read the source, so it takes longer.

  • Uploading a new version auto-rejects the one in the queue.
  • The reviewer asked if the code was AI-generated. It was AI-assisted (Claude), and I said so. Their rule: AI is fine as a tool, but no unnecessary code, made-up APIs or prompt-like comments. I had Claude check the codebase against their guidelines and cleaned up what it found.

Timeline: Firefox approved in 3 days, Chrome rejected then live in 5, GNOME still in review

Coming in 0.3.0

New layouts, volume styles, popup styles and settings. Small reveal: change a player's volume by scrolling the mouse wheel over its cover.

Sneak peek of 0.3.0: a card with a standing LED volume, and a cover that fills like water as you scroll

Try it

Nothing leaves your computer. A ⭐ on GitHub helps a lot.

Have you published to one of these stores? How long did your review take?