This repository enables building resin.io for various devices.
- meta-resin-common : layer which contains common recipes for all our supported platforms.
- meta-resin-* : layer which contains recipes specific to a board / BSP.
- other files : README, COPYING, etc.
This repository contains layers named in the form meta-resin-${board_name} with metadata for building Resin OS for various boards. Each of this directoy has a README.md stating that layer's dependencies and revisions that will have to used in the following steps.
For example, for a beaglebone, one should to the following:
Step 1 - clone dependencies and switch to the revision indicated in meta-resin-beaglebone/README.md (following example is for the poky dependency, but one should do this for all the dependencies listed there except the meta-resin dependency which should be already checked-out). This example assumes cloning of the dependencies is done in the same directory meta-resin has been cloned.
$ git clone git://git.yoctoproject.org/poky && cd poky && git checkout ${resivion} && cd ../
where ${revision} is the revision stated in meta-resin-beaglebone/README.md
Repeat the above step for all the dependencies.
Step 2 - configure the build
$ source poky/oe-init-build-env
Then set the Resin specific options to build/conf/local.conf file: DISTRO = "resin-systemd" MACHINE = "beaglebone"
the machine name can be found in meta-resin-beaglebone/README.md under "Supported machines".
Edit build/conf/bblayers.conf file and add to the BBLAYERS variable all the dependencies listed in meta-resin-beaglebone/README.md (except the poky dependencies which should already be added)
Step 3 - start the build:
$ bitbake ${image}
where ${image} is found in meta-resin-beaglebone/README.md under "Supported images".
RESIN_STAGING_BUILD variable gets injected into DISTRO_FEATURES. If RESIN_STAGING_BUILD contains 'yes' then 'resin-staging' distro feature is added. Based on this, recipes can decide what staging specific changes are needed. By default RESIN_STAGING_BUILD is empty which corresponds to a normal build (resis-staging won't be appended to DISTRO_FEATURE). If user wants a staging build, RESIN_STAGING_BUILD = "yes" needs to be added to local.conf.
To make it short:
- If RESIN_STAGING_BUILD is not present in your local.conf or it doesn't include "yes" : Production build selected (default bahavior)
- If RESIN_STAGING_BUILD is defined local.conf and includes "yes" : Staging build selected
We currently tested and provide explicit support for the following WiFi adapters:
- bcm43143 based adapters
- Example: Official RPI WiFi adapter link
To contribute send bitbucket pull requests targeting this repository.
Please refer to: Yocto Contribution Guidelines
- Supervisor fails with a log similar to:
Step 3 : RUN chmod 700 /entry.sh
---> Running in 445fe69866f9
operation not supported
This is probably because of a docker bug where, if you update kernel and don't reboot, docker gets confused. The fix is to reboot your system. More info: http://stackoverflow.com/questions/29546388/getting-an-operation-not-supported-error-when-trying-to-run-something-while-bu