Integrate Red Bear boot and packaging updates

This commit is contained in:
2026-04-22 10:22:09 +01:00
parent dd68c4ba03
commit b5ae8b2760
77 changed files with 259225 additions and 16971 deletions
+3 -3
View File
@@ -17,12 +17,12 @@ ci-img: FORCE
# The name of the target must match the name of the filesystem config file
server desktop demo: FORCE
rm -f "build/$(ARCH)/$@/harddrive.img" "build/$(ARCH)/$@/redbear-live.iso"
rm -f "build/$(ARCH)/$@/harddrive.img" "build/$(ARCH)/$@.iso"
export $(CI_COOKBOOK_CONFIG) REPO_NONSTOP=0 && \
$(MAKE) CONFIG_NAME=$@ build/$(ARCH)/$@/harddrive.img build/$(ARCH)/$@/redbear-live.iso
$(MAKE) CONFIG_NAME=$@ build/$(ARCH)/$@/harddrive.img build/$(ARCH)/$@.iso
mkdir -p $(IMG_DIR)
cp "build/$(ARCH)/$@/harddrive.img" "$(IMG_DIR)/redbear_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_harddrive.img"
cp "build/$(ARCH)/$@/redbear-live.iso" "$(IMG_DIR)/redbear_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_livedisk.iso"
cp "build/$(ARCH)/$@.iso" "$(IMG_DIR)/redbear_$(@)$(IMG_SEPARATOR)$(IMG_TAG)_livedisk.iso"
ci-os-test: FORCE
make CONFIG_NAME=os-test unmount
+4 -35
View File
@@ -13,7 +13,7 @@ else
FILESYSTEM_SIZE=$(shell $(INSTALLER) --filesystem-size -c $(FILESYSTEM_CONFIG)); \
fi && \
truncate -s "$$FILESYSTEM_SIZE"m $@.partial
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) $@.partial
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) --no-mount -c $(FILESYSTEM_CONFIG) $@.partial
mv $@.partial $@
endif
@@ -22,14 +22,14 @@ ifeq ($(FSTOOLS_IN_PODMAN),1)
$(PODMAN_RUN) make $@
else
mkdir -p $(LIVE_BUILD)
rm -rf $@ $@.partial
rm -rf $@ $@.partial
-$(FUMOUNT) /tmp/redox_installer || true
FILESYSTEM_SIZE=$(FILESYSTEM_SIZE) && \
if [ -z "$$FILESYSTEM_SIZE" ] ; then \
FILESYSTEM_SIZE=$(shell $(INSTALLER) --filesystem-size -c $(FILESYSTEM_CONFIG)); \
fi && \
truncate -s "$$FILESYSTEM_SIZE"m $@.partial
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) -c $(FILESYSTEM_CONFIG) --write-bootloader="$(LIVE_BOOTLOADER)" --live $@.partial
umask 002 && $(INSTALLER) $(INSTALLER_OPTS) --no-mount -c $(FILESYSTEM_CONFIG) --write-bootloader="$(LIVE_BOOTLOADER)" --live $@.partial
mv $@.partial $@
endif
@@ -39,38 +39,7 @@ ifeq ($(FSTOOLS_IN_PODMAN),1)
else
mkdir -p $(LIVE_BUILD)
rm -rf $@ $@.partial
tmpdir="$$(mktemp -d)"; \
esp_img="$$tmpdir/efiboot.img"; \
trap 'rm -rf "$$tmpdir"' EXIT; \
mkdir -p "$$tmpdir/EFI/BOOT"; \
BOOTLOADER_LIVE_BIOS=""; \
for path in recipes/core/bootloader/target/*/stage/usr/lib/boot/bootloader-live.bios repo/*/*/bootloader/*/usr/lib/boot/bootloader-live.bios; do \
if [ -f "$$path" ]; then \
BOOTLOADER_LIVE_BIOS="$$path"; \
break; \
fi; \
done; \
live_size="$$(stat -c%s "$(LIVE_IMG)")"; \
esp_size="$$((live_size + 64 * 1024 * 1024))"; \
truncate -s "$$esp_size" "$$esp_img"; \
mkfs.fat -F 32 "$$esp_img" >/dev/null; \
python3 local/scripts/fat_tool.py mkdir "$$esp_img" 0 EFI; \
python3 local/scripts/fat_tool.py mkdir "$$esp_img" 0 EFI/BOOT; \
python3 local/scripts/fat_tool.py cp-in "$$esp_img" 0 "$(LIVE_BOOTLOADER)" EFI/BOOT/BOOTX64.EFI; \
python3 local/scripts/fat_tool.py cp-in "$$esp_img" 0 "$(LIVE_IMG)" redox-live.iso; \
cp "$(LIVE_BOOTLOADER)" "$$tmpdir/EFI/BOOT/BOOTX64.EFI"; \
cp redbear.ipxe "$$tmpdir/redbear.ipxe"; \
if [ -n "$$BOOTLOADER_LIVE_BIOS" ]; then \
cp "$$BOOTLOADER_LIVE_BIOS" "$$tmpdir/bootloader-live.bios"; \
xorriso -as mkisofs -R -J -V "REDBEARLIVE" -o $@.partial \
-b bootloader-live.bios -no-emul-boot \
-eltorito-alt-boot -e efiboot.img -no-emul-boot \
"$$tmpdir" >/dev/null; \
else \
xorriso -as mkisofs -R -J -V "REDBEARLIVE" -o $@.partial \
-eltorito-alt-boot -e efiboot.img -no-emul-boot \
"$$tmpdir" >/dev/null; \
fi
cp "$(LIVE_IMG)" $@.partial
mv $@.partial $@
cp redbear.ipxe $(LIVE_IPXE)
endif