A manifest file is a JSON formatted text file. It is always located inside packages application/ directory and the name of the manifest is always spaceify.manifest.

Below are the fields a manifest file can contain. Some of the fields are common for spacelets and applications and some are for spacelets only. Applications can not be installed or published without the required fields.

The fields, required and optional, are expected to be formatted as specified in this documentation. Detailed information about the fields can be found in the Fields subsection.

Required fields

Field Type
provides_services object array [ {"service_name": string, "service_type": string}, … ]
name string
unique_name string
version string
type string
category string
short_description string
appstore_description string
developer object {"name": string, "email": string, "url": string}

Optional fields

Field Type
requires_services object array [ {"service_name": string, "suggested_application": string}, … ]
start_command string
stop_command string
docker_image boolean
install_commands string array [string, …]
implements string array [string, …]
contributors object array [ {"name": string, "email": string, "url": string}, … ]
keywords string array [string, …]
license string
creation_date string
images object array [ {"directory": string, "name": string, "title": string}, … ]
repository string
web_url string
bugs string

Optional native application specific fields

Field Type
apt_repositories object array [{"architectures": ["architecture1", …], "source": "source1", "public_key": "publicKey1", "description": "description1"}, …]
apt_packages object array [{"name": "name1", "description": "description1"}, …]
deb_packages object array [{"name": "name1.deb", "description": "description1"}, …]

Fields required by native applications

Field Type
systemd_unit_file string

Fields required by spacelets

Field Type
shared boolean
origins string array [string, …]
inject_identifier string
inject_hostnames string array [string, …]
inject_files object array [ {"directory": string, "name": string, "type": string}, … ]

Example manifest of a spacelet

  "provides_services": [ {"service_name": "", "service_type": "standard"} ],
  "name": "Example spacelet",
  "unique_name": "spaceify/example/spacelet",
  "type": "spacelet",
  "category": "educational",
  "start_command": "node example.js",
  "origins": [ "" ],
  "shared": true,
  "short_description": "Example description for example spacelet."
copyright © 2014