ironpython3
ironpython3 copied to clipboard
Incorrect filemode for regular files installed on Posix systems
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.
I don't know how much control we have over the permissions during NuGet package creation. Not finding much documentation on the matter.
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.
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.
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".