First of you need the sourcecode to compile a UEFI Image.
Clone the Repo by using:
git clone https://github.com/sonic011gamer/Mu-Samsung.git --recursive
cd Mu-Samsung
After Cloning the repo we can now continue on Setting up the Environment.
First we need to install the needed Packages:
./setup_env.sh -p <Package Manager> [-v]
So now we are able to begin the real UEFI build:
./build_uefi.sh -d <Codename> [-r <Build Mode>] [-m <RAM Size>]
When then Build is done you will find a .img
and a .tar
File in the root of the repo.
- You may encounter an issue That the recuired package is not satisfied or something, If your Python Version is lower than 3.10 install Python 3.10 or newer
- After installing Python 3.10 Linux won't automaticly chose Python 3.10 as default, To set it as default use these commands:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.10 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1
- Now check the Python Version:
You should get this output:
python3 --version
Python 3.10.*
- If you have an old Version of git you may come across this Issue, So you need to install the latest version of git.
- I prefer using
apt
to update git but if it tells you it is already newest version you should follow this Guide
- If your Device dosen't boot the UEFI and is just stuck on the boot screen then maybe the DTB is the Problem.
- Dump your DTB from Android
dd if=/sys/firmware/fdt of=/sdcard/<Device Codename>.dtb
. - After that replace
ImageResources/DTBs/<Device Codename>.dtb
with you dumped DTB.