English | 简体中文
This repository is main repository of openEuler RaspberryPi SIG, and provides scripts for building openEuler image for Raspberry Pi and related documents.
In addition, RaspberryPi SIG also aims to migrate openEuler to other SoCs, such as Rockchip and Allwinner.
You can get introduction of openEuler RaspberryPi SIG from sig-RaspberryPi.
sig-RaspberryPi例会
in the meeting calendar.openEuler
in mini programs of WeChat, add openEuler mini program
. Then click 会议
and view the booking information of sig-RaspberryPi例会
.
**NOTE: **
- Recommendation: use the openEuler-RaspberryPi images provided in the chapter How to download latest image of this documentation.
- If you need to customize the image, please refer to Building openEuler image for Raspberry Pi and Cross-compile the kernel.
Basic information of the image is as follows. more images
Other information:
Refer to Install openEuler on an SD card and How to use Raspberry Pi for details about how to use the image on Raspberry Pi.
To build openEuler AArch64 image for Raspberry Pi, the requirements of running scripts of this repository are as follows:
For other architecture hardware, you can use QEMU to build AArch64 system emulation.
Refer to Script for building openEuler image for Raspberry Pi for details.
NOTICE:
Most openEuler versions are currently supported, i.e., 20.09, 20.03 LTS SP1, 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03. When building an image with Xfce/UKUI/DDE desktop environment, you need to pay attention to three issues:
- For building an image with Xfce desktop environment, note that only openEuler 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03 are currently supported.
- For building an image with DDE desktop environment, note that only openEuler 20.03 LTS SP1, 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03 are currently supported.
- Need to set the parameter
-s/--spec
. Please refer to the description of this parameter for details.
Build images with packages of raspberrypi-kernel, raspberrypi-firmware, and raspberrypi-bluetooth.
Run the following command to build an image:
sudo bash build-image.sh -d DIR -r REPO -n IMAGE_NAME -s SPEC
The meaning of each parameter:
-d, --dir DIR
The directory for storing the image and other temporary files, which defaults to be the directory in which the script resides. If the DIR
does not exist, it will be created automatically.
After building the image, you can find the image in DIR/raspi_output/img/
as shown in the script output.
-r, --repo REPO_INFO
The URL/path of target repo file, or the list of repositories' baseurls. Note that, the baseurls should be separated by space and enclosed in double quotes.
Examples are as follows:
https://gitee.com/src-openeuler/openEuler-repos/raw/openEuler-21.03/generic.repo
../openEuler-21.03.repo
: for building openEuler 21.03 image, refer to https://gitee.com/src-openeuler/openEuler-repos/blob/openEuler-21.03/generic.repo for details."http://repo.openeuler.org/openEuler-21.03/OS/aarch64/ http://repo.openeuler.org/openEuler-21.03/EPOL/aarch64/"
.-n, --name IMAGE_NAME
The image name to be built.
For example, openEuler-21.03.img
. The default is openEuler-raspi-aarch64.img
, or it is automatically generated based on parameter: -n, --name IMAGE_NAME
.
-s, --spec SPEC
Specify the image version:
headless
, image without desktop environments.xfce
, image with Xfce desktop environment and related software including CJK fonts and IME.ukui
, image with UKUI desktop environment and fundamental software without CJK fonts and IME.dde
, image with DDE desktop environment and fundamental software without CJK fonts and IME.The default is headless
.
-h, --help
Display help information.
Here, we provide two approaches to build an image, which both include compiling kernel and downloading firmware files of Raspberry Pi. These approaches will take considerably longer.
NOTICE:
Three openEuler versions are currently supported, i.e., 20.03 LTS, 20.09, 20.03 LTS SP1, 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03. When building an image with Xfce/UKUI/DDE desktop environment, you need to pay attention to four issues:
- For building an image with Xfce desktop environment, note that only openEuler 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03 are currently supported.
- openEuler 21.03: You need to select the branch openEuler-21.03 of the openEuler kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/kernel.git
and set the parameter-b/--branch
toopenEuler-21.03
.- openEuler 20.03 LTS SP2/20.03 LTS SP3: You need to select the branch openEuler-20.03-LTS of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-20.03-LTS
.- openEuler 21.09: You need to select the branch openEuler-21.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-21.09
.- openEuler 22.03 LTS: You need to select the branch openEuler-22.03-LTS of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.03-LTS
.- openEuler 22.09: You need to select the branch openEuler-22.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.09
.- openEuler 22.03 LTS SP1: You need to select the branch openEuler-22.03-LTS-SP1 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.03-LTS-SP1
.- openEuler 23.03: You need to select the branch openEuler-23.03 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-23.03
.- For building an image with UKUI desktop environment, note that only openEuler 20.09, 20.03 LTS SP1, 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03 are currently supported.
- openEuler 20.09: You need to select the branch openEuler-20.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-20.09
.- openEuler 20.03 LTS SP1/20.03 LTS SP2/20.03 LTS SP3: You need to select the branch openEuler-20.03-LTS of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-20.03-LTS
.- openEuler 21.03: You need to select the branch openEuler-21.03 of the openEuler kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/kernel.git
and set the parameter-b/--branch
toopenEuler-21.03
.- openEuler 21.09: You need to select the branch openEuler-21.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-21.09
.- openEuler 22.03 LTS: You need to select the branch openEuler-22.03-LTS of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.03-LTS
.- openEuler 22.09: You need to select the branch openEuler-22.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.09
.- openEuler 22.03 LTS SP1: You need to select the branch openEuler-22.03-LTS-SP1 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.03-LTS-SP1
.- openEuler 23.03: You need to select the branch openEuler-23.03 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-23.03
.- For building an image with DDE desktop environment, note that only openEuler 20.03 LTS SP1, 21.03, 20.03 LTS SP2, 21.09, 20.03 LTS SP3, 22.03 LTS, 22.09, 22.03 LTS SP1 and 23.03 are currently supported.
- openEuler 20.03 LTS SP1/20.03 LTS SP2/20.03 LTS SP3: You need to select the branch openEuler-20.03-LTS of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-20.03-LTS
.- openEuler 21.03: You need to select the branch openEuler-21.03 of the openEuler kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/kernel.git
and set the parameter-b/--branch
toopenEuler-21.03
.- openEuler 21.09: You need to select the branch openEuler-21.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-21.09
.- openEuler 22.03 LTS: You need to select the branch openEuler-22.03-LTS of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.03-LTS
.- openEuler 22.09: You need to select the branch openEuler-22.09 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.09
.- openEuler 22.03 LTS SP1: You need to select the branch openEuler-22.03-LTS-SP1 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-22.03-LTS-SP1
.- openEuler 23.03: You need to select the branch openEuler-23.03 of the openEuler-RaspberryPi kernel, i.e., set the parameter
-k/--kernel
togit@gitee.com:openeuler/raspberrypi-kernel.git
and set the parameter-b/--branch
toopenEuler-23.03
.- Need to set the parameter
-s/--spec
. Please refer to the description of this parameter for details.
Run the following command to build an image:
sudo bash build-image-common.sh -n IMAGE_NAME -k KERNEL_URL -b KERNEL_BRANCH -c KERNEL_DEFCONFIG -r REPO -s SPEC --cores N
After building the image, you can find the image in raspi_output_common/img/
of the directory in which the script resides as shown in the script output.
The meaning of each parameter:
-n, --name IMAGE_NAME
The image name to be built.
For example, openEuler-20.03-LTS-SP1.img
. The default is openEuler-raspi-aarch64.img
, or it is automatically generated based on parameter: -n, --name IMAGE_NAME
.
-k, --kernel KERNEL_URL
The URL of kernel source repository, which defaults to https://gitee.com/openeuler/raspberrypi-kernel.git
. You can set the parameter as git@gitee.com:openeuler/raspberrypi-kernel.git
or git@gitee.com:openeuler/kernel.git
according to the requirement.
-b, --branch KERNEL_BRANCH
The branch name of kernel source repository, which defaults to openEuler-20.03-LTS
. openEuler-21.09
, openEuler-20.03-LTS
or openEuler-20.09
is recommended.
-c, --config KERNEL_DEFCONFIG
The filename/path of configuration for compiling kernel, which defaults to openeuler-raspi_defconfig
. If this parameter is the filename of configuration, please make sure the configuration file in arch/arm64/configs of the kernel source.
-r, --repo REPO_INFO
The URL/path of target repo file, or the list of repositories' baseurls. Note that, the baseurls should be separated by space and enclosed in double quotes.
Examples are as follows:
https://gitee.com/src-openeuler/openEuler-repos/raw/openEuler-20.03-LTS-SP1/generic.repo
./openEuler-20.03-LTS-SP1.repo
: for building openEuler 20.03 LTS SP1 image, refer to https://gitee.com/src-openeuler/openEuler-repos/blob/openEuler-20.03-LTS-SP1/generic.repo for details."http://repo.openeuler.org/openEuler-20.03-LTS-SP1/OS/aarch64/ http://repo.openeuler.org/openEuler-20.03-LTS-SP1/EPOL/aarch64/"
.-s, --spec SPEC
Specify the image version:
headless
, image without desktop environments.xfce
, image with Xfce desktop environment and related software including CJK fonts and IME.ukui
, image with UKUI desktop environment and fundamental software without CJK fonts and IME.dde
, image with DDE desktop environment and fundamental software without CJK fonts and IME.The default is headless
.
--cores N
The number of parallel compilations, according to the actual number of CPU of the host running the script. The default is the number of processing units available.
Run the following command to build an image:
sudo bash build-image-docker.sh -d DOCKER_FILE -n IMAGE_NAME -k KERNEL_URL -b KERNEL_BRANCH -c KERNEL_DEFCONFIG -r REPO --cores N
After building the image, you can find the image in raspi_output_common/img/
of the directory in which the script resides.
Caution, before running the script, you need to install Docker. The script will automatically import the Docker image into the local system according to the script's parameter: DOCKER_FILE.
In addition to the parameter DOCKER_FILE, the other parameters are the same as the corresponding parameters in Build on host:
-d, --docker DOCKER_FILE
The URL/path of the Docker image, which defaults to https://repo.openeuler.org/openEuler-20.03-LTS-SP1/docker_img/aarch64/openEuler-docker.aarch64.tar.xz
. With the default parameter, the script will automatically download the Docker image of openEuler 20.03 LTS SP1 and import it into the local system.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
Activity
Community
Health
Trend
Influence
:Code submit frequency
:React/respond to issue & PR etc.
:Well-balanced team members and collaboration
:Recent popularity of project
:Star counts, download counts etc.