Skip to content

Commit ca1b703

Browse files
Merge pull request #149 from FrameworkComputer/rufus-iso
Build Rufus compatible ISO
2 parents 1420d6f + 6ebb5de commit ca1b703

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed

.github/workflows/ci.yml

+11-2
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,21 @@ jobs:
7474
name: framework.efi
7575
path: framework_uefi/build/x86_64-unknown-uefi/boot.efi
7676

77-
- name: Install mtools to build ESP (Linux)
78-
run: sudo apt-get install -y mtools
77+
- name: Install mtools to build ESP and ISO (Linux)
78+
run: sudo apt-get install -y mtools genisoimage
7979

8080
- name: Build ESP (Linux)
8181
run: make -C framework_uefi
8282

83+
- name: Build ISO (Linux)
84+
run: make -C framework_uefi iso
85+
86+
- name: Upload UEFI App ISO
87+
uses: actions/upload-artifact@v4
88+
with:
89+
name: UEFI-Shell-fwk.iso
90+
path: framework_uefi/build/x86_64-unknown-uefi/UEFI-Shell-fwk.iso
91+
8392
build-windows:
8493
name: Build Windows
8594
runs-on: windows-2022

framework_uefi/Makefile

+15
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ QEMU_FLAGS=\
1515

1616
all: $(BUILD)/boot.img
1717

18+
iso: $(BUILD)/UEFI-Shell-fwk.iso
19+
1820
clean:
1921
rm -r $(BUILD)
2022

@@ -39,6 +41,19 @@ $(BUILD)/efi.img: $(BUILD)/boot.efi
3941
mcopy -i $@.tmp $< ::efi/boot/bootx64.efi
4042
mv $@.tmp $@
4143

44+
$(BUILD)/shellx64.efi:
45+
wget https://github.com/pbatard/UEFI-Shell/releases/download/24H2/shellx64.efi -O $@
46+
47+
$(BUILD)/UEFI-Shell-fwk.iso: $(BUILD)/boot.efi $(BUILD)/shellx64.efi
48+
mkdir -p $(BUILD)/$@.tmp/efi/boot
49+
cp $(BUILD)/boot.efi $(BUILD)/$@.tmp/efi/boot/fwk.efi
50+
cp $(BUILD)/shellx64.efi $(BUILD)/$@.tmp/efi/boot/bootx64.efi
51+
genisoimage -v \
52+
-V "UEFI SHELL with fwk.efi" \
53+
-JR \
54+
-o "$(BUILD)/UEFI-Shell-fwk.iso" \
55+
$(BUILD)/$@.tmp
56+
4257
$(BUILD)/boot.efi: ../Cargo.lock $(SRC_DIR)/Cargo.toml $(SRC_DIR)/src/*
4358
mkdir -p $(BUILD)
4459
cargo rustc \

0 commit comments

Comments
 (0)