build installer with extensions

This commit is contained in:
local-build
2026-04-11 15:18:06 -05:00
parent 7830aa03af
commit 2a51b5d60b
3 changed files with 19 additions and 15 deletions
+1
View File
@@ -1 +1,2 @@
checkouts/
*.env
+15 -13
View File
@@ -43,7 +43,6 @@ help:
@echo "installer : Build installer"
@echo "image : Build disk image for Raspberry Pi 5"
@echo "pi5 : Full build pipeline for Raspberry Pi 5"
@echo "release : Use only when building the final release, this will tag relevant images with the current Git tag."
@echo "clean : Clean up any remains"
#
@@ -130,18 +129,27 @@ initramfs-kernel:
.PHONY: installer
installer:
cd "$(CHECKOUTS_DIRECTORY)/talos" && \
$(MAKE) \
TAG=${TALOS_TAG} REGISTRY=$(REGISTRY) USERNAME=$(REGISTRY_USERNAME) PUSH=$(PUSH) \
PKG_KERNEL=$(REGISTRY)/$(REGISTRY_USERNAME)/kernel:$(PKGS_TAG) \
INSTALLER_ARCH=arm64 PLATFORM=linux/arm64 SED=$(SED) \
installer
docker \
run --rm -t -v ./_out:/out -v /dev:/dev --privileged $(REGISTRY)/$(REGISTRY_USERNAME)/imager:$(TALOS_TAG) \
installer \
--arch arm64 \
--base-installer-image="$(REGISTRY)/$(REGISTRY_USERNAME)/installer-base:$(TALOS_TAG)" \
--overlay-name="rpi_5" \
--overlay-image="$(REGISTRY)/$(REGISTRY_USERNAME)/sbc-raspberrypi:$(SBCOVERLAY_TAG)" \
--overlay-option="configTxtAppend=$$CONFIG_TXT" \
$(EXTENSION_ARGS) \
$(EXTRA_KERNEL)
crane push \
./checkouts/talos/_out/installer-arm64.tar \
${REGISTRY}/${REGISTRY_USERNAME}/installer:${TALOS_TAG}-arm64-extensions
.PHONY: image
image:
cd "$(CHECKOUTS_DIRECTORY)/talos" && \
docker \
run --rm -t -v ./_out:/out -v /dev:/dev --privileged $(REGISTRY)/$(REGISTRY_USERNAME)/imager:$(TALOS_TAG) \
$(ASSET_TYPE) --arch arm64 \
$(ASSET_TYPE) \
--arch arm64 \
--base-installer-image="$(REGISTRY)/$(REGISTRY_USERNAME)/installer-base:$(TALOS_TAG)" \
--overlay-name="rpi_5" \
--overlay-image="$(REGISTRY)/$(REGISTRY_USERNAME)/sbc-raspberrypi:$(SBCOVERLAY_TAG)" \
@@ -149,12 +157,6 @@ image:
$(EXTENSION_ARGS) \
$(EXTRA_KERNEL)
.PHONY: release
release:
docker pull $(REGISTRY)/$(REGISTRY_USERNAME)/installer:$(TALOS_TAG) && \
docker tag $(REGISTRY)/$(REGISTRY_USERNAME)/installer:$(TALOS_TAG) $(REGISTRY)/$(REGISTRY_USERNAME)/installer:$(TAG) && \
docker push $(REGISTRY)/$(REGISTRY_USERNAME)/installer:$(TAG)
.PHONY: pi5
pi5: checkouts-clean checkouts patches kernel initramfs-kernel installer-base imager overlay installer image
@@ -20,8 +20,9 @@ fi
REF="$1"
REPO="raspberrypi/linux"
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PKGS_PATCH="${SCRIPT_DIR}/patches/siderolabs/pkgs/0001-Patched-for-Raspberry-Pi-5.patch"
SBC_PATCH="${SCRIPT_DIR}/patches/siderolabs/sbc-raspberrypi/0001-Patched-for-Raspberry-Pi-5.patch"
REPO_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
PKGS_PATCH="${REPO_ROOT}/patches/siderolabs/pkgs/0001-Patched-for-Raspberry-Pi-5.patch"
SBC_PATCH="${REPO_ROOT}/patches/siderolabs/sbc-raspberrypi/0001-Patched-for-Raspberry-Pi-5.patch"
for f in "$PKGS_PATCH" "$SBC_PATCH"; do
if [ ! -f "$f" ]; then