Desktop

Install TeamViewer on Fedora 45 / 44: NOKEY and Wayland Fixes

TeamViewer ships one RPM for Fedora. Getting it installed is easy. Getting it to verify, update and accept a session on a current Fedora desktop takes three extra decisions, and the vendor page mentions none of them.

Original content from computingforgeeks.com - post 5257

This guide installs TeamViewer on Fedora with its signing key imported first, so the package is actually verified instead of skipped. It covers the TeamViewer repository the RPM drops in, the Wayland screen sharing prompt on GNOME, the account TeamViewer now demands for outgoing connections, and a clean removal. Every command below was run on Fedora 45 and Fedora 44 with the Workstation desktop in October 2026 with TeamViewer 15.82, SELinux enforcing.

What changed on Fedora 45 and Fedora 44

Two platform changes hit TeamViewer directly. Fedora 45 turned on rpm signature enforcement, so a plain rpm -ivh of the TeamViewer RPM now fails until the key is imported. And GNOME on both releases runs Wayland only, with no Xorg login session left to fall back to. We checked both on Fedora 45 and Fedora 44 machines running the Workstation desktop:

BehaviourFedora 45Fedora 44
rpm packagerpm-6.1.0rpm-6.0.1
%{_pkgverify_level}alldigest
sudo rpm -ivh, key not imported, libminizip already presentRefused: does not verify, NOKEYInstalls unverified
sudo dnf install ./teamviewer.x86_64.rpm, key not importedInstalls, OpenPGP check skippedInstalls, OpenPGP check skipped
Same with localpkg_gpgcheck=1, key importedInstalls, signature checkedInstalls, signature checked
GNOME login sessionsWayland only (gnome-shell 51)Wayland only (gnome-shell 50)
teamviewerd SELinux domainunconfined_service_t, 0 AVC denialsunconfined_service_t, 0 AVC denials

The dnf row is the one people miss. dnf installs a local RPM without checking its signature at all, because localpkg_gpgcheck defaults to 0. The install looks clean, but nothing proved the file came from TeamViewer.

Download the TeamViewer RPM

The download URL below always redirects to the current build, so it never needs a version number. Fetch it into your home directory:

cd ~
curl -sSLO https://download.teamviewer.com/download/linux/teamviewer.x86_64.rpm

Check the signature before anything else:

rpm -K teamviewer.x86_64.rpm

Both releases reject it at this point, with exit code 1:

teamviewer.x86_64.rpm: digests SIGNATURES NOT OK

The digests are fine, so the file is not corrupted. The signature fails because the signing key isn’t in the rpm keyring yet. Do not try sudo rpm -ivh on it. On a fresh system it stops first on a missing dependency, libminizip.so.1()(64bit), which dnf pulls in for you later. We installed minizip-ng-compat by hand to isolate the signature check, and then Fedora 45 refused the file and nothing got installed:

warning: teamviewer.x86_64.rpm: Header OpenPGP V4 RSA/SHA256 signature, key ID ef9dbdc73b7d1a07: NOKEY
Verifying...                          ########################################
Preparing...                          ########################################
	package teamviewer-15.82.6-0.x86_64 does not verify: Header OpenPGP V4 RSA/SHA256 signature, key ID ef9dbdc73b7d1a07: NOKEY

Fedora 44, under the same conditions, installed it unverified. The NOKEY and “does not verify” guide explains the enforcement change in full. For TeamViewer, the fix is one key.

Import the TeamViewer signing key

Key ID ef9dbdc73b7d1a07 is the signing subkey of the 2023 TeamViewer Linux key, primary fingerprint AB2985BDE164897BA46EA69A234FAACB575B15D1. The repository file inside the RPM points at the same key, so import it from that URL:

sudo rpm --import https://linux.teamviewer.com/pubkey/currentkey.asc

List the keys rpm now trusts:

rpm -q gpg-pubkey --qf "%{NAME}-%{VERSION} %{SUMMARY}\n"

