This repository provides a Docker container for building Variscite software releases. These configurations have been tested:
Container Version | Variscite Release |
---|---|
Ubuntu 20.04 | - Yocto Dunfell, Hardknott - Android 10, 11 - Debian Bullseye - Boot2Qt Dunfell |
Ubuntu 18.04 | - Yocto Zeus |
Ubuntu 16.04 | - Yocto Pyro, Rocko, Sumo, Thud, Warrior |
Ubuntu 14.04 | - Android 6 |
From a brand new Ubuntu installation:
- Install Docker
$ sudo apt update && sudo apt install docker.io
- Install Host Linux Headers (required for some Yocto versions)
$ sudo apt install linux-headers-$(uname -r)
- Give permissions to run docker without sudo
$ sudo usermod -aG docker ${USER}
- Logout and Login again for permissions to take effect
- Clone this repository
On Host Computer:
$ mkdir ~/var-fslc-yocto
$ ./run.sh -w ~/var-fslc-yocto
You're now running in a container with all build dependencies, and can build as normal.
Yocto Example:
vari@460e5ba862b1:/workdir$ repo init -u https://github.com/varigit/variscite-bsp-platform.git -b refs/tags/dunfell-fslc-5.4-2.1.x-mx8mn-v1.2 -m default.xml
vari@460e5ba862b1:/workdir$ repo sync -j4
vari@460e5ba862b1:/workdir$ MACHINE=imx8mn-var-som DISTRO=fslc-xwayland . setup-environment build_xwayland
vari@460e5ba862b1:/workdir$ bitbake fsl-image-gui
When Building Debian, Docker requires access to the Host devices. To provide access, pass the -p argument to start Docker in privileged mode.
Example:
$ mkdir ~/var-debian
$ ./run.sh -p -w ~/var-debian
You may use the sudo command inside the container with these credentials:
Username | Password |
---|---|
vari | ubuntu |
The Docker Image will be built automatically by ./run.sh the first time. Any commits to the GIT repository will cause the image to be rebuilt with the new changes using cache (not necessarily the latest from Ubuntu)
To force the container to be rebuilt with the latest from Ubuntu, pass the -f
argument:
$ ./run.sh -f ...