OSDN Git Service

[update] : Use directories for each arch in efiboot.img
authorhayao <shun819.mail@gmail.com>
Sun, 18 Oct 2020 12:25:20 +0000 (21:25 +0900)
committerhayao <shun819.mail@gmail.com>
Sun, 18 Oct 2020 12:25:20 +0000 (21:25 +0900)
allarch.sh
build.sh
efiboot/loader/entries/archiso-cd.conf

index a6fabcf..bd8f15b 100755 (executable)
@@ -1053,9 +1053,8 @@ make_efi() {
     for arch in ${all_arch[@]}; do
         sed "s|%ARCHISO_LABEL%|${iso_label}|g;
             s|%OS_NAME%|${os_name}|g;
-            s|%KERNEL_FILENAME%|${kernel_filename}-${arch}|g;
+            s|%KERNEL_FILENAME%|${kernel_filename}|g;
             s|%ARCH%|${arch}|g;
-            s|archiso.img|archiso-${arch}.img|g;
             s|%INSTALL_DIR%|${install_dir}|g" \
         "${script_path}/efiboot/loader/entries/archiso-usb.conf" > "${isofs_dir}/loader/entries/archiso-${arch}.conf"
     done
@@ -1087,8 +1086,9 @@ make_efiboot() {
     mkdir -p "${work_dir}/efiboot/EFI/alteriso"
 
     for arch in ${all_arch[@]}; do
-        cp "${isofs_dir}/${install_dir}/boot/${arch}/${kernel_filename}" "${work_dir}/efiboot/EFI/alteriso/${kernel_filename}-${arch}.efi"
-        cp "${isofs_dir}/${install_dir}/boot/${arch}/archiso.img" "${work_dir}/efiboot/EFI/alteriso/archiso-${arch}.img"
+        mkdir -p "${work_dir}/efiboot/EFI/alteriso/${arch}"
+        cp "${isofs_dir}/${install_dir}/boot/${arch}/${kernel_filename}" "${work_dir}/efiboot/EFI/alteriso/${arch}/${kernel_filename}.efi"
+        cp "${isofs_dir}/${install_dir}/boot/${arch}/archiso.img" "${work_dir}/efiboot/EFI/alteriso/${arch}/archiso.img"
     done
 
     local _ucode_image
@@ -1108,24 +1108,18 @@ make_efiboot() {
     done
 
     mkdir -p "${work_dir}/efiboot/loader/entries"
-    cp "${script_path}/efiboot/loader/loader.conf" "${work_dir}/efiboot/loader/"
+    sed "s|%ARCH%|${arch}|g;" "${script_path}/efiboot/loader/loader.conf" > "${work_dir}/efiboot/loader/loader.conf"
     cp "${isofs_dir}/loader/entries/uefi-shell"* "${work_dir}/efiboot/loader/entries/"
 
     for arch in ${all_arch[@]}; do
         sed "s|%ARCHISO_LABEL%|${iso_label}|g;
             s|%OS_NAME%|${os_name}|g;
-            s|%KERNEL_FILENAME%|${kernel_filename}-${arch}|g;
+            s|%KERNEL_FILENAME%|${kernel_filename}|g;
             s|%ARCH%|${arch}|g;
-            s|archiso.img|archiso-${arch}.img|g;
             s|%INSTALL_DIR%|${install_dir}|g" \
         "${script_path}/efiboot/loader/entries/archiso-cd.conf" > "${work_dir}/efiboot/loader/entries/archiso-${arch}.conf"
     done
 
-    # shellx64.efi is picked up automatically when on /
-    #if [[ -f "${isofs_dir}/shellx64.efi" ]]; then
-    #    cp "${isofs_dir}/shellx64.efi" "${work_dir}/efiboot/"
-    #fi
-
     cp "${isofs_dir}/EFI/shell"*".efi" "${work_dir}/efiboot/EFI/"
 
     umount -d "${work_dir}/efiboot"
index 150b3a5..cdb381a 100755 (executable)
--- a/build.sh
+++ b/build.sh
@@ -1137,8 +1137,8 @@ make_efiboot() {
 
     mkdir -p "${work_dir}/efiboot/EFI/alteriso"
 
-    cp "${isofs_dir}/${install_dir}/boot/${arch}/${kernel_filename}" "${work_dir}/efiboot/EFI/alteriso/${kernel_filename}.efi"
-    cp "${isofs_dir}/${install_dir}/boot/${arch}/archiso.img" "${work_dir}/efiboot/EFI/alteriso/archiso.img"
+    cp "${isofs_dir}/${install_dir}/boot/${arch}/${kernel_filename}" "${work_dir}/efiboot/EFI/alteriso/${arch}/${kernel_filename}.efi"
+    cp "${isofs_dir}/${install_dir}/boot/${arch}/archiso.img" "${work_dir}/efiboot/EFI/alteriso/${arch}/archiso.img"
 
     local _ucode_image
     for _ucode_image in "${airootfs_dir}/boot/"{intel-uc.img,intel-ucode.img,amd-uc.img,amd-ucode.img,early_ucode.cpio,microcode.cpio}; do
@@ -1152,7 +1152,7 @@ make_efiboot() {
     )
 
     mkdir -p "${work_dir}/efiboot/loader/entries"
-    cp "${script_path}/efiboot/loader/loader.conf" "${work_dir}/efiboot/loader/"
+    sed "s|%ARCH%|${arch}|g;" "${script_path}/efiboot/loader/loader.conf" > "${work_dir}/efiboot/loader/loader.conf"
     cp "${isofs_dir}/loader/entries/uefi-shell"* "${work_dir}/efiboot/loader/entries/"
 
 
index c980766..9bbb1b5 100644 (file)
@@ -6,8 +6,8 @@
 #
 
 title   %OS_NAME% archiso %ARCH% UEFI CD
-linux   /EFI/alteriso/%KERNEL_FILENAME%.efi
+linux   /EFI/alteriso/%ARCH%/%KERNEL_FILENAME%.efi
 initrd  /EFI/alteriso/intel-ucode.img
 initrd  /EFI/alteriso/amd-ucode.img
-initrd  /EFI/alteriso/archiso.img
+initrd  /EFI/alteriso/%ARCH%/archiso.img
 options archisobasedir=%INSTALL_DIR% archisolabel=%ARCHISO_LABEL%