summaryrefslogtreecommitdiff
path: root/security/archlinux-keyring/files/archlinux-keyring.ucl.in
diff options
context:
space:
mode:
authorCharlie Li <vishwin@FreeBSD.org>2023-06-10 03:07:19 -0400
committerCharlie Li <vishwin@FreeBSD.org>2023-06-10 03:07:19 -0400
commitcc5b590ab296644da3ad80c687227f7282be31f2 (patch)
tree09b22d1245dc0b707357e7c4bf690d6a9ced851c /security/archlinux-keyring/files/archlinux-keyring.ucl.in
parentsysutils/pacman: update to 6.0.2 (diff)
security/archlinux-keyring: update to 20230504
Now uses sequoia-sq to generate the keyring. Also run-depend on archlinux-pacman to initialise/populate/update the keyring on the target such that the official Arch Linux pacman repositories verify PGP signatures properly. Event: SouthEast LinuxFest 2023
Diffstat (limited to 'security/archlinux-keyring/files/archlinux-keyring.ucl.in')
-rw-r--r--security/archlinux-keyring/files/archlinux-keyring.ucl.in29
1 files changed, 29 insertions, 0 deletions
diff --git a/security/archlinux-keyring/files/archlinux-keyring.ucl.in b/security/archlinux-keyring/files/archlinux-keyring.ucl.in
new file mode 100644
index 000000000000..ce622abb06c5
--- /dev/null
+++ b/security/archlinux-keyring/files/archlinux-keyring.ucl.in
@@ -0,0 +1,29 @@
+path_glob: %%LOCALBASE%%/share/pacman/keyrings
+cleanup: {
+ type: lua
+ sandbox: false
+ script: <<EOS
+function cleanup(directory)
+ for _,d in ipairs(pkg.readdir(directory)) do
+ local full_path = directory .. "/" .. d
+ local stat = pkg.stat(full_path)
+ if stat["type"] == "dir" then
+ cleanup(full_path)
+ end
+ os.remove(full_path)
+ end
+ os.remove(directory)
+end
+
+cleanup("%%LOCALBASE%%/etc/pacman.d/gnupg")
+EOS
+}
+trigger: {
+ type: lua
+ sandbox: false
+ script: <<EOS
+pkg.exec({"pacman-key", "--init"})
+pkg.exec({"pacman-key", "--populate", "archlinux"})
+pkg.exec({"pacman-key", "--updatedb"})
+EOS
+}