$linuxjunkies
>

Install Google Chrome or Chromium

Install Google Chrome, Chromium, or ungoogled-chromium on Debian, Ubuntu, Fedora, and Arch. Covers repos, Wayland flags, and default browser setup.

BeginnerUbuntuDebianFedoraArch7 min readUpdated June 7, 2026

Before you start

  • A working desktop environment (X11 or Wayland)
  • sudo or root access for package installation
  • Internet connectivity to reach package repositories

Chrome and Chromium are different products that often get conflated. Google Chrome is the proprietary browser built on the open-source Chromium engine, bundled with Google's sync, DRM, and codec support. Chromium is the upstream open-source project—lighter on tracking but missing Widevine DRM and some codecs by default. A third option, ungoogled-chromium, strips Google API calls entirely. This guide covers all three on Debian/Ubuntu, Fedora/RHEL, and Arch, plus Wayland rendering flags and setting your default browser.

Google Chrome vs Chromium: Quick Comparison

FeatureGoogle ChromeChromiumungoogled-chromium
Google SyncYesLimitedNo
Widevine DRMBundledAbsentAbsent
H.264 / AACBundledDistro-dependentDistro-dependent
Auto-updatesVia repoVia package managerVia package manager
TelemetryYes (opt-out)MinimalNone

Installing Google Chrome

Adding the repo means apt handles future updates automatically.

sudo apt install -y wget gnupg
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub \
  | gpg --dearmor \
  | sudo tee /usr/share/keyrings/google-chrome.gpg > /dev/null

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] \
https://dl.google.com/linux/chrome/deb/ stable main" \
  | sudo tee /etc/apt/sources.list.d/google-chrome.list

sudo apt update
sudo apt install -y google-chrome-stable

Debian / Ubuntu — one-off .deb download

If you just want the package without the repo, download it directly. The installer still adds the repo in /etc/apt/sources.list.d/ post-install unless you remove it.

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install -y ./google-chrome-stable_current_amd64.deb

Fedora / RHEL 8+ / Rocky Linux

sudo dnf install -y fedora-workstation-repositories   # Fedora only
sudo dnf config-manager --set-enabled google-chrome   # Fedora only
sudo dnf install -y google-chrome-stable

On RHEL, Rocky, or AlmaLinux, download the RPM directly:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
sudo dnf install -y ./google-chrome-stable_current_x86_64.rpm

Arch Linux

Chrome is in the AUR. Use your AUR helper of choice:

paru -S google-chrome
# or
yay -S google-chrome

Installing Chromium

Debian / Ubuntu

Ubuntu ships Chromium as a Snap by default since 20.04. If you need a native .deb, use Debian's package or a third-party PPA. On Debian stable, it's a plain deb:

sudo apt install -y chromium

On Ubuntu, that command installs a snap wrapper. To get the actual snap directly:

sudo snap install chromium

Fedora

sudo dnf install -y chromium

Note: Fedora's Chromium build omits patented codecs. Install chromium-freeworld from RPM Fusion for H.264 support:

sudo dnf install -y chromium-freeworld

Arch Linux

sudo pacman -S chromium

Arch's Chromium build includes the VA-API patch and ships reasonably up to date.

Installing ungoogled-chromium

ungoogled-chromium removes all hardcoded Google URL references and disables telemetry at the build level. On Arch it's in the AUR; on other distros use the portable builds or distro-specific repos listed at the project's GitHub.

# Arch
paru -S ungoogled-chromium
# Debian/Ubuntu — via unofficial repo maintained by the project
echo 'deb http://download.opensuse.org/repositories/home:/ungoogled_chromium/Debian_Bookworm/ /'\
  | sudo tee /etc/apt/sources.list.d/ungoogled-chromium.list
curl -s https://download.opensuse.org/repositories/home:/ungoogled_chromium/Debian_Bookworm/Release.key \
  | gpg --dearmor \
  | sudo tee /etc/apt/trusted.gpg.d/ungoogled-chromium.gpg > /dev/null
sudo apt update
sudo apt install -y ungoogled-chromium

Replace Debian_Bookworm with your release name. Check the project's downloads page for current repo URLs—they change between releases.

Enabling Wayland Native Rendering

By default, Chrome/Chromium runs under XWayland, which adds a translation layer and disables fractional scaling. To run natively under Wayland (recommended on GNOME 45+ and KDE Plasma 6), pass two flags.

