#!/system/bin/sh
# Velocity Tweaks Copyright - bit.ly/icb4a
# APK Zipalign, Optimizes APK's For More Free RAM
# By: SethDeCode'z @ XDA Forum's

function mountrw {
  mount|grep "/system "|grep rw >/dev/null
  [ $? -eq 1 ] && mount -o remount,rw $(mount|grep "/system "|awk '{ print $1 }') /system
}
function mountro {
  mount|grep "/system "|grep ro >/dev/null
  [ $? -eq 1 ] && mount -o remount,ro $(mount|grep "/system "|awk '{ print $1 }') /system
}

echo " Starting package optimization"
LOG_FILE=/data/velocity/velocity_zipalign.txt
    if [ -e $LOG_FILE ]; then
        rm $LOG_FILE;
    fi;
 
echo "Starting Velocity ZipAlign $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $LOG_FILE;
    for apk in /system/app/*.apk ; do
        zipalign -c 4 $apk;
        ZIPCHECK=$?;
        if [ $ZIPCHECK -eq 1 ]; then
                mountrw;
                echo ZipAligning $(basename $apk) | tee -a $LOG_FILE;
                zipalign -f 4 $apk /cache/$(basename $apk);
                        if [ -e /cache/$(basename $apk) ]; then
                                cp -f -p /cache/$(basename $apk) $apk | tee -a $LOG_FILE;
                                rm /cache/$(basename $apk);
                        else
                                echo ZipAligning $(basename $apk) Failed DC | tee -a $LOG_FILE;
                        fi;
        else
                echo Velocity ZipAlign already completed on $apk | tee -a $LOG_FILE;
        fi;
       done;
    for apk in /data/app/*.apk ; do
        zipalign -c 4 $apk;
        ZIPCHECK=$?;
        if [ $ZIPCHECK -eq 1 ]; then
                echo ZipAligning $(basename $apk) | tee -a $LOG_FILE;
                zipalign -f 4 $apk /cache/$(basename $apk);
                        if [ -e /cache/$(basename $apk) ]; then
                                cp -f -p /cache/$(basename $apk) $apk | tee -a $LOG_FILE;
                                rm /cache/$(basename $apk);
                        else
                                echo ZipAligning $(basename $apk) Failed DC | tee -a $LOG_FILE;
                        fi;
        else
                echo Velocity ZipAlign already completed on $apk | tee -a $LOG_FILE;
        fi;
       done;
mountro;
echo "ZipAlign finished at $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $LOG_FILE;
echo " Velocity Zipalign Finished"

touch /data/velocity/init.d_log.txt
echo "Velocity Ran Successfully At $( date +"%m-%d-%Y %H:%M:%S" )" >> /data/velocity/init.d_log.txt