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"