summaryrefslogtreecommitdiffstats
path: root/uefi/mod-sign.sh
diff options
context:
space:
mode:
authorKyle K <kylek389@gmail.com>2021-12-18 03:11:36 -0600
committerKyle K <kylek389@gmail.com>2021-12-18 03:11:36 -0600
commit772056893a23bada6d56ceb235d3e8ceaa663799 (patch)
treed1a2b218834303de11bcac80923a5fdaa7fdd63a /uefi/mod-sign.sh
parente7b53ae9170c3e007302cf6375ae04ed39e6edde (diff)
downloadgentoox-772056893a23bada6d56ceb235d3e8ceaa663799.tar.gz
gentoox-772056893a23bada6d56ceb235d3e8ceaa663799.tar.bz2
gentoox-772056893a23bada6d56ceb235d3e8ceaa663799.zip
add support for signing kernel, modules, and grubx64.efi for Secure Boot
Diffstat (limited to 'uefi/mod-sign.sh')
-rwxr-xr-xuefi/mod-sign.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/uefi/mod-sign.sh b/uefi/mod-sign.sh
new file mode 100755
index 0000000..f110b95
--- /dev/null
+++ b/uefi/mod-sign.sh
@@ -0,0 +1,19 @@
+#! /bin/sh
+
+MODSECKEY=$1
+MODPUBKEY=$2
+moddir=$3
+
+modules=$(find "$moddir" -type f -name '*.ko')
+
+NPROC=$(nproc)
+[ -z "$NPROC" ] && NPROC=1
+
+echo "$modules" | xargs -r -n16 -P $NPROC sh -c "
+for mod; do
+ ./sign-file sha256 $MODSECKEY $MODPUBKEY \$mod
+ rm -f \$mod.sig \$mod.dig
+done
+" DUMMYARG0 # xargs appends ARG1 ARG2..., which go into $mod in for loop.
+
+exit 0