Recently I've been thinking , wouldn't it be nice to be able to download firmware directly on the device ? It essentially fixes a major weak point - file getting corrupted anywhere in between downloading it to PC and transferring it over to the router
Since you guys host everything on firmware selector it should be easy to integrate this with Luci - at the top of the screen show disclaimer if new version of openwrt is released , when you click on that it leads you to the Luci update page where you can select the version you want and the update process proceeds like it normally would - pulls the image, verifies and then flashes if all looks good?
Or grabs the stable firmware same way you or I would from here firmware-selector.openwrt.org ? ( + modifies the firmware adding the packages you already have installed ? )
Is there any reason why firmware has to be built with package support? (Can't it just look what packages are installed , move them to a temporary partition and install them back after update?)
Never crossed my mind since I don't use any but I can see how that could be a problem...
The packages are also floating targets that comes alive, evolves or disappears in to the fog. But there must be something in the OpenWrt firmware that handles the specific packages (not the opkg but the source code) so therefor the packages at build time are locked with the OpenWrt build version.
Binary packages are built to be compatible with a specific ABI.
The ABI depends on the library and kernel versions and flags used at the time they are built.
Thus, ABI changes require to rebuild the binary packages.