On the Fedora 44 machine, the TeamViewer key sits next to the Fedora release key:

gpg-pubkey-36f612dcf27f7d1a48a835e4dbfcf71c6d9f90a6 Fedora (44) <[email protected]> public key
gpg-pubkey-ab2985bde164897ba46ea69a234faacb575b15d1 TeamViewer Germany GmbH (TeamViewer for Linux, 2023) <[email protected]> public key

Run rpm -K teamviewer.x86_64.rpm again. It now reports digests signatures OK and exits 0 on both releases.

Install TeamViewer with the signature checked

Install through dnf so the dependency comes along, and turn local signature checking on for this one command:

sudo dnf -y --setopt=localpkg_gpgcheck=1 install ./teamviewer.x86_64.rpm

On Fedora 45 the transaction pulls in one dependency, minizip-ng-compat, and uses about 386 MiB:

Package            Arch   Version        Repository        Size
Installing:
 teamviewer        x86_64 0:15.82.6-0    @commandline 385.7 MiB
Installing dependencies:
 minizip-ng-compat x86_64 0:4.1.0-5.fc45 fedora       146.1 KiB

Transaction Summary:
 Installing:         2 packages

Total size of inbound packages is 112 MiB. Need to download 63 KiB.
After this operation, 386 MiB extra will be used (install 386 MiB, remove 0 B).
[1/1] minizip-ng-compat-0:4.1.0-5.fc45. 100% |  79.7 KiB/s |  62.8 KiB |  00m01s
--------------------------------------------------------------------------------
[1/1] Total                             100% |  20.4 KiB/s |  62.8 KiB |  00m03s
Running transaction
[1/4] Verify package files              100% |   5.0   B/s |   2.0   B |  00m00s
[2/4] Prepare transaction               100% |   8.0   B/s |   2.0   B |  00m00s
[3/4] Installing minizip-ng-compat-0:4. 100% |  20.5 MiB/s | 146.9 KiB |  00m00s
[4/4] Installing teamviewer-0:15.82.6-0 100% |  65.0 MiB/s | 385.9 MiB |  00m06s
>>> Running %post scriptlet: teamviewer-0:15.82.6-0.x86_64
>>> Finished %post scriptlet: teamviewer-0:15.82.6-0.x86_64
>>> Scriptlet output:
>>> gtk-update-icon-cache: Cache file created successfully.
>>>
Complete!

No “skipped OpenPGP checks” warning appears this time. Without the --setopt flag, dnf ends with Warning: skipped OpenPGP checks for 1 package from repository: @commandline whether or not the key is imported. With the flag and no key, it refuses the file with The repository does not have any OpenPGP keys configured., which is exactly what you want from a verification step.

Check the daemon and the TeamViewer repository

The RPM enables and starts teamviewerd on its own:

systemctl status teamviewerd --no-pager

The PID file line is harmless. systemd checks for it a moment before the daemon writes it:

