I’m sorry, I did not intend to sound critical or disrespectful regarding Armbian, in fact I have the greatest respect for your work.
I will evaluate Armbian deeper, but here is my current situation. I started my build script 4 years ago with an Armadillo board, then added support for A13-Olinuxino, then for the RaspberryPi 3B+/Zero-2W and now I have to decide whether to add support for this BananaPi or to switch over to Armbian.
For a build, each of my “boards” can be combined with one of our “projects” which we distrubute this way, the script creates bootable images, all settings preseeed such that the only thing left on first boot is to expand the rootfs, no user interaction (our products don’t have a keyboard or mouse).
Rootfs is created with Debian multistrap from jessy up to bullseye, the script can configure, patch (as needed) and compile both kernel and u-boot, everything is 100% automated to create reproducible builds, however I based it on a Amd64 Debian host VM, not Ubuntu.
My script also builds 32- and 64-bit Windows executables of Python projects by invoking PyInstaller via wine.
Armbian was designed to provide this in as simple as possible manner. How you could miss that?
No, I didn’t miss that. I had created an Ubuntu VM, installed Armbian and ran a test build for another BananaPi (bananapim2zero/edge/bullseye). I read through the Armbian sources to understand
customize-image.sh and the hook
pre_customize_image right before that (outside the chroot) as I can do much of what I need at these two points.
But then I couldn’t figure out where to call
debconf-set-selections for preseeding apt packages
console-setup, I had the wrong impression that Armbian was single-partition rootfs+bootfs (sorry for missing that), and I simply thought the whole Armbian boot sequence (which is excellent for the general purpose case) deviates too much from my needs, and this is where I stopped evaluating, prematurely as it seems.
Having said all that, please understand that it still appears to be less work to just build bootloader and kernel myself (as I have done previously for the A13-Olinuxino) and integrate it into my own rather than to migrate over to Armbian.