A client software program for use on an embedded computing device includes an
operating
system layer including an abstraction layer, a programming environment, and an
application framework including a package manager. The client is configured to
interface with a client support server including a package repository, for receiving
package data for running a software package on the embedded computing device.