Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/khadas/fenix
One-stop script set to build Ubuntu/Debian images
https://github.com/khadas/fenix
amlogic arm64v8 build-tools debian distribution kernel kodi rockchip ubuntu
Last synced: about 2 months ago
JSON representation
One-stop script set to build Ubuntu/Debian images
- Host: GitHub
- URL: https://github.com/khadas/fenix
- Owner: khadas
- License: gpl-2.0
- Created: 2017-07-02T13:46:34.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-10-30T02:48:35.000Z (3 months ago)
- Last Synced: 2024-10-30T05:11:33.899Z (3 months ago)
- Topics: amlogic, arm64v8, build-tools, debian, distribution, kernel, kodi, rockchip, ubuntu
- Language: Shell
- Homepage:
- Size: 293 MB
- Stars: 213
- Watchers: 13
- Forks: 135
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build](https://github.com/khadas/fenix/actions/workflows/build.yml/badge.svg)](https://github.com/khadas/fenix/actions/workflows/build.yml)
[![Download](https://img.shields.io/badge/Test%20Build%20Images-Download-blue)](http://build.khadas.com:8080/khadas/fenix/images/)# Fenix script set to build Ubuntu/Debian images
[![Documentation](https://img.shields.io/badge/Documentation-Reference-blue.svg)](https://docs.khadas.com/products/sbc/common/development/build-ubuntu)
[![Licence](https://img.shields.io/badge/Licence-GPL--2.0-brightgreen.svg)](https://github.com/khadas/fenix/blob/master/LICENSE)
[![Version](https://img.shields.io/badge/Version-v1.7.2-blue.svg)](https://github.com/khadas/fenix/tree/v1.7.2)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/khadas/fenix/pulls)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
```bash
$ sudo apt-get install git make lsb-release qemu-user-static
```### Clone Fenix repository
```bash
$ mkdir -p ~/project/khadas
$ cd ~/project/khadas
$ git clone --depth 1 https://github.com/khadas/fenix
$ cd fenix
```### Setup build environment
* Setup environment manually.
```bash
$ source env/setenv.sh
```* Or you can load environment configuration from file.
```bash
$ source env/setenv.sh config config-template.conf
```You need to edit `config-template.conf` file to correct variables.
### Build image
```bash
$ make
```
For Chinese users, it's better to use mirror from China:```bash
$ DOWNLOAD_MIRROR=china make
```## Somethings with Redhat series
### Disable SELinux
```bash
$ vim /etc/selinux/config
$ SELINUX=enforcing --> SELINUX=disabled
$ sudo reboot
```## Build in Docker
### Get Docker image
```bash
$ cd fenix
$ docker pull numbqq/fenix:latest
```### Build image in Docker
Run fenix in docker.
```bash
$ 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.
```bash
khadas@919cab43f66d:~/fenix$ source env/setenv.sh
khadas@919cab43f66d:~/fenix$ make
```For Chinese users, it's better to use mirror from China:
```bash
khadas@919cab43f66d:~/fenix$ DOWNLOAD_MIRROR=china make
```To restart the Docker container a second time.
```bash
$ docker start fenix
$ docker exec -ti fenix bash
```