Not able to update due to "GPGME error: Invalid crypto engine"

Total Download Size:      0.10 MiB
Total Installed Size:  3022.77 MiB
Net Upgrade Size:        47.71 MiB

:: Proceed with installation? [Y/n] y
:: Retrieving packages...
 gvfs-mtp-1.38.1+8+ge4eec2bc-1...    44.6 KiB  48.9K/s 00:01 [#################################] 100%
 gvfs-nfs-1.38.1+8+ge4eec2bc-1...    19.5 KiB   722K/s 00:00 [#################################] 100%
 libwbclient-4.9.4-2-x86_64          33.2 KiB   707K/s 00:00 [#################################] 100%
(276/276) checking keys in keyring                           [#################################] 100%
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine

got it when trying to update

Looks like you did a partial update. Dont do that.
(It also looks like you double-posted. Dont do that either.)
Now .. lets have a look at gpg and such:
pacman -Qi gnupg gpgme libgcrypt
ls /var/cache/pacman/pkg/ | grep {gpg,gnupg}

2 Likes
BrokenLaptop Downloads]# pacman -Qi gnupg gpgme libgcrypt
Name            : gnupg
Version         : 2.2.12-1
Description     : Complete and free implementation of the OpenPGP standard
Architecture    : x86_64
URL             : https://www.gnupg.org/
Licenses        : GPL
Groups          : None
Provides        : dirmngr  gnupg2=2.2.12
Depends On      : npth  libgpg-error  libgcrypt  libksba  libassuan  pinentry
                  bzip2  readline  gnutls  sqlite
Optional Deps   : libldap: gpg2keys_ldap [installed]
                  libusb-compat: scdaemon
                  pcsclite: scdaemon [installed]
Required By     : gpgme
Optional For    : None
Conflicts With  : dirmngr  gnupg2
Replaces        : dirmngr  gnupg2
Installed Size  : 9.92 MiB
Packager        : Gaetan Bisson <bisson@archlinux.org>
Build Date      : Saturday 15 December 2018 02:35:08 AM IST
Install Date    : Monday 31 December 2018 03:03:18 PM IST
Install Reason  : Installed as a dependency for another package
Install Script  : Yes
Validated By    : Signature

Name            : gpgme
Version         : 1.12.0-1
Description     : A C wrapper library for GnuPG
Architecture    : x86_64
URL             : http://www.gnupg.org/related_software/gpgme/
Licenses        : LGPL
Groups          : None
Provides        : None
Depends On      : libgpg-error  gnupg>=2
Optional Deps   : None
Required By     : libreoffice-still  ostree  pacman  samba  volume_key
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 1218.00 KiB
Packager        : Christian Hesse <arch@eworm.de>
Build Date      : Monday 08 October 2018 06:34:08 PM IST
Install Date    : Monday 31 December 2018 03:03:18 PM IST
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature

Name            : libgcrypt
Version         : 1.8.4-1
Description     : General purpose cryptographic library based on the code from
                  GnuPG
Architecture    : x86_64
URL             : http://www.gnupg.org
Licenses        : LGPL
Groups          : None
Provides        : None
Depends On      : libgpg-error
Optional Deps   : None
Required By     : crda  cryptsetup  gcr  gnupg  lib32-libgcrypt  libsecret
                  libxslt  lightdm  smbclient  sudo  systemd  systemd-libs
                  vpnc  xfce4-mailwatch-plugin
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 1393.00 KiB
Packager        : Andreas Radke <andyrtr@archlinux.org>
Build Date      : Saturday 27 October 2018 01:17:49 PM IST
Install Date    : Monday 31 December 2018 03:02:55 PM IST
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature

[BrokenLaptop Downloads]# ls /var/cache/pacman/pkg/ | grep {gpg,gnupg}
grep: gnupg: No such file or directory
[BrokenLaptop Downloads]# 

this was the output

Huh... let me try this a bit different
ls /var/cache/pacman/pkg | grep -E "gpg|gnupg"

[BrokenLaptop Downloads]# ls /var/cache/pacman/pkg/ | grep -E "gpg|gnupg"
gnupg-2.2.13-1-x86_64.pkg.tar.xz
gpgme-1.12.0-2-x86_64.pkg.tar.xz
lib32-libgpg-error-1.35-1-x86_64.pkg.tar.xz
libgpg-error-1.35-1-x86_64.pkg.tar.xz

its like this

mk. That might be good. It seems we have newer packages in the cache that were not applied... but they are there .. so we can probably install them.

Check one more thing (I forgot)

ls /var/cache/pacman/pkg | grep libgcrypt

I'm editing this command here.. will add to it after we see libgcrypt

sudo pacman -U /var/cache/pacman/pkg/gnupg-2.2.13-1-x86_64.pkg.tar.xz /var/cache/pacman/pkg/gpgme-1.12.0-2-x86_64.pkg.tar.xz

nothing got outputted I think it wasin't downloaded then

[winged_devil@BrokenLaptop ~]$ ls /var/cache/pacman/pkg | grep libgcrypt
[winged_devil@BrokenLaptop ~]$ 

OK. We can get if from here:
https://www.archlinux.org/packages/core/x86_64/libgcrypt/download/
or here:
https://archive.archlinux.org/packages/l/libgcrypt/libgcrypt-1.8.4-1-x86_64.pkg.tar.xz

Now it might be possible to add the url to the command like this:

sudo pacman -U /var/cache/pacman/pkg/gnupg-2.2.13-1-x86_64.pkg.tar.xz /var/cache/pacman/pkg/gpgme-1.12.0-2-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/l/libgcrypt/libgcrypt-1.8.4-1-x86_64.pkg.tar.xz

Or you may have to download it first and add the /path/to/that/libgcrypt.tar to the string instead of the URL.

[Pray]

..and let us know ?

If things seem like they installed alright .. try updating again.

[worst case scenario .. this can probably be fixed with a chroot ... I'm just trying to get it done without you spinning up another media and going about it that way]

Oh .. and since I know nothing about why this happened in the first place ..
Maybe I suggest closing everything and dropping to TTY for the update
ctrl+alt+f3
[log in]
sudo pacman-mirrors -f && sudo pacman -Syyuu
[If there are errors post them here - do NOT reboot..but if fine, continue with]
systemctl reboot
[this last one does what you think it does]

1 Like
[BrokenLaptop winged_devil]# pacman -U /var/cache/pacman/pkg/gnupg-2.2.13-1-x86_64.pkg.tar.xz /var/cache/pacman/pkg/gpgme-1.12.0-2-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/l/libgcrypt/libgcrypt-1.8.4-1-x86_64.pkg.tar.xz
loading packages...
error: GPGME error: Invalid crypto engine
error: GPGME error: Invalid crypto engine
error: '/var/cache/pacman/pkg/libgcrypt-1.8.4-1-x86_64.pkg.tar.xz': invalid or corrupted package (PGP signature)

same as in first place

Welp. Thats the end of that experiment.
I suggest you follow any of the chroot guides and do a full update.

[for posterity - as in same issue apparently]
https://bbs.archlinux.org/viewtopic.php?id=175643
https://bbs.archlinux.org/viewtopic.php?id=203400

[to be clear here - I'm not letting up on you ... its just that your system no longer possesses the ability to install packages .. so the only (/easiest?) way to fix it is to load another (manjaro) environment - through USB or similar, and then chroot in and update and/or replace the broken packages]

Can you please help me?
I made a similar thread


but my situation seems more complicated.

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

Forum kindly sponsored by