I was looking at another topic, Export {AI} Conversation Feature, about Brave’s AI / Leo AI (somewhere in there) not making available a Select All copy (something like that), for gathering up larger amounts of an AI response.
So, recalling my recent use of both ‘Alter.systems’ and ‘Perplexity.ai’, where their copy features work well, from my standpoint of limited use . . . I decided to ask ‘Alter.systems’ the following question:
“For a Manjaro (Linux OS) machine running Brave Browser, somehow Brave Browser makes itself the default Internet browser. Might you have some ideas, why that is?”
On a chance, that some tip might surface, for solving the OP, above.
'Alter.systems' answer:
Yes - it’s usually a side effect of how Brave integrates with desktop environments and system defaults. Let’s break it down.
What’s Actually Happening
Brave installs desktop integration files (.desktop entries and MIME handlers) that aggressively assert Brave as the default handler for web links, HTML files, and HTTP/HTTPS schemes.
Typical culprits:
Post-installation scripts
Brave’s package (especially the brave-bin from AUR) includes post-install scripts that call:
xdg-settings set default-web-browser brave-browser.desktop
or (via Chrome codebase inheritance):
gio mime x-scheme-handler/http brave-browser.desktop
That tells the xdg-mime system that any HTTP/HTTPS links — even those opened from other apps — should launch in Brave.
Autoupdater / profile sync
Brave sometimes resets itself as default after updates, mimicking Chrome’s “restore default” behavior. This happens because Brave re-runs the desktop registration on startup when it detects it’s not default.
Overzealous environment integration
Certain desktop environments - particularly KDE Plasma and Cinnamon - will revert to whatever browser declares itself default most recently, not necessarily what the user chose last. If Brave is launched after a reboot, its self-check logic might trigger this switch automatically.
How to Stop It for Good
Here are layered approaches depending on how deep you want to go.
- Set your preferred browser manually
- For example, with Firefox or Chromium:
xdg-settings set default-web-browser firefox.desktop
- Then check:
xdg-settings get default-web-browser
- Disable Brave’s self-check
- Run Brave with a flag that disables its “default browser check”:
brave-browser --no-default-browser-check
- If you use a desktop launcher, edit
/usr/share/applications/brave-browser.desktop or ~/.local/share/applications/brave-browser.desktop and modify the Exec line to:
Exec=/usr/bin/brave-browser --no-default-browser-check %U
- Lock system defaults
- For persistent control, remove Brave’s right to overwrite these settings:
sudo chmod 444 /usr/share/applications/brave-browser.desktop
- or create a “shadow copy”:
mkdir -p ~/.local/share/applications
cp /usr/share/applications/brave-browser.desktop ~/.local/share/applications/
chmod 444 ~/.local/share/applications/brave-browser.desktop
- Now even if Brave updates itself, your system will ignore its self-registration attempts.
- Disable autoupdate (if desired)
- On Linux, Brave’s updates often reapply system integrations. Disable
autoupdate by modifying or removing:
/etc/cron.daily/brave-browser
/etc/apt/sources.list.d/brave-browser-release.list (Debian/Ubuntu-based)
On Manjaro (Arch-based), you can switch to brave-bin from AUR but add a NoUpgrade rule in /etc/pacman.conf:
NoUpgrade = brave-browser.desktop
'Perplexity.ai' answer:
Brave can set itself as the default browser on Manjaro for a few different technical and packaging reasons, most of which come down to how it registers itself with the system and desktop environment.
Likely technical causes
- Installer or package scripts override defaults. Some Brave packages (for example on other distros) have been observed to change the system’s “sensible-browser” or default browser setting as part of installation or update, effectively replacing Firefox or whatever was set before. On Manjaro, something similar can happen if the package or a post-install script updates default handler settings.
- Desktop environment integration. Desktop environments like Plasma or Xfce rely on
.desktop files and default-application settings (often managed through xdg-settings and MIME associations). If Brave’s .desktop file is registered with higher priority or if its startup routine calls xdg-settings set default-web-browser brave-browser.desktop, it can silently take over the HTTP/HTTPS handlers.
- Use of “generic” browser commands. Many Linux systems route “open a web page” through generic commands like
xdg-open, sensible-browser, or environment variables such as BROWSER. If installing Brave changes the default for those commands (for example, pointing generic browser shortcuts to Brave), then any application that uses the generic command will launch Brave instead of your chosen browser.
- Persisting associations after uninstall. There are reports where, even after Brave is removed, the default handler for HTTP/HTTPS or browser shortcuts still points to
brave, causing “failed to execute default Web Browser” errors. This shows that Brave (or its install method) can write associations that are not automatically reverted.
Why it keeps coming back after you change it
- Mismatch between DE settings and system defaults. You might change the default browser in Plasma/Xfce’s GUI, but generic tools or other apps may still use old associations from
xdg-mime, xdg-settings, or environment variables that Brave modified.
- Repeated checks on startup. Brave, like Chrome/Chromium, checks whether it is the default browser at startup. If it thinks it is not, it may repeatedly offer (or, in some builds/configurations, aggressively try) to set itself as default, which can override your manual choice again.
Things worth checking on your system
- In your desktop environment’s Default Applications or Preferred Applications settings, confirm that Firefox (or your preferred browser) is selected for “Web browser”.
- Run or re-run commands like
xdg-settings get default-web-browser and make sure they don’t report brave-browser.desktop when you expect something else.
- Inspect or reset MIME handlers for
x-scheme-handler/http and x-scheme-handler/https so they point to the browser you actually want, not Brave.
In short, the behavior you see is not unique to Manjaro; Brave is known on several Linux distributions to aggressively register itself as the default browser by adjusting system and desktop-level default handlers, and those changes can persist or reapply after updates.