mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-07-12 18:19:42 -07:00
6faa39c570
Until now anything living on the FAT boot partition (kernel Image and the device trees) was reflash-only, breaking the promise that every update can arrive either by rewriting the image or through pacman and the ES update menu. Close the gap with three pieces: - The linux package now ships the kernel image in the rootfs under /usr/share/bootloader/Image next to the device_trees it already installs, so a pacman upgrade of linux delivers both. - archr-flash-sync copies Image to /flash/KERNEL (refreshing the KERNEL.md5 sidecar) and device_trees/*.dtb to /flash/dtbs, but only the files whose sha256 actually changed, each written as a verified .new temp in the same FAT directory and renamed over the original so the torn-write window is the rename alone. /flash/overlays (the user's panel overlay), extlinux, boot scripts and u-boot are never touched; u-boot/TPL live in raw sectors where a torn write bricks the card, so the bootloader intentionally stays image-flash only. - An alpm PostTransaction hook (HookDir /etc/pacman.d/hooks) fires the sync whenever a transaction touches the bootloader payload. gen-pacman-repo now prunes the .image build-plumbing directory from packages, which would otherwise dump a duplicate raw kernel at /.image on every update. Hardware test pending: run archr-flash-sync by hand over SSH and check the device still boots with the synced KERNEL and dtbs. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>