WARNING: This server provides a static reference view of the NetKernel documentation. Links to dynamic content do not work. For the best experience we recommend you install NetKernel and view the documentation in the live system .

The Apposite package system is loosely modeled on the Debian Linux apt package repository and package management tool. Apposite recasts the ideas of package management into the ROC world of NetKernel. Apposite comprises a software repository format, a physical software packaging format containing a module payload, the Apposite client-side management tool and a local database which retains a record of installed software and installation transactions.

Key features include:

  • Zero downtime, hot installation and removal of software packages
  • Multiple repositories
  • Repository hosting with various persistence mechanisms including HTTP, file, RDBMS and virtual ROC.
  • Packages which are themselves NetKernel modules with their own ROC address space within which payload modules are resource representations.
  • Public Key crypto of the repository and signing of all packages with a "trust boot-strap".
  • Support for update and security notifications
  • Multiple package "sets" within a given repository.
  • Installation and management of local user-created packages.
  • Package versioning and dependency reconciliation.
  • Support for virtual packages.
  • Full transaction tracking of software changes with rollback.
  • Support for hot upgrade and replacement of the kernel, stem system (layer0, etc ) and Apposite self-updating.

Important note for developers - /etc/modules.xml

The definitive resource used by NetKernel when it boots and loads modules is [ install ]/etc/modules.xml.

The Apposite system runs as a system application on the NetKernel platform. When the Apposite client downloads and installs packages containing modules, it places those modules in [ install ]/modules/ and creates entries for the modules in the resource [ install ]/etc/modules.xml.

If you are a developer and want to add a development module to the system simply edit modules.xml as described in the tutorial Create a Module.