Keeping headless Chromium up to date ensures you have the latest security patches, bug fixes, and web standards support. The update process varies by operating system and installation method.
Linux Systems
Debian/Ubuntu (APT Package Manager)
Update the package repository and upgrade Chromium:
# Update package lists
sudo apt update
# Upgrade Chromium to latest version
sudo apt install --only-upgrade chromium-browser
# Alternative: upgrade all packages including Chromium
sudo apt upgrade
# Verify the updated version
chromium-browser --version
RHEL/CentOS/Fedora (YUM/DNF)
For Red Hat-based distributions:
# Fedora (DNF)
sudo dnf update chromium
# CentOS/RHEL (YUM)
sudo yum update chromium
# Verify version
chromium --version
Snap Package
If installed via Snap:
# Update Chromium snap
sudo snap refresh chromium
# Check version
chromium --version
Windows Systems
Using Chocolatey Package Manager
The recommended approach for Windows developers:
# Run PowerShell as Administrator
# Update Chocolatey itself first
choco upgrade chocolatey
# Upgrade Chromium
choco upgrade chromium
# Verify installation
chromium --version
Using Scoop Package Manager
Alternative Windows package manager:
# Update Scoop
scoop update
# Upgrade Chromium
scoop update chromium
# Check version
chromium --version
Manual Installation
- Download the latest Chromium build from chromium.org
- Extract the archive to your preferred location
- Replace your existing Chromium installation
- Update your PATH environment variable if necessary
macOS Systems
Using Homebrew (Recommended)
# Update Homebrew formulas
brew update
# Upgrade Chromium specifically
brew upgrade chromium
# Or upgrade all packages
brew upgrade
# Verify version
chromium --version
Using MacPorts
# Update MacPorts
sudo port selfupdate
# Upgrade Chromium
sudo port upgrade chromium
# Check version
chromium --version
Docker Environments
Popular Chromium Docker Images
Update your Docker images to get the latest Chromium:
# Google Chrome Headless (official)
docker pull gcr.io/zenika-hub/alpine-chrome:latest
# Selenium Chrome
docker pull selenium/standalone-chrome:latest
# Puppeteer with Chromium
docker pull buildkite/puppeteer:latest
# Playwright with Chromium
docker pull mcr.microsoft.com/playwright:latest
Docker Compose Example
version: '3.8'
services:
chromium:
image: gcr.io/zenika-hub/alpine-chrome:latest
command: --no-sandbox --headless --disable-gpu --remote-debugging-port=9222
ports:
- "9222:9222"
Update and rebuild:
# Pull latest images
docker-compose pull
# Rebuild and restart containers
docker-compose up --build -d
Programming Language Specific Updates
Node.js (Puppeteer)
Puppeteer downloads its own Chromium version:
# Update Puppeteer (includes latest Chromium)
npm update puppeteer
# Or install specific version
npm install puppeteer@latest
Python (Selenium)
Update ChromeDriver and ensure browser compatibility:
# Update Selenium
pip install --upgrade selenium
# Install/update ChromeDriver manager
pip install --upgrade webdriver-manager
# In your Python code
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service
service = Service(ChromeDriverManager().install())
Java (Selenium)
Update your Maven/Gradle dependencies:
<!-- Maven pom.xml -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>4.15.0</version>
</dependency>
Version Verification
After updating, verify your Chromium version:
# Check Chromium version
chromium --version
chromium-browser --version # Ubuntu/Debian
# Check ChromeDriver version (if using Selenium)
chromedriver --version
# List Chrome/Chromium processes
ps aux | grep chrome
Troubleshooting Common Issues
Version Mismatch Errors
If you encounter ChromeDriver compatibility issues:
# Check both versions
chromium --version
chromedriver --version
# Download matching ChromeDriver from:
# https://chromedriver.chromium.org/downloads
Permission Issues (Linux)
# Fix permissions after manual installation
sudo chown -R $USER:$USER /path/to/chromium
chmod +x /path/to/chromium/chrome
Dependency Issues
# Ubuntu/Debian: Fix missing dependencies
sudo apt install --fix-broken
# Update font cache after Chromium update
sudo fc-cache -f -v
Best Practices
Automated Updates
Set up automatic updates for production environments:
# Ubuntu/Debian: Enable unattended upgrades
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
Version Pinning
For stable environments, pin specific versions:
# APT: Hold package version
sudo apt-mark hold chromium-browser
# Unhold when ready to update
sudo apt-mark unhold chromium-browser
Testing Updates
Always test Chromium updates in development first:
# Create test environment
docker run -it --rm ubuntu:20.04 bash
apt update && apt install -y chromium-browser
chromium-browser --version --headless --no-sandbox
Security Considerations
- Regular Updates: Chromium releases security patches frequently
- Verify Sources: Only download from official repositories
- Check Signatures: Verify package signatures when possible
- Monitor CVEs: Subscribe to Chromium security advisories
Keep your headless Chromium installation current to maintain security and compatibility with modern web applications.