electrumx icon indicating copy to clipboard operation
electrumx copied to clipboard

Wheels on PyPI lack unix execute permission for scripts

Open JustinTArthur opened this issue 3 years ago • 2 comments

In the 1.16.0 wheel file on PyPI, the entire contents of the wheel are set to read-write-only permission. The scripts should instead maintain their executable permission bit.

zipinfo e_x-1.16.0-py3-none-any.whl
Archive:  e_x-1.16.0-py3-none-any.whl
Zip file size: 130334 bytes, number of entries: 34
-rw-rw-rw-  2.0 fat     2490 b- defN 20-Dec-10 17:41 e_x-1.16.0.data/scripts/electrumx_compact_history
-rw-rw-rw-  2.0 fat     4568 b- defN 20-Oct-25 19:02 e_x-1.16.0.data/scripts/electrumx_rpc
-rw-rw-rw-  2.0 fat     1276 b- defN 20-Jun-19 16:25 e_x-1.16.0.data/scripts/electrumx_server

Not sure where the wheel is being built, but it's possible it's on a platform without unix permissions or the permissions are being clobbered by a pre-build command or file copy. Hoping @SomberNight can shed some light.

The net effect is that electrumx_server isn't a PATH-executable following installation of e-x.

JustinTArthur avatar Apr 12 '21 00:04 JustinTArthur

I think I might have built on Windows. I don't remember for sure. Certainly seems likely now. I will make sure to use Linux for the next build.

SomberNight avatar May 01 '21 05:05 SomberNight

Manually fixing the permissions on electrumx_server gives me this error when running it:

/usr/bin/env: ‘python3\r’����: No such file or directory

I'm guessing the root cause is the same (building on Windows, which presumably is screwing up the newlines)

JeremyRand avatar Dec 28 '21 05:12 JeremyRand