Skip to content

Commit

Permalink
vayu: add add_ubuntutouch_systemimage_haliumboot.sh
Browse files Browse the repository at this point in the history
  • Loading branch information
luka177 committed Apr 6, 2023
1 parent 701ab69 commit 577b50d
Showing 1 changed file with 98 additions and 0 deletions.
98 changes: 98 additions & 0 deletions add_os/vayu/add_ubuntutouch_systemimage_haliumboot.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
#!/system/bin/sh

TK="/data/data/org.andbootmgr.app/assets/Toolkit"
PATH="$TK:$PATH"
cd "$TK" || exit 24

sed -i "s#replaceme#systempart=/dev/mmcblk0p$4 datapart=/dev/mmcblk0p$5#g" /data/abm/bootset/db/entries/"$1".conf

# Copy ut vendor
resize2fs /dev/block/mmcblk0p$
mkdir -p /data/abm/tmp/mnt
mount /dev/block/mmcblk0p$4 /data/abm/tmp/mnt
cp "$3" /data/abm/tmp/mnt/var/lib/lxc/android/vendor.img
umount /data/abm/tmp/mnt

# Create working dir
mkdir -p /data/abm/tmp/boot

# Copy boot
cp "$2" /data/abm/tmp/boot/boot.img

# Unpack boot
unpackbootimg -i /data/abm/tmp/boot/boot.img -o /data/abm/tmp/boot/

# Go to dt dir, extract dtb and go back
mkdir -p /data/abm/tmp/dt
# shellcheck disable=SC2164
cd /data/abm/tmp/dt/
split-appended-dtb ../boot/boot.img-dtb
# shellcheck disable=SC2164
cd "$TK"

# prepear dtbo
mkdir -p /data/abm/tmp/dtbo
# shellcheck disable=SC2164
cd /data/abm/tmp/dtbo/
split-appended-dtb /dev/block/bootdevice/by-name/dtbo
# shellcheck disable=SC2164
cd "$TK"

# Copy device tree and device tree overlay
dtc -I dtb -O dts -o /data/abm/tmp/dt/current.dts /sys/firmware/fdt
msmidc=$(grep msm-id < /data/abm/tmp/dt/current.dts)
msmidc=$(echo "$msmidc" | awk '{print $4}')
# shellcheck disable=SC3057
msmidc=${msmidc:0:7}
echo "msm-id is $msmidc"
bidc=$(grep board-id < /data/abm/tmp/dt/current.dts)
bidc=$(echo "$bidc" | awk '{print $3}')
# shellcheck disable=SC3057
bidc=${bidc:1:4}
echo "board-id is $bidc"

for f in /data/abm/tmp/dt/dtbdump_*.dtb
do
dtc -I dtb -O dts -o /data/abm/tmp/dt/test.dts "$f"
msmidt=$(grep msm-id < /data/abm/tmp/dt/test.dts)
msmidt=$(echo "$msmidt" | awk '{print $4}')
# shellcheck disable=SC3057
msmidt=${msmidt:0:7}
if [ "$msmidt" = "$msmidc" ]; then
echo "Found correct dtb $f"
sed -i '/vendor {/,/};/s/\(\s*status =\).*/\1 "disabled";/' /data/abm/tmp/dt/test.dts
dtc -I dts -O dtb -o "/data/abm/bootset/$1/dtb.dtb" /data/abm/tmp/dt/test.dts
fi
done
if [ ! -f "$f" ]
then
echo "Dtb not found"
exit 1
fi

for f in /data/abm/tmp/dtbo/dtbdump_*.dtb
do
dtc -I dtb -O dts -o /data/abm/tmp/dtbo/test.dts "$f"
bidt=$(grep board-id < /data/abm/tmp/dtbo/test.dts)
bidt=$(echo "$bidt" | awk '{print $3}')
# shellcheck disable=SC3057
bidt=${bidt:1:4}
if [ "$bidt" = "$bidc" ]; then
echo "Found correct dtbo $f"
cp "$f" "/data/abm/bootset/$1/dtbo.dtbo"
fi
done
if [ ! -f "$f" ]
then
echo "Dtbo not found"
exit 1
fi

# Copy kernel
cp /data/abm/tmp/boot/boot.img-zImage "/data/abm/bootset/$1/zImage"

# Copy rd
cp /data/abm/tmp/boot/boot.img-ramdisk.gz "/data/abm/bootset/$1/initrd.cpio.gz"

# Clean up
rm -rf /data/abm/tmp

0 comments on commit 577b50d

Please sign in to comment.