sudomesh / sudowrt-firmware

Scripts to build the sudo mesh OpenWRT firmware.
Other
73 stars 19 forks source link

Some way to update node firmwares #55

Open Juul opened 9 years ago

Juul commented 9 years ago

gluon has a (centralized) update system that we could borrow, though we'd really prefer a decentralized system in the long run

jhpoelen commented 6 years ago

Related see https://github.com/sudomesh/bugs/issues/18#issuecomment-368263669 .

gobengo commented 6 years ago

My relevant thoughts on this are here: https://github.com/sudomesh/bugs/issues/20#issuecomment-369080052

In thinking through an implementation plan, I have started to think that maybe we are outgrowing just openwrt/buildroot for image building. We need something that builds not just a flashable image, but a 'package feed' of package updates, or maybe even something that can do over-the-air updates of the firmware image itself (nice because no 'configuration drift' of different combinations of packages).

I have been thinking that it might be ideal long-term to really define what each type of 'node' needs such that alternative build systems can be used to make 'valid/compatible' home nodes.

Personally I would like use this as a learning exercise for the Yocto Project, which is the Linux Foundation's cross-compiling toolchain for embedded linux development. I just took a training course on it at http://www.socallinuxexpo.org/scale/16x . Some advantages I see:

I intend to prototype this in https://gitlab.ops.bengo.is/ben/mesh-network/ . If I get it working at all, we can start specifying exactly how a resultant system needs to behave to be "peoplesopen.network homenode"-compatible.

gobengo commented 6 years ago

Relevant: https://github.com/theupdateframework/specification/blob/master/tuf-spec.md