summaryrefslogtreecommitdiff
path: root/update-keys
diff options
context:
space:
mode:
Diffstat (limited to 'update-keys')
-rwxr-xr-xupdate-keys20
1 files changed, 17 insertions, 3 deletions
diff --git a/update-keys b/update-keys
index 8f985f5..c6e730c 100755
--- a/update-keys
+++ b/update-keys
@@ -24,8 +24,8 @@ Expire-Date: 0
%echo Done
EOF
-rm -rf master packager packager-revoked archlinux32-trusted archlinux32-revoked
-mkdir master packager packager-revoked
+rm -rf master master-revoked packager packager-revoked archlinux32-trusted archlinux32-revoked
+mkdir master master-revoked packager packager-revoked
while read -ra data; do
keyid="${data[0]}"
@@ -71,6 +71,20 @@ while read -ra data; do
fi
done < packager-revoked-keyids
-cat master/*.asc packager/*.asc packager-revoked/*.asc > archlinux32.gpg
+while read -ra data; do
+ keyid="${data[0]}"
+ username="${data[2]}"
+ ${GPG} --recv-keys ${keyid} &>/dev/null
+ printf 'clean\nquit\ny\n' | \
+ ${GPG} --command-fd 0 --edit-key ${keyid}
+ if ! ${GPG} --list-keys --with-colons ${keyid} 2>/dev/null | grep -q '^pub:f:'; then
+ ${GPG} --armor --no-emit-version --export ${keyid} >> master-revoked/${username}.asc
+ echo "${keyid}" >> archlinux32-revoked
+ else
+ echo "key is still fully trusted: ${keyid} ${username}"
+ fi
+done < master-revoked-keyids
+
+cat master/*.asc master-revoked/*.asc packager/*.asc packager-revoked/*.asc > archlinux32.gpg
popd >/dev/null