allow building a minimal btrfs compressed image#8751
allow building a minimal btrfs compressed image#8751igorpecovnik merged 3 commits intoarmbian:mainfrom
Conversation
Walkthrough
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro Disabled knowledge base sources:
⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
🧰 Additional context used🧠 Learnings (3)📚 Learning: 2025-09-14T06:29:18.958ZApplied to files:
📚 Learning: 2025-09-14T06:10:25.610ZApplied to files:
📚 Learning: 2025-09-11T06:12:54.213ZApplied to files:
🧬 Code graph analysis (2)config/boards/armsom-forge1.csc (1)
lib/functions/image/partitioning.sh (2)
🔇 Additional comments (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Is there a way this could be generalized so that other boards can profit from this feature? |
Declaring these options in board config file should work: |
igorpecovnik
left a comment
There was a problem hiding this comment.
generalized
Declaring these options in board config file should work:
And under condition that boot loader have btrfs enabled. Which in general is, but still, can be or can not be ...
This is hard to generalize for all boards. If we would have armbian-uboot.sh similar to armbian-kernel.sh but that is not worth developing.
|
✅ This PR has been reviewed and approved — all set for merge! |
|
Seems it breaks, at least, ODroin-M1 (not tested anything else yet). |
Before this PR all btrfs rootfs is booting from kernel inside a ext4 boot partition. If you want to keep the old state, declare If you want btrfs rootfs without boot partition, you have to enable btrfs in u-boot if it is supported. |
|
First of all, I want my devices to keep booting. Thank you for hint. |
Description
If the rootfs is not ext4 filesystem, we force to use a single boot partiton, while this is not necessary if bootloader supports the filesystem of root partition. So this pr will allow single root partition for all filesystem.
Then we can build a minimal image which can get flashed to a storage which is smaller than 512MB.
ArmSoM Forge1 has a on-board 512MB SPI NAND flash. Although uboot doesn't support booting from it now.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Please also note any relevant details for your test configuration.
./compile.sh BOARD=armsom-forge1 BRANCH=vendor BTRFS_COMPRESSION=zstd BUILD_DESKTOP=no BUILD_MINIMAL=yes DEB_COMPRESS=xz FIXED_IMAGE_SIZE=500 INSTALL_ARMBIAN_FIRMWARE=no KERNEL_BTF=yes KERNEL_CONFIGURE=no KERNEL_GIT=shallow RELEASE=trixie ROOTFS_TYPE=btrfsChecklist:
Please delete options that are not relevant.