#!/sbin/sh

# =======================================================
# MAGIC RANDOM PRO INSTALLER BINARY
# =======================================================
#
# DEDICATED TO THE KINGS OF ANDROID MODDING:
#
# 1. JesusFreke (JF)      - Penemu Root Pertama (G1)
# 2. Steve Kondik (Cyanogen) - Bapak Custom ROM
# 3. Koush (ClockworkMod) - Pionir Custom Recovery
# 4. Chainfire (SuperSU)  - Legenda Rooting Modern
# 5. TeamWin (TWRP)       - Revolusi Touch Recovery
# 6. TopJohnWu (Magisk)   - Pencipta Systemless Root
#
# -------------------------------------------------------
# LEGACY CONTINUED BY:
# >> Nabil Ilza Pravira (@n4bilirz) <<
# =======================================================

ps | grep zygote | grep -v grep >/dev/null && BOOTMODE=true || BOOTMODE=false
$BOOTMODE || ps -A 2>/dev/null | grep zygote | grep -v grep >/dev/null && BOOTMODE=true

if ! $BOOTMODE; then
  /sbin/busybox mount /data 2>/dev/null
  /sbin/busybox mount /cache 2>/dev/null
  /sbin/busybox mount -o rw,remount /system 2>/dev/null
  /sbin/busybox mount -o rw,remount /system_root 2>/dev/null
fi

OUTFD=$2
ZIPFILE=$3

ui_print() {
  if $BOOTMODE; then
    echo "$1"
  else
    echo -n -e "ui_print $1\n" > /proc/self/fd/$OUTFD
    echo -n -e "ui_print\n" > /proc/self/fd/$OUTFD
  fi
}

extract() {
  unzip -o "$ZIPFILE" "$1" -d "$2" >&2
}

unzip -l "$ZIPFILE" 2>/dev/null | grep -q "customize.sh" || {
  ui_print "! Customize.sh not found!"
  exit 1
}

TMPDIR=/dev/tmp
mkdir -p $TMPDIR
cd $TMPDIR

extract "module.prop" "."
extract "customize.sh" "."
extract "util_functions.sh" "." 2>/dev/null

if [ -f util_functions.sh ]; then
  . ./util_functions.sh
fi

if [ -f customize.sh ]; then
  chmod 755 customize.sh
  . ./customize.sh
else
  exit 1
fi

cd /
rm -rf $TMPDIR
exit 0
