meta-agl-bsp/meta-ti: Fix kernel config fragment about smack
[AGL/meta-agl.git] / scripts / mkefi-agl.sh
index d1cf6f4..2dafa9e 100755 (executable)
@@ -37,8 +37,8 @@ OUT="/dev/null"
 #
 # Defaults
 #
-# 20 Mb for the boot partition
-BOOT_SIZE=20
+# 100 Mb for the boot partition
+BOOT_SIZE=100
 
 # Cleanup after die()
 cleanup() {
@@ -295,7 +295,7 @@ if [ $ROOTFS_DISKID == "" ]; then
     die "Failed to read DISKID"
 fi
 ROOTFS_PARTUUID="$ROOTFS_DISKID-02"
-debug "PARTUUID for ROOTFS in grub.conf is $ROOTFS_PARTUUID"
+debug "PARTUUID for ROOTFS is $ROOTFS_PARTUUID"
 
 if [ $DEBUG -eq 1 ]; then
        parted -s $DEVICE print
@@ -319,8 +319,8 @@ else
        mkfs.vfat $BOOTFS -n "EFI" >$OUT 2>&1 || die "Failed to format $BOOTFS"
 fi
 
-debug "Formatting $ROOTFS as ext3"
-mkfs.ext3 -F $ROOTFS -L "ROOT" >$OUT 2>&1 || die "Failed to format $ROOTFS"
+debug "Formatting $ROOTFS as ext4"
+mkfs.ext4 -F $ROOTFS -L "ROOT" >$OUT 2>&1 || die "Failed to format $ROOTFS"
 
 
 #
@@ -341,7 +341,7 @@ fi
 echo "bootx64.efi" > $BOOTFS_MNT/startup.nsh || error "Failed to create startup.nsh"
 # Copy the efi loader and configs (booti*.efi and grub.cfg if it exists)
 cp -r $HDDIMG_MNT/EFI $BOOTFS_MNT >$OUT 2>&1 || error "Failed to copy EFI dir"
-# Silently ignore a missing gummiboot loader dir (we might just be a GRUB image)
+# Silently ignore a missing systemd-boot or gummiboot loader dir (we might just be a GRUB image)
 cp -r $HDDIMG_MNT/loader $BOOTFS_MNT >$OUT 2>&1
 
 # Update the boot loaders configurations for an installed image
@@ -362,12 +362,32 @@ if [ -e "$GRUB_CFG" ]; then
        sed -i "s/ LABEL=[^ ]*/ /" $GRUB_CFG
 
        sed -i "s@ root=[^ ]*@ @" $GRUB_CFG
-       sed -i "s@vmlinuz @vmlinuz root=$ROOTFS_PARTUUID ro rootwait quiet @" $GRUB_CFG
+       sed -i "s@vmlinuz @vmlinuz root=$ROOTFS_PARTUUID @" $GRUB_CFG
 fi
 
+# look for a systemd-boot loader.conf file and create a default boot entry
+SYSTEMDBOOT_CFG="$BOOTFS_MNT/loader/loader.conf"
+if [ -e "$SYSTEMDBOOT_CFG" ]; then
+       info "Configuring SYSTEMD-BOOT"
+    SYSTEMDBOOT_BOOT="$BOOTFS_MNT/loader/entries/boot.conf"
+    SYSTEMDBOOT_DEBUG="$BOOTFS_MNT/loader/entries/debug.conf"
+    # Delete the install entry
+       sed -i "/menuentry 'install'/,/^}/d" $SYSTEMDBOOT_CFG
+       rm -rf "$BOOTFS_MNT/loader/entries/install.conf" >$OUT 2>&1
+       # Add PARTUUID to the boot entry file
+       if [ ! -e "$SYSTEMDBOOT_BOOT" ]; then
+        die "no boot.conf entry found in systemd-boot directories"
+    fi
+       # Delete any LABEL= strings
+       sed -i "s/ LABEL=[^ ]*/ /" $SYSTEMDBOOT_BOOT
+
+       sed -i "s@ root=[^ ]*@ @" $SYSTEMDBOOT_BOOT
+       sed -i "s@options @options root=$ROOTFS_PARTUUID @" $SYSTEMDBOOT_BOOT   
+fi     
+
 
 # Ensure we have at least one EFI bootloader configured
-if [ ! -e $GRUB_CFG ] ; then
+if [ ! -e $GRUB_CFG ]  && [ ! -e $SYSTEMDBOOT_CFG ] ; then
        die "No EFI bootloader configuration found"
 fi