summarylogtreecommitdiffstats
path: root/dracut-btrfs-uefi-install
diff options
context:
space:
mode:
Diffstat (limited to 'dracut-btrfs-uefi-install')
-rwxr-xr-xdracut-btrfs-uefi-install18
1 files changed, 18 insertions, 0 deletions
diff --git a/dracut-btrfs-uefi-install b/dracut-btrfs-uefi-install
new file mode 100755
index 000000000000..6cfe4e03b3ff
--- /dev/null
+++ b/dracut-btrfs-uefi-install
@@ -0,0 +1,18 @@
+#!/usr/bin/env bash
+
+args=('--force' '--quiet')
+
+disk=$(lsblk /dev/nvme0n1 -o MODEL | awk '{print $2;}' | xargs)
+subvolid=$(btrfs sub show / | grep 'Subvolume ID:' | awk '{print $3;}' | sed -r 's/\s+//g')
+
+
+
+while read -r line; do
+ if [[ "$line" == 'usr/lib/modules/'+([^/])'/pkgbase' ]]; then
+ read -r pkgbase < "/${line}"
+ kver="${line#'usr/lib/modules/'}"
+ kver="${kver%'/pkgbase'}"
+
+ dracut "${args[@]}" --hostonly "/boot/EFI/Linux/$kver-$disk-$subvolid-dracut.efi" --kver "$kver"
+ fi
+done