Rather than give you a set of steps to blindly follow, I suggest that you read up on pacman-key and PGP keys in general to ensure that you understand the security involved.
You should verify the key before importing it by checking the signature against multiple sources if possible. To help, here is the signature of the key that I have imported. Compare it to the one on the arch-haskell mailing list and the MIT PGP key server, for example.
pub 2048D/4209170B 2012-12-26
uid ArchHaskell (Magnus Therning) <magnus@therning.org>
sig AB4DFBA4 2013-01-08 [User ID not found]
sig 3 4209170B 2012-12-26 ArchHaskell (Magnus Therning) <magnus@therning.org>
sub 2048D/A418C0FE 2012-12-26
sig 4209170B 2012-12-26 ArchHaskell (Magnus Therning) <magnus@therning.org>
Please don't selectively edit pacman's output; it makes it much harder for people to understand what is the issue.
Use -Syyu.
Thanks for the suggestion. I tried those flags. The problem remained. Below is the output of pacman:
[root@dreams ~]# pacman -Syyu
error: haskell-core: signature from "ArchHaskell (Magnus Therning) <magnus@therning.org>" is unknown trust
:: Synchronizing package databases...
core 105.5 KiB 179K/s 00:01 [########################################################] 100%
haskell-core 242.2 KiB 253K/s 00:01 [########################################################] 100%
haskell-core.sig 96.0 B 0.00B/s 00:00 [########################################################] 100%
error: haskell-core: signature from "ArchHaskell (Magnus Therning) <magnus@therning.org>" is unknown trust
error: failed to update haskell-core (invalid or corrupted database (PGP signature))
extra 1501.0 KiB 623K/s 00:02 [########################################################] 100%
community 1955.3 KiB 678K/s 00:03 [########################################################] 100%
error: database 'haskell-core' is not valid (invalid or corrupted database (PGP signature))
No idea what to do. I could not simply remove the haskell-core repo in my pacman.conf. Since most of the haskell packages installed from the haskell-core repo are ahead of those in the official repo.
]]>Use -Syyu.
]]>On a recent attempt to update my repo db, I got the following errors
[root@dreams ~]# pacman -Sy
error: haskell-core: key "90513750A418C0FE" is unknown
:: Import PGP key 2048D/4209170B, "ArchHaskell (Magnus Therning) <magnus@therning.org>", created: 2012-12-26? [Y/n] Y
error: haskell-core: signature from "ArchHaskell (Magnus Therning) <magnus@therning.org>" is unknown trust
:: Synchronizing package databases...
core is up to date
haskell-core is up to date
extra is up to date
community is up to date
error: database 'haskell-core' is not valid (invalid or corrupted database (PGP signature))
And I could not upgrade my system. Any idea?
]]>