If your target system is Debian, then you should just take advantage of the Debian packaging system to provide updates. Package your compiled application in a .deb
package, distribute it on an APT archive which is included in your system's sources.list
, and just use cron to schedule a regular update check with apt
. The .deb
package can include a post-installation script that restarts your application.
You could run an apt-proxy
caching proxy on your "gateway" nodes that have internet access, and have the other nodes use that as their apt
source.
Distributing source code in this case is probably not appropriate, because then you would need to include a full compiler toolchain on your target system.