File: android-deltas-sync/_etc/examples/windows-pc-example/_readme.txt

Using a Windows PC as the FROM (source) for syncs to a phone.
See also x-3-devices-with-pc-as-phone/ for using a PC as TO.

This demo's PC-side scripts were run on Windows (10, and later,
11).  It mixes app-specific storage for zips and shared storage 
for content on the phone.

The PC config file demos alternative ways to deal with '\'
backslashes in Windows paths (r'', '\\', and '/').

On Windows, paths should generally include a backslash after
the drive letter to make them absolute (e.g., 'D:\\').  If
the slash is omitted (e.g., 'D:'), it's relative to the CWD
on the drive, which works, but is not what you'll usually want.

The filename-fixer script is never run on Windows, because 
nonportables are not possible in native Windows contexts.
The associated config setting is unused and need not be False.


SYMLINKS

Symlinks never appear in the Windows test, because the unzip of
the test data was not run in admin mode.  Stub files are created
by the unzip and propagated to the phone, but match as simple 
files thereafter.  Symlinks would fail to be recorded correctly 
on Android shared storage, but they never get out of the gate.
This is naturally prone to change as Windows symlinks evolve;
see the Windows 11 note ahead.


NONPORTABLE FILENAMES

Windows usage raises interoperability issues for filenames.
See the main ../../_README.html for background details.

For this demo, the ../_test-ads-windows.zip is unzipped on 
Windows for initial content.  This is just ../_test-ads.zip
but with filenames first run through the filename-fixer script
on Unix (macOS).  This matters, because the unfixed names would
be handled by ziptools on Windows differently (e.g., '\' will 
make subfolders in ziptools, but will be changed to '_' in the 
fixer).  Names should be fixed _before_ copying to Windows, even 
in manual zips.  See the x-unfixed-content-results/ for results 
of using ../test-ads.zip instead, and the runs/x* files for the
macOS build of the fixed-names zip used here.

See also the x-cygwin-and-wsl-nonportables/ folder for demos of 
Cygwin and WSL filename behavior for nonportable characters.  In
short, both systems allow nonportables via munging, but Windows' 
native Python does not undo the transforms, and hence requires no
name-fixer step (though Cygwin and WSL Pythons do).


WINDOWS 11

This demo was rerun on Windows 11 for Mergeall 3.3, but Windows 11
did not change the demo's former Windows 10 results as of Dec-2021
(Windows now updates itself constantly, for better or worse).

Note: if you enable Windows Developer mode, symlinks _will_ be 
correctly propagated from and to Windows 11 by this package, even 
without running scripts in admin mode.  For more details:

  ../../../README.html#win11symlinks



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