mirror of
https://github.com/khadas/fenix.git
synced 2025-07-20 16:46:41 +00:00

Signed-off-by: Nick Xie <nick@namtso.com> Change-Id: I6ba96465d34a1c11e5b350f175670cbecc83fb41
2.7 KiB
2.7 KiB
Fenix script set to build Ubuntu/Debian images
Supported build host:
Ubuntu 22.04 x64
Building Ubuntu 22.04 image
Building Ubuntu 24.04 image
Building Debian 12 image
Docker
How to use
Install essential packages
$ sudo apt-get install git make lsb-release qemu-user-static
Clone Fenix repository
$ mkdir -p ~/project/khadas
$ cd ~/project/khadas
$ git clone --depth 1 https://github.com/khadas/fenix
$ cd fenix
Setup build environment
- Setup environment manually.
$ source env/setenv.sh
- Or you can load environment configuration from file.
$ source env/setenv.sh config config-template.conf
You need to edit config-template.conf
file to correct variables.
Build image
$ make
For Chinese users, it's better to use mirror from China:
$ DOWNLOAD_MIRROR=china make
Somethings with Redhat series
Disable SELinux
$ vim /etc/selinux/config
$ SELINUX=enforcing --> SELINUX=disabled
$ sudo reboot
Build in Docker
Get Docker image
$ cd fenix
$ docker pull numbqq/fenix:latest
Build image in Docker
Run fenix in docker.
$ docker run -it --name fenix -v $(pwd):/home/khadas/fenix \
-v /etc/localtime:/etc/localtime:ro \
-v /etc/timezone:/etc/timezone:ro \
-v $HOME/.ccache:/home/khadas/.ccache --privileged \
--device=/dev/loop-control:/dev/loop-control \
--device=/dev/loop0:/dev/loop0 --cap-add SYS_ADMIN \
numbqq/fenix
We are in Docker container now, start to build.
khadas@919cab43f66d:~/fenix$ source env/setenv.sh
khadas@919cab43f66d:~/fenix$ make
For Chinese users, it's better to use mirror from China:
khadas@919cab43f66d:~/fenix$ DOWNLOAD_MIRROR=china make
To restart the Docker container a second time.
$ docker start fenix
$ docker exec -ti fenix bash