ironpython3 icon indicating copy to clipboard operation
ironpython3 copied to clipboard

Incorrect filemode for regular files installed on Posix systems

Open BCSharp opened this issue 2 years ago • 2 comments

Installing NuGet packages IronPython or IronPython.StdLib on Linux or macOS creates all regular files with user-executable bit set (4). This is not the convention used by Unix-like systems and confuses system tools (like auto-completion, which considers executable files as programs).

Note that all directories created should have the executable bit(s) set (as it is now) to make them searchable.

BCSharp avatar May 24 '22 17:05 BCSharp

I don't know how much control we have over the permissions during NuGet package creation. Not finding much documentation on the matter.

slozier avatar Jun 19 '22 20:06 slozier

I have never created a NuGet package, but if they have something like a post-install script, then it can do chmod -x on Posix systems.

BCSharp avatar Jun 20 '22 15:06 BCSharp

I poked around a little, and it looks like this is an open bug in NuGet: https://github.com/NuGet/Home/issues/6778. So, I assume that until that bug is addressed, some form of workaround is necessary.

mwchase avatar Oct 07 '22 18:10 mwchase

Indeed, as @mwchase writes, this is a NuGet problem and should be addressed there. As for a workaround here: since we have now a .NET tool package and a complete zip package, this issue is not so important anymore. The zip package install script sets permissions correctly, and the .NET tool installs the executable launcher in a separate directory than the rest of the files so no confusion for Unix tools occurs.

Therefore I am closing this issue as "won't fix without prejudice".

BCSharp avatar Oct 14 '22 04:10 BCSharp