#!/bin/bash if [ "$#" -ne 2 ]; then echo "Incorrect arguments!" echo " Using: $0 " exit 1 fi BASE_DIR=$1 SRC_DIR=$2 APPS_SRC="${SRC_DIR}/apks/apps" PRIV_APPS_SRC="${SRC_DIR}/apks/priv-apps" PRELOAD_APP_SRC="${SRC_DIR}/apks/preload-apps" OVERLAY_APP_SRC="${SRC_DIR}/apks/overlay" APPS_DST="${BASE_DIR}/product_a/app" PRIV_APPS_DST="${BASE_DIR}/product_a/priv-app" PRELOAD_APP_DST="${BASE_DIR}/system_a/system/preloadapp/app" OVERLAY_APP_DST="${BASE_DIR}/product_a/overlay" install_apks() { local src_dir=$1 local dst_dir=$2 local label=$3 local partition=$4 if [ ! -d "$src_dir" ]; then echo "[~] No apks avialable ${label}" return fi local count=0 for apk in "${src_dir}"/*.apk; do [ -f "$apk" ] || continue app_name=$(basename "$apk" .apk) app_dst="${dst_dir}/${app_name}" echo -e "\t[=] Installing ${app_name} to ${label}..." mkdir -p "$app_dst" ./utils/scripts/add_to_fs.sh "$partition" "$app_name" "$label" 1 cp -L "$apk" "${app_dst}/${app_name}.apk" ./utils/scripts/add_to_fs.sh "$partition" "${app_name}.apk" "$label/$app_name" count=$((count + 1)) done echo "[i] ${count} APK(s) have been installed as '${label}'" } echo "[*] Installing APKs..." install_apks "$APPS_SRC" "$APPS_DST" "app" "product_a" install_apks "$PRIV_APPS_SRC" "$PRIV_APPS_DST" "priv-app" "product_a" install_apks "$OVERLAY_APP_SRC" "$OVERLAY_APP_DST" "overlay" "product_a" install_apks "$PRELOAD_APP_SRC" "$PRELOAD_APP_DST" "system/preloadapp/app" "system_a"