You are not logged in.
When I try to run pacman -Syu, I get this error:
error: GPGME error: No data
error: GPGME error: No data
error: GPGME error: No data
:: Synchronizing package databases...
==> Downloading http://mirror.rit.edu/archlinux/core/os/i686/core.db
######################################################################## 100.0%
==> Downloading http://mirror.rit.edu/archlinux/core/os/i686/core.db.sig
######################################################################## 100.0%
error: GPGME error: No data
error: failed to update core (invalid or corrupted database (PGP signature))
==> Downloading http://mirror.rit.edu/archlinux/extra/os/i686/extra.db
######################################################################## 100.0%
==> Downloading http://mirror.rit.edu/archlinux/extra/os/i686/extra.db.sig
######################################################################## 100.0%
error: GPGME error: No data
error: failed to update extra (invalid or corrupted database (PGP signature))
==> Downloading http://mirror.rit.edu/archlinux/community/os/i686/community.db
######################################################################## 100.0%
==> Downloading http://mirror.rit.edu/archlinux/community/os/i686/community.db.sig
######################################################################## 100.0%
error: GPGME error: No data
error: failed to update community (invalid or corrupted database (PGP signature))
error: failed to synchronize any databases
error: failed to init transaction (invalid or corrupted database (PGP signature))
I have invoke the command pacman-key --init and pacman-key --populate archlinux as per instructed in the front page. Due to this problem, I am unable to upgrade any package, not until I set the SigLevel to Never. Here's my pacman.conf if it'll be any help.
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
HoldPkg = pacman glibc
# If upgrades are available for these packages they will be asked for first
SyncFirst = pacman
#XferCommand = /usr/bin/curl -C - -f %u > %o
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
XferCommand = /etc/pacman.d/pacman-curl.sh %u %o
#CleanMethod = KeepInstalled
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#UseDelta
#TotalDownload
CheckSpace
#VerbosePkgLists
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Optional TrustAll
#SigLevel = Never
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key --populate archlinux`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
#[testing]
#SigLevel = PackageRequired
#Include = /etc/pacman.d/mirrorlist
[core]
#SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
[extra]
#SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
#[community-testing]
#SigLevel = PackageRequired
#Include = /etc/pacman.d/mirrorlist
[community]
#SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
Thanks in advance.
Last edited by teddypick3r (2012-06-13 21:30:09)
Offline
Try commenting SigLevel = Optional TrustAll and uncommenting the SigLevel = PackageRequired for the individual repositories. Maybe changing the global SigLevel = PackageRequired also works, but I haven't tried.
Look in pacman.conf.*new* (not sure about filename, it is created after the recent update) for an example like pacman said.
Offline
Database signing hasn't been implemented yet. Simply adding "DatabaseOptional" to your SigLevel line should take care of it.
Burninate!
Offline
Hi, thanks for the replies.
I tried commenting out the global SigLevel, and also the suggestion of adding DatabaseOptional to my SigLevel, apparently both of them doesn't solve my problem.
I try deleting the pacman.d/gnupg folder and re-init the pacman-key, the error still persists. any other idea?
Offline
It would be strange that you still get pgp signature error when you've put "SigLevel = Never". Try doing a full database sync again (pacman -Syy).
Burninate!
Offline
ah, maybe I didn't explain myself well, sorry for that. What I mean is that the only way I can upgrade my system is by setting SigLevel to Never. I would love to implement package signing too.
What I've done is
1) add DatabaseOptional to SigLevel
2) deleted the pacman.d/gnupg and re-invoke pacman-key --init & pacman-key --populate archlinux
but the error still persists whenever I try to implement package signing.
Offline
show us your pacman.conf
There's no such thing as a stupid question, but there sure are a lot of inquisitive idiots !
Offline
show us your pacman.conf
that would be in the first post
Offline
Inxsible wrote:show us your pacman.conf
that would be in the first post
Whoops my bad !
what version of pacman are you running. One option would be to simply set siglevel to never and update pacman to the latest. Then merge the pacman.conf file with the pacman.conf.pacnew. Then re-run pacman-key --init and pacman-key --populate archlinux
The new version of pacman has signing enabled by default and has siglevel=PackageRequired on all the official repositories. You can still set globally if you want to later.
There's no such thing as a stupid question, but there sure are a lot of inquisitive idiots !
Offline
Same problem here...
error: xorg-server-common: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust
error: xorg-server: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust
error: catalyst-utils: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust
error: lib32-catalyst-utils: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust
error: failed to commit transaction (invalid or corrupted package)
Errors occurred, no packages were upgraded.
1) upgraded pacman
2) replaced pacman-conf with pacman.conf.new
3) tried everything from above
Still nothing...
For some tasks, the CLI is quicker. That's not elitism nor arrogance, that's just a fact of life.
Offline
Same problem here...
error: xorg-server-common: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust error: xorg-server: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust error: catalyst-utils: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust error: lib32-catalyst-utils: signature from "Vi0L0 <vi0l093@gmail.com>" is unknown trust error: failed to commit transaction (invalid or corrupted package) Errors occurred, no packages were upgraded.
1) upgraded pacman
2) replaced pacman-conf with pacman.conf.new
3) tried everything from aboveStill nothing...
Vi0L0 is a user, not an Arch dev. To get his key, see his forum signature: https://bbs.archlinux.org/profile.php?id=26754
Edit: The address mentioned in his profile seems down, use http://pgp.mit.edu:11371/pks/lookup?op= … 2d653c3094
Last edited by karol (2012-06-07 00:01:16)
Offline
teddypick3r wrote:Inxsible wrote:show us your pacman.conf
that would be in the first post
Whoops my bad !
what version of pacman are you running. One option would be to simply set siglevel to never and update pacman to the latest. Then merge the pacman.conf file with the pacman.conf.pacnew. Then re-run pacman-key --init and pacman-key --populate archlinux
The new version of pacman has signing enabled by default and has siglevel=PackageRequired on all the official repositories. You can still set globally if you want to later.
I'm using the latest pacman 4.0.3-2. I did merge the pacman.conf.pacnew with the old one. I try re-run pacman-key -init and pacman-key --populate archlinux for quite a few times already yet the error persists.
Offline
I was having the same problem.
I tried all the steps above but the only thing that helped me was changing mirrors.
I just started commenting them out in mirrorlist and finally it started working.
hth
-ed+
But i should add, the only time it will perform package operations now I'm getting a 550 error:
○ p -Syu
error: GPGME error: No data
error: GPGME error: No data
error: GPGME error: No data
error: GPGME error: No data
:: Synchronizing package databases...
curl: (78) RETR response: 550
curl: (78) RETR response: 550
curl: (78) RETR response: 550
curl: (78) RETR response: 550
:: Starting full system upgrade...
there is nothing to do
Last edited by bioe007 (2012-06-07 19:50:44)
Offline
I did try changing the mirror, yet the problem still persists. is the mirror affect the error? because I thought package signing is implemented on package level..
Last edited by teddypick3r (2012-06-08 05:03:59)
Offline
I had the same issue too. I managed to fix it by ]running the command found under the header "Master Keys" of the pacman-key page: https://wiki.archlinux.org/index.php/Pacman-key
Offline
the command found under the header "Master Keys" of the pacman-key page: https://wiki.archlinux.org/index.php/Pacman-key
You can link to it like this: https://wiki.archlinux.org/index.php/Pa … aster_keys
Offline
I had the same issue too. I managed to fix it by ]running the command found under the header "Master Keys" of the pacman-key page: https://wiki.archlinux.org/index.php/Pacman-key
I tried, but doesn't solve the problem for me
Offline
I had the same problem. It's fixed now, but I don't know what worked exactly.
What I did was replace my pacman.conf with one from colleague who did not have this problem. Global SigLevel was commented and repos have had their level set to PackageRequired in his conf file.
After running
pacman-key --init
and
pacman-key --populate archlinux
with database update in the end
pacman -Syy
it started working... I have no idea what fixed it, but if you're out of options you might want to reproduce it the way I did.
The weird thing is running the three commands by themselves was not fixing the issue a couple of days back.
Offline
SimpleKiwi wrote:I had the same issue too. I managed to fix it by ]running the command found under the header "Master Keys" of the pacman-key page: https://wiki.archlinux.org/index.php/Pacman-key
I tried, but doesn't solve the problem for me
I think the problem You are getting are caused by your custom XferCommand.
It seems pacman will always try to fetch the sig file for the db, even if key signing has not been enabled (BUG?). If your Xfer script leaves something behind when a file on the server is not found, that file will be used as a sig file. It will obviously not be a valid key file.
If you use something like curl in your script, it will create a HTML file when the file on the server is not found.
Check the files in /var/lib/pacman/sync. You shouldnt have any .db.sig files here.
You probably have .db.sig files here containing HTML code.
Make sure your Xfer script do not create .db.sig files.
Also make sure the script exits with a fault code when the file can not be found on the server.
The cake is a lie
Offline
teddypick3r wrote:SimpleKiwi wrote:I had the same issue too. I managed to fix it by ]running the command found under the header "Master Keys" of the pacman-key page: https://wiki.archlinux.org/index.php/Pacman-key
I tried, but doesn't solve the problem for me
I think the problem You are getting are caused by your custom XferCommand.
It seems pacman will always try to fetch the sig file for the db, even if key signing has not been enabled (BUG?). If your Xfer script leaves something behind when a file on the server is not found, that file will be used as a sig file. It will obviously not be a valid key file.
If you use something like curl in your script, it will create a HTML file when the file on the server is not found.Check the files in /var/lib/pacman/sync. You shouldnt have any .db.sig files here.
You probably have .db.sig files here containing HTML code.Make sure your Xfer script do not create .db.sig files.
Also make sure the script exits with a fault code when the file can not be found on the server.
Ah, at last. Thanks for your suggestion. Seems like the custom XferCommand is really the culprit after all. After I commenting it out, the package signing works flawlessly. Marked the thread as solved. Thanks again.
Offline
There appears to be another problem, when mirrors set a custom error page. Requesting the non-existent .db.sig file causes a redirect to an error page, and that is downloaded as the sig file. Mirrors should be informed about this maybe?
Offline
Check the files in /var/lib/pacman/sync. You shouldnt have any .db.sig files here.
You probably have .db.sig files here containing HTML code.Make sure your Xfer script do not create .db.sig files.
Also make sure the script exits with a fault code when the file can not be found on the server.
I have same symptoms, but no custom XferCommand to comment it out
Could somebody post working pacman.conf with RIGHT XferCommand?
Offline
If you don't have an XferCommand set then that's definitely not the problem. This same error arises from other problems (including one in my previous post). Easiest thing to do is:
rm /var/lib/pacman/sync/*db.sig*
And try syncing again. If pacman fails again then you might have one of those mirror error pages problem, just try to change to a different mirror (change which 'Server=' line is uncommented in /etc/pacman.d/mirrorlist) and remove the .db.sig files again and "pacman -Sy" again. For me the mirrors.us.kernel.org mirror works.
Offline
I get the same problem as you but there is no uncommented line of XferCommand in my pacman.conf(your uncommented line even doesn't exist in mine)...
So what should I do...
pnil wrote:teddypick3r wrote:I tried, but doesn't solve the problem for me
I think the problem You are getting are caused by your custom XferCommand.
It seems pacman will always try to fetch the sig file for the db, even if key signing has not been enabled (BUG?). If your Xfer script leaves something behind when a file on the server is not found, that file will be used as a sig file. It will obviously not be a valid key file.
If you use something like curl in your script, it will create a HTML file when the file on the server is not found.Check the files in /var/lib/pacman/sync. You shouldnt have any .db.sig files here.
You probably have .db.sig files here containing HTML code.Make sure your Xfer script do not create .db.sig files.
Also make sure the script exits with a fault code when the file can not be found on the server.Ah, at last. Thanks for your suggestion. Seems like the custom XferCommand is really the culprit after all. After I commenting it out, the package signing works flawlessly. Marked the thread as solved. Thanks again.
人道待人
Offline
rm -R /var/lib/pacman/sync
pacman -Syuf
works!
人道待人
Offline