How to Install Opera on Debian (13, 12, 11)

Last updated Tuesday, March 3, 2026 2:38 pm 13 min read 3 comments

If you want Opera’s built-in VPN, ad blocker, and sidebar tools without managing random download files, install Opera Browser on Debian Linux from Opera’s official APT repository. This keeps updates in your normal apt workflow and makes version checks straightforward.

These steps apply to Debian 13, 12, and 11 using either Debian’s extrepo method or a manual DEB822 repository file. After setup, you can install opera-stable, opera-gx-stable, opera-beta, or opera-developer depending on how quickly you want new features.

Instructions cover Debian 13 (Trixie), Debian 12 (Bookworm), and Debian 11 (Bullseye). Opera’s APT repository uses a universal stable suite, so the repository setup stays the same across supported releases.

Install Opera Browser on Debian Linux

Start with a full package index refresh before enabling the Opera repository.

sudo apt update && sudo apt upgrade

This guide uses sudo for commands that need root privileges. If your account is not in the sudoers file yet, switch to root or review how to add a user to sudoers on Debian.

Choose one repository setup method below, then continue to package installation.

MethodChannelUpdatesGPG Key ManagementBest For
extrepo (Recommended)Opera APT RepositoryAutomatic via APTAutomaticMost users; quick setup with minimal configuration
Manual RepositoryOpera APT RepositoryAutomatic via APTManual downloadScripted deployments, custom configurations, or learning APT internals

Use only one installation method. Do not configure both extrepo and the manual DEB822 repository on the same machine. Both methods target the same Opera source with different Signed-By paths, which can break apt update with a hard conflict error.

For most systems, pick extrepo. It manages repository metadata and signing keys automatically. Use the manual method when you need explicit control over source files and key locations.

Method 1: Install Opera on Debian with extrepo

The extrepo tool is Debian’s official utility for managing external repositories. It handles GPG key downloads, repository configuration, and version detection automatically, which makes it the simplest way to install Opera on Debian.

Install extrepo on Debian

Install the extrepo package from Debian’s repositories:

sudo apt install extrepo

Enable the extrepo Non-Free Policy

Since Opera is proprietary software, extrepo requires enabling the non-free policy before you can add Opera’s repository. You can do this with a single command:

sudo sed -i 's/# - non-free/- non-free/' /etc/extrepo/config.yaml

The command removes the comment marker from - non-free in /etc/extrepo/config.yaml, which allows extrepo to use non-free repository definitions such as Opera.

If you prefer to edit the file manually, open /etc/extrepo/config.yaml in a text editor and remove the # character from the - non-free line under enabled_policies.

Verify Opera Repository Availability

Before enabling the repository, confirm that extrepo can find Opera’s repository definition:

extrepo search opera

You should see output similar to the following:

Found opera_stable:
---
description: The Opera Browser (final releases)
policy: non-free
source:
  Architectures: amd64 i386
  Components: non-free
  Suites: stable
  Types: deb
  URIs: https://deb.opera.com/opera-stable

This output confirms that extrepo recognizes the Opera repository and has the correct metadata to configure it.

Enable the Opera Repository with extrepo

With the non-free policy enabled, add Opera’s official repository:

sudo extrepo enable opera_stable

Despite the name opera_stable, this single repository provides opera-stable, opera-gx-stable, opera-beta, and opera-developer.

Update the package index so APT can read packages from the newly added repository:

sudo apt update

Verify that APT recognizes the Opera repository and lists available packages:

apt search opera

You should see Opera packages for stable, GX, beta, and developer channels:

opera-beta/stable 126.0.x amd64
  Fast and free alternative web browser (beta stream)

opera-developer/stable 130.0.x amd64
  Fast and free alternative web browser (developer stream)

opera-gx-stable/stable 127.0.x amd64
  Fast and free alternative web browser (gaming stream)

opera-stable/stable 128.0.x amd64
  Fast and free alternative web browser