Persistent flags via the flags file

Chrome reads per-user flags from a plain-text file. The path differs between Chrome and Chromium:

# Google Chrome
mkdir -p ~/.config/google-chrome
echo '--ozone-platform=wayland' >> ~/.config/google-chrome/chrome-flags.conf
echo '--enable-features=WaylandWindowDecorations' >> ~/.config/google-chrome/chrome-flags.conf
# Chromium
mkdir -p ~/.config/chromium
echo '--ozone-platform=wayland' >> ~/.config/chromium/chromium-flags.conf
echo '--enable-features=WaylandWindowDecorations' >> ~/.config/chromium/chromium-flags.conf

Restart the browser after editing. Verify it's running on Wayland by opening chrome://gpu and checking that Ozone platform shows wayland.

Note: On X11 desktops, omit these flags or Chrome will fail to start. On mixed setups (XDG_SESSION_TYPE=x11), use --ozone-platform=auto instead so Chrome detects the session at launch.

Setting Chrome or Chromium as the Default Browser

From the browser itself

Open Settings → Default browser and click Make default. This calls xdg-settings under the hood.

Via xdg-settings (any desktop)

# Google Chrome
xdg-settings set default-web-browser google-chrome.desktop

# Chromium
xdg-settings set default-web-browser chromium.desktop
# On Ubuntu with Snap:
xdg-settings set default-web-browser chromium_chromium.desktop

Via GNOME Settings

gnome-control-center default-apps

Navigate to Web and pick the browser from the list.

Via update-alternatives (Debian/Ubuntu)

sudo update-alternatives --config x-www-browser
sudo update-alternatives --config gnome-www-browser

Verifying the Installation

# Chrome
google-chrome --version

# Chromium
chromium --version
# or, on some distros:
chromium-browser --version

Expected output looks like: Google Chrome 124.0.6367.82 (version will vary).

Also check chrome://gpu in the address bar for hardware acceleration status and the active Ozone platform.

Troubleshooting

  • GPG/keyring errors on apt update: The key path changed. Make sure the key lands in /usr/share/keyrings/ and the sources.list.d entry has the signed-by= attribute pointing to it. Older guides write to /etc/apt/trusted.gpg, which is deprecated since Debian 11.
  • Chrome opens under XWayland despite flags: Check echo $WAYLAND_DISPLAY—if it's empty, your session is X11. Use --ozone-platform=auto or log into a Wayland session.
  • Blank/black screen on Wayland: Try adding --disable-gpu-sandbox temporarily to isolate GPU driver issues. Also ensure your GPU driver supports hardware acceleration under Wayland (vainfo or vdpauinfo).
  • Snap Chromium missing system font/theme: Snaps have limited filesystem access. Use snap connect chromium:dot-config-gtk-3 or switch to a native package if theming is critical.
  • DRM (Netflix, Spotify) not working in Chromium: Chromium lacks Widevine. Either install Google Chrome, or manually install the Widevine CDM by copying it from a Chrome installation to ~/.config/chromium/WidevineCdm/—though this is unsupported and error-prone.
tested on:Ubuntu 24.04Debian 12Fedora 40Arch rolling

Frequently asked questions

Can I install Google Chrome on a 32-bit Linux system?
No. Google dropped 32-bit Linux support for Chrome in 2016. If you need a Chromium-based browser on 32-bit hardware, build Chromium from source or use a different browser entirely.
Why does Ubuntu install Chromium as a Snap instead of a deb?
Starting with Ubuntu 20.04, Canonical redirected the chromium apt package to a Snap wrapper. The native deb no longer exists in Ubuntu's repos; use the Snap directly or add a third-party PPA for a native build.
Does ungoogled-chromium receive timely security updates?
It depends on the packager. Arch's AUR builds tend to stay close to upstream. On other distros, check the repo's commit history—lagging more than two weeks behind a Chrome stable release is a red flag.
How do I get Netflix and other DRM content working in Chromium?
Chromium doesn't ship Widevine. The cleanest solution is to use Google Chrome instead, which bundles the Widevine CDM. Manually copying the CDM from Chrome to Chromium works but is unsupported and may break after updates.
What's the difference between --ozone-platform=wayland and --ozone-platform=auto?
wayland forces Wayland mode and will fail on an X11 session. auto detects the session type at launch using XDG_SESSION_TYPE, making it safer for systems that boot into either session depending on user or display manager choice.

Related guides