From f3ad1b9576e9a26cee97b6c38beb726dacd4b857 Mon Sep 17 00:00:00 2001
From: Andreas Loibl <andreas@andreas-loibl.de>
Date: Fri, 18 Nov 2011 01:40:10 +0100
Subject: added hooks to include firmware-rpms in EFI-FAT partition

---
 .../initramfs-tools/scripts/live-bottom/03rpmfirmware    | 16 ++++++++++++++++
 config/lists/base                                        |  1 +
 mkefipart-fat                                            |  4 ++--
 3 files changed, 19 insertions(+), 2 deletions(-)
 create mode 100755 config/chroot_local-includes/usr/share/initramfs-tools/scripts/live-bottom/03rpmfirmware

diff --git a/config/chroot_local-includes/usr/share/initramfs-tools/scripts/live-bottom/03rpmfirmware b/config/chroot_local-includes/usr/share/initramfs-tools/scripts/live-bottom/03rpmfirmware
new file mode 100755
index 0000000..b1ead30
--- /dev/null
+++ b/config/chroot_local-includes/usr/share/initramfs-tools/scripts/live-bottom/03rpmfirmware
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+img=/root/live/image/boot.efi.img
+
+cd /root
+if [ -e "$img" ]; then
+    mkdir -p live/efipart
+    mount -o loop "$img" live/efipart
+    for file in live/efipart/*firmware*rpm
+    do
+        [ -e "$file" ] && /bin/chroot . rpm2cpio "/$file" | cpio -i
+    done
+    umount live/efipart
+    rmdir live/efipart
+fi
+
diff --git a/config/lists/base b/config/lists/base
index cc707bb..e6ab2f3 100644
--- a/config/lists/base
+++ b/config/lists/base
@@ -67,6 +67,7 @@ user-setup
 whois
 zsync
 debconf-utils
+rpm2cpio
 
 # network
 pcmciautils
diff --git a/mkefipart-fat b/mkefipart-fat
index 1694c5e..25e2828 100755
--- a/mkefipart-fat
+++ b/mkefipart-fat
@@ -15,8 +15,8 @@ rm -f "$img"
 # Stuff boot*.efi into a FAT filesystem, making it as small as possible.  24KiB
 # headroom seems to be enough; (x+31)/32*32 rounds up to multiple of 32.
 mkfs.msdos -n KANOTIX_EFI -C "$img" \
-	$(( ($(stat -c %s binary/efi/boot/boot*.efi | awk '{s+=$1} END {print s}') / 1024 + 55) \
-	    / 32 * 32 ))
+	$(( ($(stat -c %s binary/efi/boot/boot*.efi | awk '{s+=$1} END {print s}') / 1024 + 1023) \
+	    / 1024 * 1024 ))
 mmd -i "$img" ::efi
 mmd -i "$img" ::efi/boot
 for file in binary/efi/boot/boot*.efi
-- 
cgit v1.0