This workspace provides all the material needed to build a LORIX OS distribution for the Wifx gateways.
The LORIX OS documentation is available on https://iot.wifx.net/docs/lorix-os. This documention will focus on the LORIX OS Build System Quick Start.
- LORIX One 256MB
- LORIX One 512MB
- Wifx L1
- Git
- 50 Gbytes of free disk space
- One of
- A Linux based operating system compatible with Docker
- Ubuntu 20.04
Download the workspace using Git
$ cd ~
$ git clone --recursive https://github.com/Wifx/lorix-os.git
Copy default configuration files from the lorix-os/tools directory:
$ cd lorix-os
$ mkdir -p poky/build/conf
$ cp tools/config/* poky/build/conf
Note: The default 'machine' is the LORIX One 512MB. If want want to build for another machine, edit the
poky/build/conf/local.conf
file.
For other configuration changes, please check the configuration documentation.
To meet the dependencies needed for the build, you have two possibilities:
- Docker: build into a Docker container containing all the dependencies
- Native: install the dependencies on your system
We recommend building into the Docker container as it will ensure a reproductible build without interfering with the host system.
Follow the guides provided by those links. Once the dependency installed, you will have a compatible host system and can go on with building the images.
From the workspace (lorix-os
directory).
-
Enter the poky directory to configure the build system
$ cd poky
-
Initialize the build directory
$ source oe-init-build-env
This will setup the environment. The
build
directory becomes the active directory. -
Build the Wifx standard image
$ bitbake wifx-image-os
Typical bitbake output:
Build Configuration: BB_VERSION = "1.44.0" BUILD_SYS = "x86_64-linux" NATIVELSBSTRING = "universal" TARGET_SYS = "arm-lorixos-linux-gnueabi" MACHINE = "lorix-one-512" DISTRO = "lorix-os" DISTRO_VERSION = "1.2.0" TUNE_FEATURES = "arm vfp cortexa5 neon thumb callconvention-hard" TARGET_FPU = "hard" meta meta-poky meta-yocto-bsp = "zeus:419c17a948791fed2a9ffc61826260630218abfd" meta-oe meta-networking meta-python meta-multimedia = "zeus:2b5dd1eb81cd08bc065bc76125f2856e9383e98b" meta-wifx meta-wifx-lorix meta-wifx-mender meta-wifx-openrc = "1.2.x:5ca77b49be72af5673c0ab729229f759c0eb67f2" meta-rust-bin = "HEAD:94b68bde7d6fa8560be8648b4ba0fe188b555e5a"
The build take around 1 to 3 hours, depending on your host computer's performance, the connexion speed and the host configuration (filesystem journalization, antivirus, ...).
- System images: the release images are located at
lorix-os/poky/build/tmp/deploy/images/<machine>/release
- Programmable image :
lorix-os-<version>_<machine>.wimg
This image can be programmed to the gateway with the LORIX Programming tool - Update artifact :
lorix-os-<version>_<machine>.mender
This unsigned artifact can be used to upgrade a gateway though the upgrade system.
By default, an official LORIX OS build will not accept unsigned images. Please refer to the official documentation to see how to enable unsigned updates.
- Programmable image :
- Packages: the system packages to use with opkg are located at
lorix-os/poky/build/tmp/deploy/images/<machine>/ipk
- If you want to provide these packages to your image, please check the
OS_DISTRO_FEEDS_BASE_URL
option of therelease.conf
file.
- If you want to provide these packages to your image, please check the
You may find additional help in the Developer's Guide of the LORIX OS documentation;
Wifx's R&D team support@iot.wifx.net