Ubuntu 24.04 LTS (GNU/Linux 6.8.0-39-generic x86_64) or (Ubuntu 26.04 LTS (GNU/Linux 7.0.0-14-generic x86_64) - for OE-A 5.6 see note 15)
RAM: 16GB SWAP: 16GB (if building feeds then RAM+SWAP should be larger)> CPU: Multi core\thread Model HDD: for Single Build 250GB Free, for Multibuild 500GB or more
1 - Install packages on your buildserver
sudo apt-get install -y autoconf automake bison bzip2 chrpath cmake coreutils cpio curl cvs debianutils default-jre default-jre-headless diffstat flex g++ gawk gcc gcc-12 gcc-multilib g++-multilib gettext git gzip help2man info iputils-ping java-common libc6-dev libc6-dev-i386 libglib2.0-dev libncurses-dev libperl4-corelibs-perl libproc-processtable-perl libsdl1.2-dev libserf-dev libtool libxml2-utils make ncurses-bin patch perl pkg-config psmisc python3 python3-git python3-html5lib python3-jinja2 python3-pexpect python3-pip python3-setuptools quilt socat sshpass subversion tar texi2html texinfo unzip wget xsltproc xterm xz-utils zip zlib1g-dev zstd fakeroot lz4 git-lfs
2 - Set python3 as preferred provider for python
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2
sudo update-alternatives --config python
select python3
3 - Set your shell to /bin/bash.
sudo ln -sf /bin/bash /bin/sh
4 - modify max_user_watches
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
sudo sysctl -n -w fs.inotify.max_user_watches=524288
5 - Update apparmor profile
Workaround for ubuntu issue Allow bitbake to create user namespace
echo 'kernel.apparmor_restrict_unprivileged_userns=0' | sudo tee /etc/sysctl.d/60-apparmor-namespace.conf > /dev/null && sudo sysctl --system
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
6 - Add user openvixbuilder
sudo adduser openvixbuilder
7 - Add your git user and email
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
8 - Switch to user openvixbuilder
su openvixbuilder
9 - Switch to home of openvixbuilder
cd ~
10 - Create folder openvix
mkdir -p ~/openvix
11 - Switch to folder openvix
cd openvix
12 - Clone oe-alliance git
git clone https://github.com/oe-alliance/build-enviroment.git -b 5.6
13 - Switch to folder build-enviroment
cd build-enviroment
14 - Update build-enviroment
make update
15 - Ubuntu 26.04 Users, building OE-A 5.6.
Edit openembedded-core/meta/classes-global/base-bbclass
- change line 130 ----> srctool = bb.utils.which(path, tool, executable=True)
- to 1line update ----> srctool = (bb.utils.which(path, "gnu" + tool, executable=True) or bb.utils.which(path, tool, executable=True))
Unzip OE5.6onUB26.04.zip attachment from post #968 in https://world-of-satellite.com/threads/build-my-own-vix-image.61295/page-49
Copy unzipped files from recipes-local into your OE-A 5.6 meta-local/recipes-local
16 - Initialise the first machine so site.conf gets created
MACHINE=zgemmah9combo DISTRO=openvix DISTRO_TYPE=release make init
17 - Update site.conf
- BB_NUMBER_THREADS, PARALLEL_MAKE set to number of threads supported by the CPU
- add/modify DL_DIR = " location for build sources " to point to a location where you can save
derived build sources, this will reduce build time in fetching these sources again.
- Avoid wasting disk space creating spdx packages: INHERIT:remove = "create-spdx"
18 - Building image with feeds e.g.:-
MACHINE=vuultimo4k DISTRO=openvix DISTRO_TYPE=release make image
19 - Building an image without feeds (Build time 1-2h)
MACHINE=zgemmah9combo DISTRO=openvix DISTRO_TYPE=release make enigma2-image
20 - Building feeds only
MACHINE=zgemmah9combo DISTRO=openvix DISTRO_TYPE=release make feeds