Texlive instalation : Transaction failed: Signature verification failed. (fedora 43)

I installed texlive by:
sudo dnf install texlive-scheme-full

At the end of installation it throws a wiered message:

--------------------------------------------------------------------------------
[4496/4496] Total                       100% |   1.3 MiB/s |   2.6 GiB |  32m27s
Running transaction
Transaction failed: Signature verification failed.
OpenPGP check for package "texlive-scheme-full-11:svn54074-80.fc43.noarch" (/var/cache/libdnf5/fedora-fe4b228be7d3c150/packages/texlive-scheme-full-svn54074-80.fc43.noarch.rpm) from repo "fedora" has failed: Problem occurred when opening the package.

I would appreciate any comment on how I can verify if it is installed properly.

The signature seems OK when I download that RPM.

$ sudo dnf download texlive-scheme-full-*
Updating and loading repositories:
Repositories loaded.
Downloading Packages:
 texlive-scheme-full-11:svn54074-80.fc43.noarch                                                            100% |  27.9 KiB/s |   9.2 KiB |  00m00s
$ rpm --checksig -v texlive-scheme-full-svn54074-80.fc43.noarch.rpm 
texlive-scheme-full-svn54074-80.fc43.noarch.rpm:
    Header OpenPGP V4 RSA/SHA256 signature, key fingerprint: c6e7f081cf80e13146676e88829b606631645531: OK
    Header SHA256 digest: OK
    Payload SHA256 digest: OK
$ 

In case it is a corrupt file download, you might try sudo dnf clean all and then redownloading and installing the packages.[1]


  1. See my later post for a better option: Texlive instalation : Transaction failed: Signature verification failed. (fedora 43) - #9 by glb ↩︎

As the message shows, the failure was at the point of verifying the packages after download and before it began the actual install. Nothing was installed since the verification failed..
Run the command again and it should actually complete after downloading that package and passing the verification step.

Using the command sudo dnf download texlive-scheme-full will download a package named texlive-scheme-full-11:svn54074-80.fc43.noarch
If instead using sudo dnf download texlive-scheme-full-* I get
No package "texlive-scheme-full-svn54074-80.fc43.noarch.rpm" available

If I then run
rpm --checksig -v texlive-scheme-full-svn54074-80.fc43.noarch.rpm it succeeds
but if I try the package name downloaded it fails.
rpm --checksig -v texlive-scheme-full-11:svn54074-80.fc43.noarch.rpm
or rpm --checksig -v texlive-scheme-full-11:svn54074-80.fc43.noarch

It appears there may be something wrong in the metadata that identifies that package when downloaded and the wrong info is displayed on screen

1 Like
$ sudo dnf download texlive-scheme-full
[sudo] password for glb: 
Updating and loading repositories:
 RPM Fusion for Fedora 43 - Nonfree                                                                        100% |   4.6 KiB/s |   6.3 KiB |  00m01s
 RPM Fusion for Fedora 43 - Free                                                                           100% |   7.5 KiB/s |   3.6 KiB |  00m00s
Repositories loaded.
Downloading Packages:
 texlive-scheme-full-11:svn54074-80.fc43.noarch                                                            100% |   0.0   B/s |   0.0   B |  00m00s
$ ls -al
total 15
drwx------.  2 glb  glb     3 Feb 23 18:30 .
drwx------. 28 glb  glb    39 Feb 23 18:07 ..
-rw-r--r--.  1 root root 9429 Feb 23 17:40 texlive-scheme-full-svn54074-80.fc43.noarch.rpm

Apparently what it says it downloads and what it really downloads are not exactly equal.

As for the other error, I think it is because you didn’t escape the *?

Also, I don’t see any build records at all for that package for Fedora Linux 43. I’m not sure what to make of it.

Looks like a packaging split out. Here’s the koji build for the OP:

I would guess mirror issues for the OP?

1 Like

true

right

It also is confusing that when using dnf download the package being downloaded is placed in the PWD and not in the dnf cache area. That really should not be unless you specify the location where it should be saved. This is what caused my error with the *.

dnf download -h tells that the default download location is the PWD, but it is not intuitively obvious that it the default behavior.

Someone pointed out that, because that particular package set is so large, running sudo dnf clean all would be a bit painful and it is probably unnecessary. If the file is really corrupt, dnf should detect that when you just rerun the original download command, without having to delete and redownload everything.

I don’t think there is a dnf command to flush just that one file from the download cache. If I were in that situation, I might try sudo rm /var/cache/libdnf5/fedora-fe4b228be7d3c150/packages/texlive-scheme-full-svn54074-80.fc43.noarch.rpm, since dnf was kind enough to provide the full path to the file with the apparent problem.

Of course, if you are getting a bad copy from the mirror (as opposed to a file that was corrupted in-transit), you might have to adjust what mirror you are using before you will be able to get a good copy.

Sorry about the poor initial advice. I defaulted to what I thought would be “easiest”, but different approaches have different trade-offs. I’ll scratch out my initial reply and link to this update.

3 Likes

You are comparing package names to file names, aren’t you? They differ by file extension already and –apparantly - by epoch (in order to avoid problems with the colon).

1 Like

Thanks for all the comments and insights.
From a practical point of view my two-cent solution was to repeate the installation command:

sudo dnf install texlive-scheme-full

This time the download phase took few minuets (unlike the first try when it took 32 minuets to download all 4000 files) and then the installation started and completed seamlesly.

4 Likes