Error while upgrading from 31 to 32

Hi guys! So, after a few days, I’ve decided to upgrade my Fedora 31 to 32. I’ve followed these instructions:

sudo dnf upgrade --refresh
sudo dnf install dnf-plugin-system-upgrade
sudo dnf system-upgrade download --refresh --allowerasing --releasever=32

But after downloading all the packages, the system returned this error bellow

warning: /var/lib/dnf/system-upgrade/fedora-558931b5e76b51a7/packages/dnf-4.2.19-1.fc32.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 12c944d0: NOKEY
Fedora 32 - x86_64 1.6 MB/s | 1.6 kB 00:00
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing ‘dnf clean packages’.
Traceback (most recent call last):
File “/usr/bin/dnf”, line 58, in
main.user_main(sys.argv[1:], exit_code=True)
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 201, in user_main
errcode = main(args)
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 67, in main
return _main(base, args, cli_class, option_parser_class)
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 106, in _main
return cli_run(cli, base)
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 130, in cli_run
ret = resolving(cli, base)
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 176, in resolving
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 235, in do_transaction
File “/usr/lib/python3.7/site-packages/dnf/cli/”, line 287, in gpgsigcheck
self._get_key_for_package(po, fn)
File “/usr/lib/python3.7/site-packages/dnf/”, line 2321, in _get_key_for_package
keys = dnf.crypto.retrieve(keyurl, repo)
File “/usr/lib/python3.7/site-packages/dnf/”, line 177, in retrieve
keyinfos = rawkey2infos(handle)
File “/usr/lib/python3.7/site-packages/dnf/”, line 158, in rawkey2infos
with pubring_dir(pb_dir), Context() as ctx:
File “/usr/lib64/python3.7/site-packages/gpg/”, line 220, in init
self.protocol = protocol
File “/usr/lib64/python3.7/site-packages/gpg/”, line 169, in setattr
super(GpgmeWrapper, self).setattr(key, value)
File “/usr/lib64/python3.7/site-packages/gpg/”, line 1123, in protocol
File “/usr/lib64/python3.7/site-packages/gpg/”, line 129, in errorcheck
raise GPGMEError(retval, extradata)
gpg.errors.GPGMEError: GPGME: Invalid crypto engine

At the moment I’m stuck. Any thoughts?

First… I see you are new among us… so:
Welcome to our community!


Maybe gpg is not installed.

Maybe use dnf with --nogpgcheck


Hello, pauld! You’re right, where are my manners? My name is Rafael Moco, this is my first topic in this forum, but I’m a long time Linux user! I work with VFX and Fedora is a great distro for this

And yes! I used --nogpgcheck and here I am, using Fedora 32. Thank you for your help!

And what about gpg? Dunno why I don’t have it installed. It’s a good idea to install it?

Thanks again!

1 Like

I am pretty sure gpg is installed by default. It is a tool to sign (with a private key) things (originally emails), and verify (with a public key) that signed things are really from the person who have signed it and that it was not modified. It can also be used for old school encryption/decryption (using the same password [so called symmetric] for encrypting and decrypting). dnf use it to verify that packages are from a known “valid” source. The gpg keys are given by the fedora-gpg-keys package.

That said, it would be better if dnf would complain that gpg is not installed rather than giving the “gpg.errors.GPGMEError: GPGME: Invalid crypto engine” error. I think I will open a bug report about it.

Yeah, I did some research here and yes, gbg is installed, so I dunno why I had that error

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.