├── Dockerfile-Ubuntu-18.04 ├── Dockerfile-Ubuntu-20.04 ├── Dockerfile-Ubuntu-22.04 ├── README.md ├── docker-build.sh ├── docker-run.sh ├── env.sh ├── imx-5.10.35-2.0.0 ├── env.sh └── yocto-build.sh ├── imx-5.10.52-2.1.0 ├── env.sh └── yocto-build.sh ├── imx-5.10.72-2.2.0 ├── env.sh └── yocto-build.sh ├── imx-5.15.32-2.0.0 ├── env.sh └── yocto-build.sh ├── imx-5.15.5-1.0.0 ├── env.sh └── yocto-build.sh ├── imx-5.15.52-2.1.0 ├── env.sh └── yocto-build.sh ├── imx-5.15.71-2.2.0 ├── env.sh └── yocto-build.sh ├── imx-6.1.1-1.0.0 ├── env.sh └── yocto-build.sh ├── imx-6.1.22-2.0.0 ├── env.sh └── yocto-build.sh ├── imx-6.1.36-2.1.0 ├── env.sh └── yocto-build.sh ├── imx-6.1.55-2.2.0 ├── env.sh └── yocto-build.sh ├── imx-6.12.3-1.0.0 ├── env.sh └── yocto-build.sh ├── imx-6.6.3-1.0.0 ├── env.sh └── yocto-build.sh ├── imx-6.6.36-2.1.0 ├── env.sh └── yocto-build.sh └── imx-6.6.52-2.2.0 ├── env.sh └── yocto-build.sh /Dockerfile-Ubuntu-18.04: -------------------------------------------------------------------------------- 1 | FROM ubuntu:18.04 2 | 3 | # Update system and add the packages required for Yocto builds. 4 | # Use DEBIAN_FRONTEND=noninteractive, to avoid image build hang waiting 5 | # for a default confirmation [Y/n] at some configurations. 6 | 7 | ENV DEBIAN_FRONTEND=noninteractive 8 | RUN apt update 9 | RUN apt install -y gawk wget git-core diffstat unzip texinfo \ 10 | gcc-multilib build-essential chrpath socat cpio python python3 \ 11 | python3-pip python3-pexpect xz-utils debianutils iputils-ping \ 12 | libsdl1.2-dev xterm tar locales net-tools rsync sudo vim curl 13 | 14 | # Set up locales 15 | RUN locale-gen en_US.UTF-8 && \ 16 | update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 17 | ENV LANG en_US.UTF-8 18 | ENV LC_ALL en_US.UTF-8 19 | 20 | # Yocto needs 'source' command for setting up the build environment, so replace 21 | # the 'sh' alias to 'bash' instead of 'dash'. 22 | RUN rm /bin/sh && ln -s bash /bin/sh 23 | 24 | # Install repo 25 | ADD https://storage.googleapis.com/git-repo-downloads/repo /usr/local/bin/ 26 | RUN chmod 755 /usr/local/bin/repo 27 | 28 | # Add your user to sudoers to be able to install other packages in the container. 29 | ARG USER 30 | RUN echo "${USER} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/${USER} && \ 31 | chmod 0440 /etc/sudoers.d/${USER} 32 | 33 | # Set the arguments for host_id and user_id to be able to save the build artifacts 34 | # outside the container, on host directories, as docker volumes. 35 | ARG host_uid \ 36 | host_gid 37 | RUN groupadd -g $host_gid nxp && \ 38 | useradd -g $host_gid -m -s /bin/bash -u $host_uid $USER 39 | 40 | # Yocto builds should run as a normal user. 41 | USER $USER 42 | 43 | ARG DOCKER_WORKDIR 44 | WORKDIR ${DOCKER_WORKDIR} 45 | -------------------------------------------------------------------------------- /Dockerfile-Ubuntu-20.04: -------------------------------------------------------------------------------- 1 | FROM ubuntu:20.04 2 | 3 | # Update system and add the packages required for Yocto builds. 4 | # Use DEBIAN_FRONTEND=noninteractive, to avoid image build hang waiting 5 | # for a default confirmation [Y/n] at some configurations. 6 | 7 | ENV DEBIAN_FRONTEND=noninteractive 8 | RUN apt update 9 | RUN apt install -y gawk wget git-core diffstat unzip texinfo \ 10 | gcc-multilib build-essential chrpath socat cpio python python3 \ 11 | python3-pip python3-pexpect xz-utils debianutils iputils-ping \ 12 | libsdl1.2-dev xterm tar locales net-tools rsync sudo vim curl zstd \ 13 | liblz4-tool libssl-dev bc lzop 14 | 15 | # Set up locales 16 | RUN locale-gen en_US.UTF-8 && \ 17 | update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 18 | ENV LANG en_US.UTF-8 19 | ENV LC_ALL en_US.UTF-8 20 | 21 | # Yocto needs 'source' command for setting up the build environment, so replace 22 | # the 'sh' alias to 'bash' instead of 'dash'. 23 | RUN rm /bin/sh && ln -s bash /bin/sh 24 | 25 | # Install repo 26 | ADD https://storage.googleapis.com/git-repo-downloads/repo /usr/local/bin/ 27 | RUN chmod 755 /usr/local/bin/repo 28 | 29 | # Add your user to sudoers to be able to install other packages in the container. 30 | ARG USER 31 | RUN echo "${USER} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/${USER} && \ 32 | chmod 0440 /etc/sudoers.d/${USER} 33 | 34 | # Set the arguments for host_id and user_id to be able to save the build artifacts 35 | # outside the container, on host directories, as docker volumes. 36 | ARG host_uid \ 37 | host_gid 38 | RUN groupadd -g $host_gid nxp && \ 39 | useradd -g $host_gid -m -s /bin/bash -u $host_uid $USER 40 | 41 | # Yocto builds should run as a normal user. 42 | USER $USER 43 | 44 | ARG DOCKER_WORKDIR 45 | WORKDIR ${DOCKER_WORKDIR} 46 | -------------------------------------------------------------------------------- /Dockerfile-Ubuntu-22.04: -------------------------------------------------------------------------------- 1 | FROM ubuntu:22.04 2 | 3 | # Update system and add the packages required for Yocto builds. 4 | # Use DEBIAN_FRONTEND=noninteractive, to avoid image build hang waiting 5 | # for a default confirmation [Y/n] at some configurations. 6 | 7 | ENV DEBIAN_FRONTEND=noninteractive 8 | RUN apt update 9 | RUN apt install -y gawk wget git-core diffstat unzip texinfo \ 10 | gcc-multilib build-essential chrpath socat file cpio python3 \ 11 | python3-pip python3-pexpect xz-utils debianutils iputils-ping \ 12 | libsdl1.2-dev xterm tar locales net-tools rsync sudo vim curl zstd \ 13 | liblz4-tool libssl-dev bc lzop libgnutls28-dev efitools git-lfs 14 | 15 | # Set up locales 16 | RUN locale-gen en_US.UTF-8 && \ 17 | update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 18 | ENV LANG en_US.UTF-8 19 | ENV LC_ALL en_US.UTF-8 20 | 21 | # Yocto needs 'source' command for setting up the build environment, so replace 22 | # the 'sh' alias to 'bash' instead of 'dash'. 23 | RUN rm /bin/sh && ln -s bash /bin/sh 24 | 25 | # Install repo 26 | ADD https://storage.googleapis.com/git-repo-downloads/repo /usr/local/bin/ 27 | RUN chmod 755 /usr/local/bin/repo 28 | 29 | # Add your user to sudoers to be able to install other packages in the container. 30 | ARG USER 31 | RUN echo "${USER} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/${USER} && \ 32 | chmod 0440 /etc/sudoers.d/${USER} 33 | 34 | # Set the arguments for host_id and user_id to be able to save the build artifacts 35 | # outside the container, on host directories, as docker volumes. 36 | ARG host_uid \ 37 | host_gid 38 | RUN groupadd -g $host_gid nxp && \ 39 | useradd -g $host_gid -m -s /bin/bash -u $host_uid $USER 40 | 41 | # Yocto builds should run as a normal user. 42 | USER $USER 43 | 44 | ARG DOCKER_WORKDIR 45 | WORKDIR ${DOCKER_WORKDIR} 46 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | This setup helps to build i.MX BSP in an isolated environment with docker. 3 | 4 | Prerequisites 5 | ============= 6 | 7 | Install Docker 8 | -------------- 9 | 10 | There are various methods of installing [docker], i.e. by docker script: 11 | ```{.sh} 12 | $ curl -fsSL https://get.docker.com -o get-docker.sh 13 | $ sudo sh get-docker.sh 14 | ``` 15 | 16 | Run docker without sudo 17 | ----------------------- 18 | 19 | To work better with docker, without `sudo`, add your user to `docker group`. 20 | ```{.sh} 21 | $ sudo usermod -aG docker 22 | ``` 23 | 24 | Log out and log back in so that your group membership is re-evaluated. 25 | 26 | Set docker to work with proxy 27 | ----------------------------- 28 | 29 | Create a docker config file at `~/.docker/config.json` and enter the following: 30 | 31 | ```{.sh} 32 | { 33 | "proxies": 34 | { 35 | "default": 36 | { 37 | "httpProxy":"http://proxy.example.com:80" 38 | } 39 | } 40 | } 41 | ``` 42 | Note: replace the 'example' proxy with your proxy info. 43 | 44 | Create docker service 45 | --------------------- 46 | ```{.sh} 47 | $ sudo mkdir -p /etc/systemd/system/docker.service.d 48 | $ sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf 49 | ``` 50 | 51 | add the following: 52 | 53 | ```{.sh} 54 | [Service] 55 | Environment="HTTP_PROXY=http://proxy.example.com:80/" 56 | Environment="NO_PROXY=localhost,someservices.somecompany.com" 57 | ``` 58 | 59 | Restart Docker 60 | 61 | ```{.sh} 62 | $ sudo systemctl daemon-reload 63 | $ sudo systemctl restart docker 64 | ``` 65 | 66 | Build i.MX with docker 67 | ====================== 68 | ```{.sh} 69 | . 70 | ├── Dockerfile-Ubuntu-18.04 71 | ├── Dockerfile-Ubuntu-20.04 72 | ├── Dockerfile-Ubuntu-22.04 73 | ├── README.md 74 | ├── docker-build.sh 75 | ├── docker-run.sh 76 | ├── env.sh -> imx-6.12.3-1.0.0/env.sh 77 | └── imx-6.12.3-1.0.0 78 | ├── env.sh 79 | └── yocto-build.sh 80 | ``` 81 | 82 | Set variables 83 | ------------- 84 | 85 | Use `env.sh` to set variables for your build setup. Make sure you have 86 | created a working directory, owned by current user, on a larger partition. 87 | 88 | Create a yocto-ready docker image 89 | --------------------------------- 90 | 91 | Run `docker-build.sh` with one argument, related to Dockerfile, corresponding 92 | to the operating system, for example the Dockerfile for Ubuntu version 22.04: 93 | 94 | ```{.sh} 95 | $ ./docker-build.sh Dockerfile-Ubuntu-22.04 96 | ``` 97 | 98 | Build the yocto imx-image in a docker container 99 | ----------------------------------------------- 100 | 101 | ```{.sh} 102 | $ ./docker-run.sh ${IMX_RELEASE}/yocto-build.sh 103 | 104 | i.e IMX_RELEASE=imx-6.12.3-1.0.0 105 | ``` 106 | 107 | or just go to the docker container prompt (and run the build script from there): 108 | 109 | ```{.sh} 110 | $ ./docker-run.sh 111 | ``` 112 | 113 | When running, volumes are used to save the build artifacts on host. 114 | - `{DOCKER_WORKDIR}` as the main workspace 115 | - `{DOCKER_WORKDIR}/${IMX_RELEASE}` to make available the yocto build scripts 116 | into container 117 | - `{HOME}` to mount the current home user, to make available the user 118 | settings inside the container (ssh keys, git config, etc) 119 | 120 | [docker]: https://docs.docker.com/engine/install/ubuntu/ "DockerInstall/Ubuntu" 121 | -------------------------------------------------------------------------------- /docker-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script creates the yocto-ready docker image. 4 | # The --build-arg options are used to pass data about the current user. 5 | # Also, a tag is used for easy identification of the generated image. 6 | # 7 | 8 | # source the common variables 9 | . ./env.sh 10 | 11 | usage() { 12 | echo -e "\e[3m\nUsage: $0 [path_to_Dockerfile]\e[0m\n" 13 | } 14 | 15 | # main 16 | 17 | if [ $# -ne 1 ] 18 | then 19 | usage 20 | else 21 | docker build --tag "${DOCKER_IMAGE_TAG}" \ 22 | --build-arg "DOCKER_WORKDIR=${DOCKER_WORKDIR}" \ 23 | --build-arg "USER=$(whoami)" \ 24 | --build-arg "host_uid=$(id -u)" \ 25 | --build-arg "host_gid=$(id -g)" \ 26 | -f $1 \ 27 | . 28 | fi 29 | -------------------------------------------------------------------------------- /docker-run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # This script runs the image generated by the docker build script 4 | # using docker run command, where: 5 | # --rm automatically removes the container and on exit 6 | # -i keeps the standard input open 7 | # -t provides a terminal as a interactive shell within container 8 | # --volumes are file systems mounted on docker container to preserve 9 | # data generated during the yocto build and these are stored on the host. 10 | # Left side being an absolute path on the host machine, right side being 11 | # an absolute path inside the container. 12 | # 13 | # The script can be run with or without parameter: 14 | # 15 | # $ ./docker-run.sh 16 | # 17 | # to go into docker container prompt or: 18 | # 19 | # $ ./docker-run.sh ${IMX_RELEASE}/yocto-build.sh 20 | # 21 | # to run yocto-build script inside container 22 | # 23 | 24 | # source the common variables 25 | . ./env.sh 26 | 27 | # run the docker image 28 | docker run -it --rm \ 29 | --volume ${HOME}:${HOME} \ 30 | --volume ${DOCKER_WORKDIR}:${DOCKER_WORKDIR} \ 31 | --volume $(pwd)/${IMX_RELEASE}:${DOCKER_WORKDIR}/${IMX_RELEASE} \ 32 | "${DOCKER_IMAGE_TAG}" \ 33 | $1 34 | -------------------------------------------------------------------------------- /env.sh: -------------------------------------------------------------------------------- 1 | imx-6.12.3-1.0.0/env.sh -------------------------------------------------------------------------------- /imx-5.10.35-2.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.10.35-2.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mnevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-hardknott" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.10.35-2.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.10.35-2.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j16 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-5.10.52-2.1.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.10.52-2.1.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mnevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-hardknott" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.10.52-2.1.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.10.52-2.1.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j16 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-5.10.72-2.2.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.10.72-2.2.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-hardknott" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.10.72-2.2.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.10.72-2.2.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j16 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-5.15.32-2.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.15.32-2.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-kirkstone" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.15.32-2.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.15.32-2.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-5.15.5-1.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.15.5-1.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-honister" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.15.5-1.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.15.5-1.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-5.15.52-2.1.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.15.52-2.1.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-kirkstone" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.15.52-2.1.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.15.52-2.1.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-5.15.71-2.2.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-5.15.71-2.2.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-kirkstone" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-5.15.71-2.2.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-5.15.71-2.2.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.1.1-1.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.1.1-1.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-langdale" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.1.1-1.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.1.1-1.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.1.22-2.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.1.22-2.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-mickledore" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.1.22-2.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.1.22-2.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.1.36-2.1.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.1.36-2.1.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-mickledore" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.1.36-2.1.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.1.36-2.1.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.1.55-2.2.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.1.55-2.2.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-mickledore" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.1.55-2.2.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.1.55-2.2.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.12.3-1.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.12.3-1.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-styhead" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.12.3-1.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.12.3-1.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.6.3-1.0.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.6.3-1.0.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-nanbield" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.6.3-1.0.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.6.3-1.0.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.6.36-2.1.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.6.36-2.1.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-scarthgap" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.6.36-2.1.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.6.36-2.1.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | -------------------------------------------------------------------------------- /imx-6.6.52-2.2.0/env.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Here are some default settings. 3 | # Make sure DOCKER_WORKDIR is created and owned by current user. 4 | 5 | # Docker 6 | 7 | DOCKER_IMAGE_TAG="imx-yocto" 8 | DOCKER_WORKDIR="/opt/yocto" 9 | 10 | # Yocto 11 | 12 | IMX_RELEASE="imx-6.6.52-2.2.0" 13 | 14 | YOCTO_DIR="${DOCKER_WORKDIR}/${IMX_RELEASE}-build" 15 | 16 | MACHINE="imx8mpevk" 17 | DISTRO="fsl-imx-xwayland" 18 | IMAGES="imx-image-core" 19 | 20 | REMOTE="https://github.com/nxp-imx/imx-manifest" 21 | BRANCH="imx-linux-scarthgap" 22 | MANIFEST=${IMX_RELEASE}".xml" 23 | -------------------------------------------------------------------------------- /imx-6.6.52-2.2.0/yocto-build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # This script will run into container 3 | 4 | # source the common variables 5 | 6 | . imx-6.6.52-2.2.0/env.sh 7 | 8 | # 9 | 10 | mkdir -p ${YOCTO_DIR} 11 | cd ${YOCTO_DIR} 12 | 13 | # Init 14 | 15 | repo init \ 16 | -u ${REMOTE} \ 17 | -b ${BRANCH} \ 18 | -m ${MANIFEST} 19 | 20 | repo sync -j`nproc` 21 | 22 | # source the yocto env 23 | 24 | EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO} 25 | 26 | # Build 27 | 28 | bitbake ${IMAGES} 29 | 30 | --------------------------------------------------------------------------------