At D3 we have had good luck cross compiling into .deb packages. We have a relatively powerful build server running Jenkins. We package our kernel and applications as debs. If you use autotools it’s very easy to cross compile. You could then place the debs in a repository and use apt to pull them down. We also bundle our DTB files into our kernel image. It’s not difficult to detect which platform (Nano, Tx2, Xavier) you are running on to install the correct DTB. You can install signed kernels and DTB files using
dd from the target.
The above works well for users that wish to use a mostly ‘standard’ nano/tx2/xavier image. Most D3 customers fall into that category.
I’m personally very interested in seeing a more embedded deployment style that you seem to be pursuing (a minimal single image with a small bootloader). Please share your results!
You can see how we bundle the kernel and dtb into a .deb at the link below. In a future release we’ll be moving away from make-kpkg and using the .deb facilities that are already present in the Linux kernel build system.