● teamviewerd.service - TeamViewer remote control daemon
     Loaded: loaded (/etc/systemd/system/teamviewerd.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/service.d
             └─10-timeout-abort.conf
     Active: active (running) since Sat 2026-10-10 17:07:36 UTC; 938ms ago
 Invocation: 5a1029c030fd45a0a13e23ae5b6de90b
    Process: 22757 ExecStart=/opt/teamviewer/tv_bin/teamviewerd -d (code=exited, status=0/SUCCESS)
   Main PID: 22759 (teamviewerd)
      Tasks: 24 (limit: 9424)
     Memory: 3.8M (peak: 4.5M)
        CPU: 126ms
     CGroup: /system.slice/teamviewerd.service
             β”œβ”€22759 /opt/teamviewer/tv_bin/teamviewerd -d
             └─22765 /opt/teamviewer/tv_bin/tv_crashpad_handler --database=/opt/teamviewer/logfiles/crashpad/teamviewerd --annotation=edition=FI --annotation=version=15.82.6 --initial-client-fd=7 --shared-client-connection

Oct 10 17:07:36 f45-01 systemd[1]: Starting teamviewerd.service - TeamViewer remote control daemon...
Oct 10 17:07:36 f45-01 systemd[1]: teamviewerd.service: Can't open PID file '/run/teamviewerd.pid' (yet?) after start: No such file or directory
Oct 10 17:07:36 f45-01 systemd[1]: Started teamviewerd.service - TeamViewer remote control daemon.

The package also owns a repository file. That is how TeamViewer updates arrive later:

cat /etc/yum.repos.d/teamviewer.repo

Signature checks are on for both packages and metadata:

[teamviewer]
name=TeamViewer - $basearch
baseurl=https://linux.teamviewer.com/yum/stable/main/binary-$basearch/
gpgkey=https://linux.teamviewer.com/pubkey/currentkey.asc
gpgcheck=1
repo_gpgcheck=1
enabled=1
type=rpm-md

Because repo_gpgcheck=1 is set, the first sudo dnf upgrade --refresh after install asks to import the same 2023 key for the repository metadata. Run it once in a terminal so you can answer the prompt, and answer yes. We tested the update path by downgrading to the previous build from that repo and running sudo dnf upgrade teamviewer. It came back to the current build with no NOKEY errors, and teamviewerd stayed active. From here, TeamViewer updates with the rest of the system.

Launch TeamViewer on GNOME

Open Activities, type TeamViewer, and start it. Running teamviewer from a terminal works too. The first window is the licence agreement. Tick the EULA and DPA box, then click Continue:

TeamViewer licence agreement window on Fedora 45 GNOME

The main window gives this machine an ID and a one-time password. On GNOME it also shows a yellow Wayland detected box. TeamViewer calls incoming Wayland support experimental and recommends switching to an Xorg session:

TeamViewer main window on Fedora 45 showing the Wayland detected warning

That advice no longer works on stock Fedora Workstation. /usr/share/xsessions/ is empty on both releases, and gnome-session-xsession and xorg-x11-server-Xorg are not installed. GNOME has no Xorg session to switch to. On GNOME, the way forward is the screen sharing portal.

Grant screen sharing through the portal

Click Set up remote control permissions in the bottom right of the main window. GNOME opens its Remote Desktop dialog. Allow Remote Interaction is off by default. That toggle is what grants remote mouse and keyboard input, as opposed to a view only share. Switch it on, keep Remember This Selection ticked, and click Share:

GNOME Remote Desktop portal dialog with Allow Remote Interaction enabled for TeamViewer

The status line changes to Remote control permissions configured, and the orange screen sharing icon appears in the top bar. Partners connect to the ID and password shown in the main window.

One honest limit of this lab. We could not run a full TeamViewer session end to end, for the reason in the next section, so the portal path is confirmed up to “permissions configured” and no further.

Outgoing connections need a TeamViewer account

We pointed the Fedora 44 client at the ID of the Fedora 45 machine and clicked Connect. No session started. The client log, ~/.local/share/teamviewer15/logfiles/TeamViewer15_Logfile.log, recorded why. These are the two error lines from that attempt:

2026/10/10 16:46:11.528  5032  5032 GW1!! ClientAuthenticationFactory: account information not available, managed device easy access not possible, Errorcode=2
2026/10/10 16:46:12.397  5032  5292 GW1!! LoginOutgoing: ConnectFinished - error: AccountNotLoggedIn, Errorcode=11

A second try gave the same pair. That’s policy, not a Fedora bug. The TeamViewer page on the account verification requirement says no outgoing connection is possible without a verified account. Sign in on the machine that starts the session, through Sign In in the top left, then connect.

Use an X11 desktop to skip the Wayland warning

If you would rather keep TeamViewer off the experimental path, log in to a desktop that still runs on X11. Xfce does. Install it with the Xfce on Fedora guide or with one command:

sudo dnf -y install @xfce-desktop-environment

On Fedora 45 that added 368 packages, including xorg-x11-server-Xorg, and put xfce.desktop in /usr/share/xsessions/. GDM kept working as the login screen and listed “Xfce Session” under the gear icon. Pick it, log in, and confirm the session type:

loginctl show-session $(loginctl list-sessions --no-legend | awk '$4=="seat0"{print $1}') -p Type

Every Type= line it prints should read x11. Started there, TeamViewer shows no Wayland box and no permissions link. The ID and password are ready straight away:

TeamViewer running in an Xfce X11 session on Fedora 45 with no Wayland warning

AnyDesk has the same problem in a harder form. It refuses incoming sessions on Wayland outright. The AnyDesk on Fedora guide uses this same Xfce session as its fix. If you want something self-hosted instead, the open source remote desktop tools roundup compares the alternatives.

Remove TeamViewer

dnf removes the package and its repository file:

sudo dnf -y remove teamviewer

Some things stay behind. /opt/teamviewer survives with a single rolloutfile.tv13 in it, and dnf never touches per-user data such as the ~/.local/share/teamviewer15 log directory. The signing key stays in the rpm keyring too. Clear all of it:

sudo rm -rf /opt/teamviewer
rm -rf ~/.config/teamviewer ~/.local/share/teamviewer15
sudo rpmkeys --delete ab2985bde164897ba46ea69a234faacb575b15d1

Use rpmkeys --delete with the fingerprint, not the old rpm -e gpg-pubkey-... form. rpm on both releases now warns that erasing gpg-pubkey packages is deprecated and names rpmkeys --delete as the replacement.

Error messages and what they mean

All four came up on the test machines. Each one points to a different fix.

“package teamviewer does not verify: … key ID ef9dbdc73b7d1a07: NOKEY”

Fedora 45 rpm -ivh refusing an RPM whose key is missing. Import currentkey.asc as shown above, then install with dnf --setopt=localpkg_gpgcheck=1.

“Warning: skipped OpenPGP checks for 1 package from repository: @commandline”

dnf installed the local file without verifying it. That is the default. Add --setopt=localpkg_gpgcheck=1 when you want the check.

“The repository does not have any OpenPGP keys configured.”

You asked dnf for that check, but the key is not imported yet. Run the rpm --import step first.

“LoginOutgoing: ConnectFinished – error: AccountNotLoggedIn”

The controlling client is not signed in to a verified TeamViewer account. Sign in and connect again. Nothing on the Fedora side needs changing.

For everything else on a new install, the Fedora 45 post-install checklist and the DNF5 cheatsheet cover the package side of the system.

Keep reading

Enable RPM Fusion and Install Multimedia Codecs on Fedora 45 / 44 / 43 Fedora Enable RPM Fusion and Install Multimedia Codecs on Fedora 45 / 44 / 43 Things to Do After Installing CachyOS Arch Linux Things to Do After Installing CachyOS Backup and Restore Linux Systems with Timeshift Debian Backup and Restore Linux Systems with Timeshift Fix ptrace Operation not permitted for gdb and strace on Fedora Fedora Fix ptrace Operation not permitted for gdb and strace on Fedora Fedora 45 vs Bazzite for Gaming: Steam, Updates and NVIDIA Fedora Fedora 45 vs Bazzite for Gaming: Steam, Updates and NVIDIA Install Zimbra Desktop on Ubuntu 18.04 Bionic Beaver Email Install Zimbra Desktop on Ubuntu 18.04 Bionic Beaver

3 thoughts on “Install TeamViewer on Fedora 45 / 44: NOKEY and Wayland Fixes”

  1. In my experience TeamViewer on Fedora 34 is NOT supported under Wayland. If you use TeamViewer on Fedora 34 under Wayland it freezes and crashes after a few seconds of use.

    It should work fine if you log in using X11 instead, but you will lose trackpad gestures.

    Reply
  2. sudo dnf -y install ./teamviewer.x86_64.rpm, result of this “dnf command not found”

    It would be helpful if you also think one step ahead and present a remedy for this occurrence

    Reply

Leave a Comment

Press ESC to close