Confirm the repository source by checking package policy:

apt-cache policy opera-stable
opera-stable:
  Installed: (none)
  Candidate: 128.0.x
  Version table:
    128.0.x 500
        500 https://deb.opera.com/opera-stable stable/non-free amd64 Packages

The version numbers in your output will reflect the current Opera releases at the time of installation. The key indicator of success is seeing the https://deb.opera.com URL in the version table.

Once verified, continue to the Install Opera Packages on Debian section below.

Method 2: Install Opera on Debian with Manual DEB822 Repository

Alternatively, if you prefer explicit control over repository configuration or need to script the installation, you can set up Opera’s repository manually using the modern DEB822 format. This approach gives you full visibility into the GPG key and repository configuration being added to your system.

Install Manual Method Prerequisites

Before proceeding, install the required tools for downloading and verifying the GPG key:

sudo apt install curl gpg -y

The curl command handles the download, while gpg converts the key from ASCII-armored format to the binary format APT requires.

Import the Opera Repository GPG Key

Download and install Opera’s GPG signing key to verify package authenticity:

curl -fsSL https://deb.opera.com/archive.key | sudo gpg --dearmor -o /usr/share/keyrings/opera.gpg

This pipeline uses curl to fetch the ASCII-armored key, converts it with gpg --dearmor, and writes the binary key file to /usr/share/keyrings/opera.gpg. The -fsSL flags fail fast on HTTP errors and keep output clean.

Add the Opera DEB822 Repository File

Now, create the repository configuration file using the modern DEB822 format:

sudo tee /etc/apt/sources.list.d/opera.sources > /dev/null <<EOF
Types: deb
URIs: https://deb.opera.com/opera-stable/
Suites: stable
Components: non-free
Architectures: amd64
Signed-By: /usr/share/keyrings/opera.gpg
EOF

This configuration specifies the repository type, location, suite, component, architecture, and GPG key path for package verification. The DEB822 format uses explicit field names, making the configuration more readable and less error-prone than the older one-line format.

The DEB822 .sources format is the modern standard for APT repository configuration. All supported Debian versions (11, 12, 13, and newer) fully support this format, which offers clearer syntax and better error messages than legacy .list files.

Verify Manual Repository Configuration

Update the package index to include the new repository:

sudo apt update

Look for output confirming the Opera repository was fetched:

Get:4 https://deb.opera.com/opera-stable stable InRelease [2416 B]
Get:5 https://deb.opera.com/opera-stable stable/non-free amd64 Packages [1161 B]

Confirm that APT recognizes the Opera repository:

apt-cache policy opera-stable
opera-stable:
  Installed: (none)
  Candidate: 128.0.x
  Version table:
    128.0.x 500
        500 https://deb.opera.com/opera-stable stable/non-free amd64 Packages

This output shows Opera available from the official repository with a 500 priority, which confirms successful setup.

Install Opera Packages on Debian

After repository setup, install one or more Opera packages. Stable is the default for daily use, GX adds Opera’s gaming-focused UI, beta previews near-future features, and developer is the earliest testing channel.

Install Opera Stable Build

Install the stable version of Opera for everyday browsing:

sudo apt install opera-stable

During installation, you may be prompted to configure Opera for version upgrades. Select NO and press Enter. However, Opera’s installer creates a duplicate .list file regardless of your selection, so you need to remove it after installation to prevent APT warnings.

After installation completes, remove the duplicate repository file that Opera’s installer created:

sudo rm -f /etc/apt/sources.list.d/opera-stable.list

This cleanup step applies to both extrepo and manual repository methods. Opera’s postinst script always creates this .list file, which duplicates your existing .sources configuration and triggers APT warnings during updates.

Verify the installation by checking the version:

opera --version
128.0.x

Install Opera GX Build (Optional)

Install Opera GX if you want the GX interface and defaults:

sudo apt install opera-gx-stable

After installation, remove the duplicate repository file created by the installer:

sudo rm -f /etc/apt/sources.list.d/opera-gx-stable.list

Verify Opera GX:

opera-gx --version
127.0.x

Install Opera Beta Build (Optional)

The beta channel provides early access to features planned for the next stable release. You can install it alongside or instead of stable:

sudo apt install opera-beta

As before, select NO when prompted. After installation, remove the duplicate repository file:

sudo rm -f /etc/apt/sources.list.d/opera-beta.list

Then verify the installation:

opera-beta --version
126.0.x

Install Opera Developer Build (Optional)

The developer channel provides early access to experimental features for testing purposes. This version may contain bugs, so avoid using it for daily browsing:

sudo apt install opera-developer

Again, select NO when prompted. After installation, remove the duplicate repository file:

sudo rm -f /etc/apt/sources.list.d/opera-developer.list

Then verify the installation:

opera-developer --version
130.0.x

Launch Opera Browser on Debian

Launch Opera from Terminal

Start Opera directly from the terminal using the command for your installed version. To start the stable version:

opera

Alternatively, launch GX, beta, or developer builds with their package commands:

opera-gx
opera-beta
opera-developer

Launch Opera from the Applications Menu

You can also launch Opera from your desktop environment:

  1. Click on Activities in the top-left corner of your screen (or press the Super key).
  2. Type “Opera” in the search bar.
  3. Click the Opera icon for the version you want to launch (Stable, GX, Beta, or Developer).

Enable Opera Built-in Features

After launching Opera for the first time, you can enable its built-in privacy features:

  • VPN: Click the VPN badge in the address bar or go to Settings → Privacy and Security → VPN to enable the free built-in VPN.
  • Ad Blocker: Go to Settings → Privacy and Security → Block ads and surf the web up to three times faster.
  • Sidebar Workspaces: Click the three-line menu in the sidebar to access social apps like Messenger, WhatsApp, and Telegram without leaving the browser.

Update Opera Browser on Debian

Opera receives updates through your regular system upgrade cycle. To update all packages including Opera:

sudo apt update && sudo apt upgrade

Alternatively, to update only Opera without upgrading other packages, use the --only-upgrade flag:

sudo apt update && sudo apt install --only-upgrade opera-stable

For GX, beta, or developer builds, substitute the package name:

sudo apt install --only-upgrade opera-gx-stable
sudo apt install --only-upgrade opera-beta
sudo apt install --only-upgrade opera-developer

Afterwards, verify the update completed by checking the version:

opera --version
128.0.x

Troubleshoot Opera Installation on Debian

Fix Duplicate Opera Repository Sources Warning

If you see a warning during apt update about duplicate repository sources, Opera’s installer created its own .list files that conflict with your existing configuration. This typically looks like:

W: Target Packages (non-free/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/extrepo_opera_stable.sources:1 and /etc/apt/sources.list.d/opera-stable.list:4

To resolve this, remove the duplicate .list files created by Opera’s installer:

sudo rm -f /etc/apt/sources.list.d/opera-*.list

Then verify the warning is resolved:

sudo apt update
Hit:1 http://deb.debian.org/debian trixie InRelease
Hit:2 http://security.debian.org/debian-security trixie-security InRelease
Hit:3 https://deb.opera.com/opera-stable stable InRelease
Reading package lists... Done

Regular apt upgrade operations do not regenerate these duplicate files. Only a fresh install or reinstall of Opera triggers the installer’s postinst script, so deleting the files once is sufficient.

Fix Opera Signed-By Conflicts Between Methods

If you configured both extrepo and a manual opera.sources file, apt update can fail with a hard conflict:

E: Conflicting values set for option Signed-By regarding source https://deb.opera.com/opera-stable/ stable: /var/lib/extrepo/keys/opera_stable.asc != /usr/share/keyrings/opera.gpg
E: The list of sources could not be read.

Keep one method and remove the other configuration.

Keep extrepo, remove manual files:

sudo rm -f /etc/apt/sources.list.d/opera.sources
sudo rm -f /usr/share/keyrings/opera.gpg
sudo apt update

Keep manual method, remove extrepo files:

sudo extrepo disable opera_stable
sudo rm -f /etc/apt/sources.list.d/extrepo_opera_stable.sources
sudo rm -f /var/lib/extrepo/keys/opera_stable.asc
sudo apt update

Fix extrepo Non-Free Policy for Opera Repository

If you see “repository ‘opera_stable’ is disabled by policies” when trying to enable the Opera repository, the non-free policy is not active. Check the current configuration:

grep -A5 "enabled_policies" /etc/extrepo/config.yaml

The output should show - non-free without a leading #:

enabled_policies:
- main
# - contrib
- non-free

If the line is still commented, run the sed command to enable it:

sudo sed -i 's/# - non-free/- non-free/' /etc/extrepo/config.yaml

Then retry enabling the repository:

sudo extrepo enable opera_stable

Fix Opera GPG Key Import Failures

If the manual GPG key import fails with an error like “gpg: no valid OpenPGP data found,” verify that the key URL is accessible:

curl -fsSL https://deb.opera.com/archive.key | head -5

You should see the beginning of a PGP key block:

-----BEGIN PGP PUBLIC KEY BLOCK-----

mQGNBGgrEnABDAC3S++y9OPF79pFJApWv5Ke0czoirWLN7a0rzScY2v+9LYWYVfU
XrZkDoVLJrxI6U/WvNbLqyrsyg9D9jZNksp0x5K9Fe9Phr6xAdRrpdmXu5xYGpBP

If you see HTML content or an error message instead, check your network connection or try again later. If the issue persists, consider using the extrepo method instead, which handles key management automatically.

Fix Opera Package Not Found After Repository Setup

If apt-cache policy opera-stable shows no candidate version after adding the repository, verify the repository file was created correctly:

cat /etc/apt/sources.list.d/opera.sources

The output should match the configuration shown in the manual installation section. If the file is empty or incorrect, recreate it using the tee command from Method 2. Then run:

sudo apt update
apt-cache policy opera-stable

Remove Opera Browser from Debian

Uninstall Opera Packages

To uninstall Opera Browser, remove the package for your installed version:

sudo apt remove --purge opera-stable

For GX, beta, or developer versions, run the corresponding commands:

sudo apt remove --purge opera-gx-stable
sudo apt remove --purge opera-beta
sudo apt remove --purge opera-developer

Remove orphaned dependencies that were installed alongside Opera:

sudo apt autoremove

Remove Opera Repository

If you no longer plan to use Opera, you should also remove the repository configuration and GPG key to keep your system clean.

If you used extrepo (Method 1):

sudo extrepo disable opera_stable
sudo rm -f /etc/apt/sources.list.d/extrepo_opera_stable.sources
sudo rm -f /var/lib/extrepo/keys/opera_stable.asc

The extrepo disable command sets Enabled: no but keeps source and key files. Remove both files if you want a full cleanup.

If you configured the repository manually (Method 2):

sudo rm -f /etc/apt/sources.list.d/opera.sources
sudo rm -f /usr/share/keyrings/opera.gpg
sudo rm -f /etc/apt/sources.list.d/opera-*.list

Refresh the package cache and verify the repository is removed:

sudo apt update
apt-cache policy opera-stable

You should see the following output, confirming removal (no repository URL appears):

opera-stable:
  Installed: (none)
  Candidate: (none)
  Version table:

Remove Opera User Data

The following command permanently deletes your Opera browsing data, including bookmarks, history, saved passwords, and extensions. Back up your profile first if you want to preserve anything: cp -r ~/.config/opera ~/.config/opera-backup.

To completely remove Opera user data:

rm -rf ~/.config/opera ~/.config/opera-gx ~/.config/opera-beta ~/.config/opera-developer
rm -rf ~/.cache/opera ~/.cache/opera-gx ~/.cache/opera-beta ~/.cache/opera-developer

Restore Repository Configuration

If you accidentally remove the wrong file and need to restore the Opera repository, use the appropriate method based on how you originally configured it.

For extrepo:

sudo extrepo enable opera_stable
sudo apt update

For manual configuration:

curl -fsSL https://deb.opera.com/archive.key | sudo gpg --dearmor -o /usr/share/keyrings/opera.gpg
sudo tee /etc/apt/sources.list.d/opera.sources > /dev/null <<EOF
Types: deb
URIs: https://deb.opera.com/opera-stable/
Suites: stable
Components: non-free
Architectures: amd64
Signed-By: /usr/share/keyrings/opera.gpg
EOF
sudo apt update

Frequently Asked Questions

Is Opera GX available on Debian 13, 12, and 11?

Yes. Opera’s repository currently provides the opera-gx-stable package on Debian 13, 12, and 11 when the repository is configured correctly.

Do Debian 13, 12, and 11 use different Opera installation commands?

Usually no. Opera’s repository setup and package commands are the same on Debian 13, 12, and 11. Differences are mostly package version numbers in command output.

Can I configure both extrepo and manual opera.sources on the same system?

No. Both methods point to the same Opera source but use different Signed-By key paths, which can break apt update with a conflict error. Use one method only.

Why does apt warn about duplicate Opera repository files after installation?

Opera package installers can create legacy .list files such as opera-stable.list, opera-gx-stable.list, opera-beta.list, or opera-developer.list. Remove duplicate files in /etc/apt/sources.list.d/ and run apt update again.

Does Opera’s Debian repository support arm64 packages?

The repository metadata and current package policy output for this guide show amd64 packages for Opera desktop builds. If you need arm64 browser support, use a browser with native arm64 Debian packages.

Conclusion

Install Opera Browser on Debian Linux with either extrepo or manual DEB822 setup, then keep one repository method to avoid APT conflicts. For other browser options, review guides to install Brave on Debian, install Vivaldi on Debian, install Google Chrome on Debian, or install Firefox on Debian.

Search LinuxCapable

Need another guide?

Search LinuxCapable for package installs, commands, troubleshooting, and follow-up guides related to what you just read.

Found this guide useful?

Support LinuxCapable to keep tutorials free and up to date.

Buy me a coffee Buy me a coffee

3 thoughts on “How to Install Opera on Debian (13, 12, 11)”

  1. I had Opera 119 installed (I can’t remember how I did it), but, it wasn’t upgrading. Following your instructions I got Opera 123.

    There was one little hitch. “apt update” complained about stuff configured multiple times. I was able to get rid of the complaints by renaming /etc/apt/sources.list.d/opera-stable.list (I assume that was created when I initially installed Opera 119 (your instructions create opera.list)), but, something recreated it as an empty file. How do I clean that up?

    Reply
    • Thanks for reporting this, Christopher, and glad you’re on Opera 123 now. The duplicate entries warning happens because Opera’s installer creates its own opera-stable.list file alongside the opera.sources file configured in the guide.

      Simply delete the duplicate file:

      sudo rm /etc/apt/sources.list.d/opera-stable.list

      This is a one-time fix. The file is only created during initial installation and will not be recreated during future updates. After removing it, run sudo apt update and the warnings should be gone.

      Reply
Before commenting, please review our Comments Policy.
Formatting tips for your comment

You can use basic HTML to format your comment. Useful tags currently allowed:

You type Result
<code>command</code> command
<strong>bold</strong> bold
<em>italic</em> italic
<blockquote>quote</blockquote> quote block

Leave a Comment

We read and reply to every comment - let us know how we can help or improve this guide.

Let us know you are human: