Cygwin doesn't support IO_REPARSE_TAG_APPEXECLINK

Kagami Rosylight saschanaz@outlook.com
Sat May 23 15:09:22 GMT 2020


Hi Cygwin community,

I found that Cygwin can’t run UWP based CLI tools, as they expose their executables as reparse points with the tag IO_REPARSE_TAG_APPEXECLINK which Cygwin does not support.

Way to reproduce this issue on Cygwin:

1. Install Python from Microsoft Store: https://www.microsoft.com/en-us/p/python-38/9mssztt1n39l (assuming you don’t already have python3.8 on your PATH.)
2. Try running `python3.8` on Cygwin. It will say “/cygdrive/c/Users/Kagami/AppData/Local/Microsoft/WindowsApps/python3.8: Permission denied”
3. Check it’s real path by `get-childitem -path C:/Users/Kagami/AppData/Local/Microsoft/WindowsApps/python3.8.exe` on PowerShell. It’s `C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.8_3.8.1008.0_x64__qbz5n2kfra8p0\python3.8.exe`.
4. Try running python again with that path. This succeeds.

I posted this issue on MSYS2 GitHub repo (https://github.com/msys2/MSYS2-packages/issues/1943) but I think Cygwin is the right place to file this.

Relevant prior works:

* Python https://github.com/python/cpython/commit/df2d4a6f3d5da2839c4fc11d31511c8e028daf2c
* libuv https://github.com/libuv/libuv/commit/e7ebae26247d2fee0a04547eb7f9aa8f78d4a642
* PowerShell https://github.com/PowerShell/PowerShell/pull/10331

Thanks,

-Kagami



More information about the Cygwin mailing list