diff --git a/.github/workflows/mikrotik_patch.yml b/.github/workflows/mikrotik_patch.yml index c203529..66d3632 100644 --- a/.github/workflows/mikrotik_patch.yml +++ b/.github/workflows/mikrotik_patch.yml @@ -163,17 +163,19 @@ jobs: - name: Patch chr-${{ env.LATEST_VERSION }}.img run: | sudo modprobe nbd - sudo apt install -y qemu-utils extlinux syslinux > /dev/null + sudo apt install -y qemu-utils extlinux > /dev/null sudo qemu-nbd -c /dev/nbd0 -f raw chr-$LATEST_VERSION.img sudo mkdir -p ./img/{efi,routeros} sudo mkfs.vfat -n "Boot" /dev/nbd0p1 sudo mount /dev/nbd0p1 ./img/efi/ sudo mkdir -p ./img/efi/EFI/BOOT/ sudo cp linux ./img/efi/EFI/BOOT/BOOTX64.EFI - sudo mkdir -p ./img/efi/syslinux/ - sudo extlinux --install ./img/efi/syslinux/ - echo -e "default system\nlabel system\n\tkernel /EFI/BOOT/BOOTX64.EFI\n\tappend load_ramdisk=1 root=/dev/ram0" > syslinux.cfg - sudo cp syslinux.cfg ./img/efi/syslinux/ + sudo mkdir -p ./img/efi/boot/ + xxd -p -u /usr/bin/extlinux | tr -d '\n' | sed -e 's/20436F707972696768742028432920313939342D3230313520482E20506574657220416E76696E20657420616C0D0A/00436F707972696768742028432920313939342D3230313520482E20506574657220416E76696E20657420616C0D0A/g' -e 's/0D0A5359534C494E555820362E30342000/0D0A4C6F6164696E672073797374656D00/g' -e 's/203230323130383131/003230323130383131/g' -e 's/43485300454444/00485300004444/g' | xxd -p -r >extlinux + sudo cp extlinux /usr/bin/extlinux + sudo extlinux --install -H 64 -S 32 ./img/efi/boot/ + echo -e "default system\nlabel system\n\tkernel /EFI/BOOT/BOOTX64.EFI\n\tappend load_ramdisk=1 root=/dev/ram0 quiet" > syslinux.cfg + sudo cp syslinux.cfg ./img/efi/boot/ sudo rm -f syslinux.cfg sudo umount /dev/nbd0p1 sudo mount /dev/nbd0p2 ./img/routeros/