List of installable add-ons for the Mozilla IoT Gateway. These are discoverable from the Settings page.
The add-on API is described in this document.
Your add-on should be packaged as an npm-compatible package. If it is written in Javascript and is actually npm-compatible, you can simply package it with npm pack
. If not, the layout needs to be the same.
If your package contains any binaries, i.e. executables, shared libraries, etc., you must cross-compile for any architecture(s) you want to support and distribute a package for each. The currently supported architectures are:
any
: Use this if your package does not contain binaries, i.e. if it's pure Javascript/Python.darwin-x64
: 64-bit Mac OS Xlinux-arm
: Linux on 32-bit ARM (this should be built to support armv6, such as older Raspberry Pi generations)linux-arm64
: Linux on 64-bit ARMlinux-ia32
: Linux on 32-bit x86linux-x64
: Linux on 64-bit x86win32-ia32
: Windows on 32-bit x86win32-x64
: Windows on 64-bit x86
You can submit a pull request or an issue to this project. You must include the following information:
-
name
: The package name. This should be the same as in yourpackage.json
. -
display_name
: A friendly display name for your package. This will be shown in the Gateway's UI. -
description
: A friendly description for your package. This will be shown in the Gateway's UI. -
version
: The package version. This should be the same as in yourpackage.json
. -
packages
: An object describing supported architectures and their packages. Each entry should be of the form:"architecture": { "url": "https://path.to/my/package.tgz", "checksum": "sha256 of package" }
architecture
: Replace this with the actual architecture (see the previous section).url
: A URL to download the packaged tarball (.tar.gz
or.tgz
) from.checksum
: Checksum of the tarball
-
api
: The API levels supported by this add-on. This should be the same as in yourpackage.json
, so an object with the following 2 properties:min
: The minimum supported API levelmax
: The maximum supported API level