Brave Browser does not have official representation in the main Gentoo repository. To make matters worse, third-party overlays frequently fall several versions behind or become abandoned entirely, and the Brave team does not provide an official overlay either. This can be incredibly frustrating, especially when critical Chromium security fixes or new features drop and you want them immediately.
This is a simple, makeshift solution designed to bridge that gap. It automates the process by checking the official Brave Versions API directly, fetching the latest release metadata, and automatically updating a local Gentoo overlay ebuild.
Ensure you have a local repository overlay enabled. This is typically configured via a file inside /etc/portage/repos.conf/ (such as eselect-repo.conf or a dedicated local.conf).
Its contents should look something like this:
[local]
location = /var/db/repos/localNext, initialize the overlay directory structure and basic configuration files (run as root):
sudo mkdir -p /var/db/repos/local/{metadata,profiles}
echo 'local' | sudo tee /var/db/repos/local/profiles/repo_name
echo '8' | sudo tee /var/db/repos/local/profiles/eapi
sudo touch /var/db/repos/local/metadata/layout.confPopulate /var/db/repos/local/metadata/layout.conf with the following lines:
masters = gentoo
thin-manifests = true
sign-manifests = falseCreate the specific package directory inside your local overlay (run as root):
sudo mkdir -p /var/db/repos/local/www-client/brave-bin- Download all files from the brave-bin directory of this repository and place them inside
/var/db/repos/local/www-client/brave-bin. - Download update_brave_ebuild_global.py and move it to a local superuser binary directory, preferably
/usr/local/sbin/.
Open your root crontab configuration:
sudo crontab -eAdd a directive to run the updater script periodically. For example, to check for updates every 15th minute of an hour, add the following line:
15 * * * * /usr/local/sbin/update_brave_ebuild_global.py
⚠️ Disclaimer & Maintenance Note: This project was urgently half-vibecoded to solve an immediate annoyance. By default, it does not clean up older ebuild versions from your local repository. Please make sure to manually prune obsolete ebuilds from time to time to prevent clutter.