File: android-deltas-sync/_etc/bash-version/sync-changes-part2-phone.sh

#################################################################
# Sync Changes, Part 2: run on PHONE, in Termux or other, with:
#
#     bash sync-changes-part2-phone.sh
#
# Run this from any folder; it uses paths set in config-phone.txt,
# and finds sourced files in its own folder automatically.
#
# Step runtimes are shown in the console after step completion.  
# Step outputs go to files in $L; watch with 'tail -f $L/file'.
#
# See _README.html for license, attribution, and more docs.
#################################################################


mydir=$(dirname "$0")             # this script's own folder
source $mydir/config-phone.txt    # get settings for scripts run on phone
source $mydir/common.sh           # run code common to both PC and phone

# 'to' must exist here
if [ ! -e $T/$STUFF ]; then
    echo "The \$T/\$STUFF folder does not exist: $T/$STUFF"
    echo 'Exiting; please check the config file and rerun.'
    exit
fi


#----------------------------------------------------------------
# 1) Copy deltas zip from proxy to phone with an explorer app
#----------------------------------------------------------------

# Choose your app (but not Termux: POSIX cannot access USB in 11)

echo "Manually copy or move DELTAS.zip"
echo "    from the root of the USB drive"
echo "    to $F"
echo 'using any Android file-explorer app with suitable storage permissions.'
read -p 'Press enter/return here when the copy is finished...'

# did the copy work?
if [ ! -e $F/DELTAS.zip ]; then
    echo 'Deltas zip not found; please rerun this script to try again.'
    exit
fi


#----------------------------------------------------------------
# 2) Unzip deltas on phone with [zip-extract.py] in Termux
#----------------------------------------------------------------

announce 'Unzipping deltas on phone'
time python3 $Z/zip-extract.py $F/DELTAS.zip $F -permissions \
                 > $L/$stamp--sync-1-unzip-deltas-log.txt


#----------------------------------------------------------------
# 3) Apply deltas to phone with [mergeall.py -restore] in Termux
#----------------------------------------------------------------

announce 'Applying deltas to phone'
time python3 $M/mergeall.py $F/DELTAS $T/$STUFF -restore -auto -skipcruft -backup -quiet \
                 > $L/$stamp--sync-2-apply-deltas-log.txt


#----------------------------------------------------------------
# 4) Cleanup deltas zip and folder on phone in Termux
#----------------------------------------------------------------

printf '\nRemoving deltas folder from phone\n'
time rm -rf $F/DELTAS

# on-phone zip; user may have copied or moved the proxy zip, but can't check here
printf '\nRemoving deltas zip from phone (remove manually from proxy as needed)\n'
time rm $F/DELTAS.zip 


#----------------------------------------------------------------
# Configurable: hook for custom post-propagate steps
#----------------------------------------------------------------

bash $mydir/z-postcopy-hook-phone.sh


printf "\nFinished: see logs in $L.\n"



[Home page] Books Code Blog Python Author Train Find ©M.Lutz