Swapping Chrome for Brave on Windows

Unfortunately, Google phased out Manifest V2 in Chrome, so the full version of uBlock Origin is no longer available:
In late 2024, Google completed its transition to Manifest V3 in Chrome, which fundamentally changed how browser extensions work. As a result, the full version of uBlock Origin is no longer available for Chrome users. Here's what happened and what your options are now.
Let's switch to Brave, a more privacy-focused browser.
Installation
We can install it from the command-line:
winget install Brave.Brave
Disable Brave features
I don't need Leo, Wallet, or the built-in VPN. We can disable these features with a registry policy. Run the following in an elevated terminal:
& {
if (!(whoami /groups | findstr S-1-16-12288)) {
throw 'Run PowerShell as Administrator.'
}
$policyPath = 'HKLM:\SOFTWARE\Policies\BraveSoftware\Brave'
New-Item -Path $policyPath -Force | Out-Null
$policies = @{
BraveAIChatEnabled = 0
BraveWalletDisabled = 1
BraveVPNDisabled = 1
}
foreach ($policy in $policies.GetEnumerator()) {
New-ItemProperty `
-Path $policyPath `
-Name $policy.Key `
-PropertyType DWord `
-Value $policy.Value `
-Force | Out-Null
}
Write-Host 'Brave policies applied successfully.'
Write-Host 'Restart Brave for the changes to take effect.'
}
Restart Brave and check brave://policy to verify that the policies are active.
"Help" my muscle memory
I'm quick to do ctrl+v and type chrome. But if you want to run Brave (and you still have Chrome due to company policy), you have to patch it in the registry:
& {
$brave = @(
"$env:ProgramFiles\BraveSoftware\Brave-Browser\Application\brave.exe"
"${env:ProgramFiles(x86)}\BraveSoftware\Brave-Browser\Application\brave.exe"
"$env:LOCALAPPDATA\BraveSoftware\Brave-Browser\Application\brave.exe"
) | Where-Object { $_ -and (Test-Path $_) } | Select-Object -First 1
if (-not $brave) {
throw 'Brave niet gevonden.'
}
$key = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe'
New-Item $key -Force | Out-Null
Set-Item $key -Value $brave
Set-ItemProperty $key -Name 'Path' -Value (Split-Path $brave)
$item = Get-Item $key
Write-Host 'Registry patch gezet:'
Write-Host " chrome.exe -> $($item.GetValue(''))"
Write-Host " Path -> $($item.GetValue('Path'))"
}
Fix the profile icons
I'm using 2 profiles on my browser, one for business, one for private. In Chrome one can load custom profile pictures, but Brave does not have this much wanted feature. Fortunately, there is a workaround: just copy the two pictures to %LOCALAPPDATA%\BraveSoftware\Brave-Browser\User Data\Avatars and give them these file names:
- avatar_edgy_brave.png (second on the top row)
- avatar_edgy_ocean.png (third on the top row)
So now my how screen looks like this:
