From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by sourceware.org (Postfix) with ESMTPS id 3E6B83851C06 for ; Sun, 24 May 2020 09:33:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 3E6B83851C06 Received: by mail-ed1-x52e.google.com with SMTP id g9so12698199edr.8 for ; Sun, 24 May 2020 02:33:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:reply-to:from:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=4VTbbOd2KTYBYFZIY+K9R+Z2lHjXLmqXsoMPG5mlhNU=; b=t5h8WpHk66oF+QX8nQJdayxrLTJdbdK89lILMT7E9xi1riVWRfE+HvXXl4vnoqlsiW 96FYa2VQ+xpyIqs+YCMX2wjXq5Ro/baHtk1YTa6u0GLSIGeWE19DST6hOMld36ffoqcw 0eipHKQ5fKC4iNzkHthu4bEYA4V/Aw9Yv1vlg9y2SHaIlgy9mXNu5SrkmVr7AVTGg4AH W72PWy0SmklolyxLmlJH9B6Qvsu/LiysfDqGfWeftZJja44jIAhfTpdJuO40CVaIRaKV wEw/ymk24eqbsg8b3SSBx0MChmPs2jPLC70sNjTu6Ow+QHFbkOp3UVz1azlWItbAo7rE WBhw== X-Gm-Message-State: AOAM533P3LxdNmMZqzeeKL1LcW1m+Hid/8foUoKcIuK2PtpUX4yQGF0N HsWpsMzTcmuylBhYspG7U1nl99Bg X-Google-Smtp-Source: ABdhPJzTzSNB8ZFKYckF7wVJ/kCtDnkJ/RpWe6eLITZUIK2JAg47GzG4ulsj6Ko5M4kmh1+A0Kv8Ow== X-Received: by 2002:a05:6402:1bd9:: with SMTP id ch25mr9742157edb.15.1590312838009; Sun, 24 May 2020 02:33:58 -0700 (PDT) Received: from ?IPv6:2003:cc:9f40:7e60:4127:2c1:3424:2ec6? (p200300cc9f407e60412702c134242ec6.dip0.t-ipconnect.de. [2003:cc:9f40:7e60:4127:2c1:3424:2ec6]) by smtp.gmail.com with ESMTPSA id s7sm12854980edg.73.2020.05.24.02.33.57 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 24 May 2020 02:33:57 -0700 (PDT) Subject: Re: Cygwin doesn't support IO_REPARSE_TAG_APPEXECLINK To: Kagami Rosylight , "cygwin@cygwin.com" References: Reply-To: "cygwin@cygwin.com" From: Marco Atzeri Message-ID: Date: Sun, 24 May 2020 11:33:56 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Language: it Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, KAM_LOTSOFHASH, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 24 May 2020 09:34:00 -0000 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&data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&sdata=NnwQ27A9WsjWdilY6nqF3WR0WnGUvzzeHoajB3onPpo%3D&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&data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&sdata=9Othhu3kprUrr7PcweU%2BXyj3Srqb47nK4vLNhgBI%2FlQ%3D&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&data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&sdata=k6HtZ2Sl51OgudNjdbdmhcC12c6FTMM8%2F%2BoEv8gNlN0%3D&reserved=0 > > * libuv > https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Flibuv%2Flibuv%2Fcommit%2Fe7ebae26247d2fee0a04547eb7f9aa8f78d4a642&data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&sdata=ulo1a%2Fy4iwjUK6BRAAi88VEMrXNlU8fIxxLptA6Y3uU%3D&reserved=0 > > * PowerShell > https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FPowerShell%2FPowerShell%2Fpull%2F10331&data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551804597&sdata=OhuYhKsNYkfCEB3trhdm6QF1wdzAhGdqRRTQi8V350w%3D&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&data=02%7C01%7C%7Ca89ae101a11349ad859008d7ff3113b0%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637258458551814592&sdata=IdYc3OG4UdvTo2IJeSmwsSvaqcAFdsM3ZmhV2RicMqA%3D&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