public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Marco Atzeri <marco.atzeri@gmail.com>
To: Kagami Rosylight <saschanaz@outlook.com>,
	"cygwin@cygwin.com" <cygwin@cygwin.com>
Subject: Re: Cygwin doesn't support IO_REPARSE_TAG_APPEXECLINK
Date: Sun, 24 May 2020 11:33:56 +0200	[thread overview]
Message-ID: <f26b5274-0c9c-5df7-549f-6fd747614676@gmail.com> (raw)
In-Reply-To: <MN2PR06MB64968DD32E6DB1C107B13DDEA2B50@MN2PR06MB6496.namprd06.prod.outlook.com>

Reply always with mailing list in copy, please
and bottom posting as standard

On 23.05.2020 18:34, Kagami Rosylight wrote:
> Hi Marco,
> 
>>Not clear why you expect that a Windows specific tag as
> IO_REPARSE_TAG_APPEXECLINK should be supported on a Posix platform ?
> 
> https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/path.cc;h=36aa8278fd8495bdfe5ec82b8c36d7d3d7881ebb;hb=refs/heads/master#l2473 
> 
> 
> Because Cygwin already supports common reparse points (such as symlinks) 
> and APPEXECLINK is also a common one used by Microsoft Store. This issue 
> causes some CLI tools depending on MSYS2 (which again on Cygwin) to fail 
> calling system Python executable.
> 
>  > that seems a bit short to help third party in properly using it.
> 
> Good point, and that’s why I only could provide the prior works. 
> REPARSE_DATA_BUFFER_APPEXECLINK in the PowerShell patch shows how the 
> structure look like, but this definitely needs an official 
> documentation. I don’t think it’s a strict blocker given that there are 
> public working patches, though.
> 
> -Kagami
> 
> *From: *Marco Atzeri 
> *Sent: *Saturday, 23 May 2020 5:50 PM
> *To: *cygwin@cygwin.com , saschanaz@outlook.com 
> *Subject: *Re: Cygwin doesn't support IO_REPARSE_TAG_APPEXECLINK
> 
> On 23.05.2020 17:09, Kagami Rosylight via Cygwin wrote:
>  > 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://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.microsoft.com%2Fen-us%2Fp%2Fpython-38%2F9mssztt1n39l&amp;data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&amp;sdata=NnwQ27A9WsjWdilY6nqF3WR0WnGUvzzeHoajB3onPpo%3D&amp;reserved=0 
> (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://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmsys2%2FMSYS2-packages%2Fissues%2F1943&amp;data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&amp;sdata=9Othhu3kprUrr7PcweU%2BXyj3Srqb47nK4vLNhgBI%2FlQ%3D&amp;reserved=0) 
> but I think Cygwin is the right place to file this.
>  >
>  > Relevant prior works:
>  >
>  > * Python 
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fpython%2Fcpython%2Fcommit%2Fdf2d4a6f3d5da2839c4fc11d31511c8e028daf2c&amp;data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&amp;sdata=k6HtZ2Sl51OgudNjdbdmhcC12c6FTMM8%2F%2BoEv8gNlN0%3D&amp;reserved=0
>  > * libuv 
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Flibuv%2Flibuv%2Fcommit%2Fe7ebae26247d2fee0a04547eb7f9aa8f78d4a642&amp;data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&amp;sdata=ulo1a%2Fy4iwjUK6BRAAi88VEMrXNlU8fIxxLptA6Y3uU%3D&amp;reserved=0
>  > * PowerShell 
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPowerShell%2FPowerShell%2Fpull%2F10331&amp;data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&amp;sdata=OhuYhKsNYkfCEB3trhdm6QF1wdzAhGdqRRTQi8V350w%3D&amp;reserved=0
>  >
>  > Thanks,
>  >
>  > -Kagami
>  >
> 
> Not clear why you expect that a Windows specific tag as
> IO_REPARSE_TAG_APPEXECLINK should be supported on a Posix platform ?
> 
> Moreover all the documentation from MS seems
> 
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fopenspecs%2Fwindows_protocols%2Fms-fscc%2Fc8e77b37-3909-4fe6-a4ea-2b9d423b1ee4&amp;data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551814592&amp;sdata=IdYc3OG4UdvTo2IJeSmwsSvaqcAFdsM3ZmhV2RicMqA%3D&amp;reserved=0
> 
> that seems a bit short to help third party in properly using it.
> 
> Regards
> Marco
> 
> 
> PS: Python 3.8 is available as Cygwin binary
> 


have you tested

"cygstart 
/cygdrive/c/Users/Kagami/AppData/Local/Microsoft/WindowsApps/python3.8.exe 
  " ?


Regards
Marco

  parent reply	other threads:[~2020-05-24  9:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-23 15:09 Kagami Rosylight
2020-05-23 15:50 ` Marco Atzeri
2020-05-23 23:05   ` Brian Inglis
     [not found]   ` <MN2PR06MB64968DD32E6DB1C107B13DDEA2B50@MN2PR06MB6496.namprd06.prod.outlook.com>
2020-05-24  9:33     ` Marco Atzeri [this message]
2020-05-24  9:51       ` Kagami Rosylight
2020-05-24 10:38         ` Marco Atzeri
2020-05-24 14:20         ` Adam Dinwoodie
2020-05-24 14:59           ` ASSI
2020-05-24 17:52             ` Brian Inglis
2020-06-09 19:18 Martin Rauscher
2020-06-30 10:36 ` Corinna Vinschen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f26b5274-0c9c-5df7-549f-6fd747614676@gmail.com \
    --to=marco.atzeri@gmail.com \
    --cc=cygwin@cygwin.com \
    --cc=saschanaz@outlook.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).