Pamac is behaving strangely

Hello Guys,

I tried installing Howdy from AUR(running ‘pamac buid Howdy’ ) yesterday but i had an Error: 'cp: cannot create regular file ‘/var/tmp/pamac/dbnied’. Afterwords when i press y for apply transaction i get ‘Transaction cancelled’.

$ pamac build howdy
Preparing...
Cloning howdy build files...
Generating howdy information...
Checking howdy dependencies...
Checking pam-python dependencies...
Checking python-face_recognition dependencies...
Checking python2 dependencies...
cp: cannot create regular file '/var/tmp/pamac/dbs/sync/pamac_aur.db': Permission denied
Error: Failed to prepare transaction: target not found: howdy
Edit build files : [e] 
Apply transaction ? [e/y/N] y
Transaction cancelled.

When i try installing the package as root it shows me much more output than i’ve ever seen before but eventually aborts with following errors:

Python-2.7.18.tar.xz ... cat: write error: Broken pipe
FAILED
==> ERROR: One or more PGP signatures could not be verified!
==> Validating source files with sha512sums...
    Python-2.7.18.tar.xz ... Passed
    Python-2.7.18.tar.xz.asc ... Skipped
    mtime-workaround.patch ... Passed
    python-gentoo-patches-2.7.18_p16.tar.xz ... Passed
==> Verifying source file signatures with gpg...
    Python-2.7.18.tar.xz ... cat: write error: Broken pipe
FAILED
==> ERROR: One or more PGP signatures could not be verified!
Finished with result: exit-code
Main processes terminated with: code=exited/status=1
Service runtime: 6.419s
CPU time consumed: 2.419s
Error: Failed to build python2

When i try installing it with the gui pamac-manager i get a transaction summary window saying ‘Failed to prepare transaction’ with the options to Edit the build files apply and cancel. No matter what i press next it shows ‘Failed to prepare transaction target not found: howdy’

The same happens since yesterday with every Package i tried to install from AUR. I tried everything in this forum and beyond, but whatever i did seemed to make things worse.

Any help would be much appreciated!


Moderator edit: In the future, please use proper formatting: [HowTo] Post command output and file content as formatted text

It seems a signature problem… Refresh keyring with this command:

sudo pacman -Sy archlinux-keyring manjaro-keyring

It seems like it couldn’t be verified because cat failed with a broken pipe, but it shouldn’t be run as root and the initial error was this:

Which implies a problem with permissions. I don’t use pamac, so I’m not sure of the best way to deal with this, it may as simple as deleting the directory…or not.

Perhaps an experienced pamac user could help. In the meantime you might want to check the permissions.

ls -l /var/tmp/pamac/dbs/sync/

It could perhaps be a symptom of a larger problem. :man_shrugging:

Which also suggests it’s not a signature issue.


However I’d just use yay for AUR packages (and pacman for the repos).

Thank you for your help. When tried

sudo pacman -Sy archlinux-keyring manjaro-keyring
i got the following error:

:: File /var/cache/pacman/pkg/manjaro-keyring-20230318-1-any.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n] y
error: failed to commit transaction (invalid or corrupted package (PGP signature))
Errors occurred, no packages were upgraded

Thank you for your reply.

Deleting the directory didn’t change anything.

The content of /var/tmp/pamac/dbs/sync/ is:

-rw-r–r-- 1 root root 7944096 Mar 29 16:53 community.db
-rw-r–r-- 1 root root 36499612 Mar 29 16:53 community.files
-rw-r–r-- 1 root root 167457 Mar 18 18:18 core.db
-rw-r–r-- 1 root root 1636292 Mar 18 18:18 core.files
-rw-r–r-- 1 root root 1901657 Mar 29 17:45 extra.db
-rw-r–r-- 1 root root 10049247 Mar 29 17:45 extra.files
-rw-r–r-- 1 root root 174667 Feb 20 04:29 multilib.db
-rw-r–r-- 1 root root 260039 Feb 20 04:29 multilib.files
-rw-r–r-- 1 root root 0 Mar 29 23:57 refresh_timestamp

I started using yay for now, but getting pamac back to work normally would be great since i’m very much used to it.

It seems pacman also fails to install packages (PGP signature problems), here you have some info on the steps to solve keyring issues:

1 Like

Thank you for your reply.
I followed instructions on the link you provided. Now when i try installing packages with pamac install command(not from AUR) i get the following output:

Error: cbatticon: signature from “Antonio Rojas arojas@archlinux.org” is unknown trust
Error: Failed to commit transaction: invalid or corrupted package (PGP signature):

I get the same output with installing packages from AUR. Yay command also stopped working:

:: File /var/cache/pacman/pkg/archlinux-keyring-20230320-1-any.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n]

When i accept to delete it it asks me the same question again and if i accept again it fails with following error code:

:: File /var/cache/pacman/pkg/cbatticon-1.6.13-1-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n] y
error: failed to commit transaction (invalid or corrupted package (PGP signature))
Errors occurred, no packages were upgraded.
→ error installing repo packages

May there be a possibility to reset all signature files and keys to default?
I’d be more than grateful for any help!

Yes. Doing the six steps described here should reset all the signatures:

When i did the second command, this error occurred:

downloading required keys…
error: keyring is not writable
error: keyring is not writable
error: keyring is not writable
error: required key missing from keyring
error: failed to commit transaction (unexpected error)
Errors occurred, no packages were upgraded.

Well, there’s a “hard way”: telling the updater to ignore the signatures.

Edit /etc/pacman.conf

Search the line:
SigLevel = Required DatabaseOptional
And change to:
SigLevel = Optional TrustAll

Update keyring
sudo pacman -Sy archlinux-keyring manjaro-keyring

Once installed, undo the change made in pacman.conf (restore SigLevel to Required DatabaseOptional)

After that you should have both keyrings installed.

@Arrababiski Thanks for putting up a fix.

In my opinion Required DatabaseNever is a better setting, to not have the problem going forward. It means only look for package signatures, not database signatures.

[options]
...
SigLevel    = Required DatabaseNever

Explanation at: [root tip] [How To] Mitigate and prevent GPGME error when syncing your system

Summary: the db sigs are optional. When not present, some mirrors return a HTML message saying not found, which pamac tries to use as a signature, resulting in error.

1 Like

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