summaryrefslogtreecommitdiff
path: root/.root/etc/initcpio
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2024-04-09 18:18:55 -0400
committerFreya Murphy <freya@freyacat.org>2024-04-09 18:18:55 -0400
commit376a549acaa0bb2856297ab46f2d7a6304dcbbc4 (patch)
tree34ba381d52a4528b4a5ce615fecff84a3ec10d48 /.root/etc/initcpio
parenthi (diff)
downloaddotfiles-arch-376a549acaa0bb2856297ab46f2d7a6304dcbbc4.tar.gz
dotfiles-arch-376a549acaa0bb2856297ab46f2d7a6304dcbbc4.tar.bz2
dotfiles-arch-376a549acaa0bb2856297ab46f2d7a6304dcbbc4.zip
a
Diffstat (limited to '.root/etc/initcpio')
-rwxr-xr-x.root/etc/initcpio/post/uki-sbsign15
1 files changed, 15 insertions, 0 deletions
diff --git a/.root/etc/initcpio/post/uki-sbsign b/.root/etc/initcpio/post/uki-sbsign
new file mode 100755
index 0000000..eb34cd4
--- /dev/null
+++ b/.root/etc/initcpio/post/uki-sbsign
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+
+uki="$3"
+[[ -n "$uki" ]] || exit 0
+
+keypairs=(/usr/share/secureboot/keys/db/db.key /usr/share/secureboot/keys/db/db.pem)
+
+for (( i=0; i<${#keypairs[@]}; i+=2 )); do
+ key="${keypairs[$i]}"
+ cert="${keypairs[(( i + 1))]}"
+ if ! sbverify --cert "$cert" "$uki" &>/dev/null; then
+ sbsign --key "$key" --cert "$cert" --output "$uki" "$uki"
+ fi
+done
+