Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#64002 closed request (fixed)

Request to add a Port for the py-acefile Program

Reported by: RobK88 Owned by: jmroot (Joshua Root)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc:
Port: py-acefile

Description (last modified by RobK88)

I would like to request that Macports adds a port for py-acefile.

To my knowledge, acefile is the ONLY software available that can safely unpack or decompress .ace version 1 and .ace version 2 archives.

The closed source unace binary provided by the original developer has a major security vulnerability in it. And the developer is no longer around. The pitfalls of closed source software!

For those of us who have old .ace archives around, py-acefile is the only safe way to unpack or decompress them.

The website is: https://www.roe.ch/acefile

the source can be downloaded from: https://pypi.org/project/acefile/#files

Description --- This single-file, pure python 3, no-dependencies implementation is intended to be used as a library, but also provides a stand-alone unace utility. As mostly pure-python implementation, it is significantly slower than native implementations, but more robust against vulnerabilities.

I do not mind taking a crack at developing a portfile. I have never created a portfile for a python binary. If one could point me to a good template for a portfile for building python binary, that would help me out a lot.

Other than declaring python 3 as a dependency in the portfile, does one also need to declare pip-install as a dependency?

Change History (6)

comment:1 Changed 2 years ago by RobK88

Description: modified (diff)

comment:2 Changed 2 years ago by jmroot (Joshua Root)

Owner: set to jmroot
Resolution: fixed
Status: newclosed

In f2644d8fc638b84ea0c196ac42a6fec48d431306/macports-ports (master):

py-acefile: new port

Closes: #64002

comment:3 in reply to:  description Changed 2 years ago by jmroot (Joshua Root)

Replying to RobK88:

I do not mind taking a crack at developing a portfile. I have never created a portfile for a python binary. If one could point me to a good template for a portfile for building python binary, that would help me out a lot.

This can now serve as a good minimal example of a python module port. :)

Other than declaring python 3 as a dependency in the portfile, does one also need to declare pip-install as a dependency?

The python portgroup actually takes care of the standard dependencies for you. In addition to python itself you need the build and python-install modules to do a newfangled PEP 517 build. Apart from dependencies needed by the module at runtime (of which this has none), you also have to add build-time dependencies on whichever build system is used, which in this case is setuptools and wheel.

comment:4 Changed 2 years ago by RobK88

Thanks Joshua for creating the port for acefile.

I looked over the portfile and I learned a lot.

One quick question. Do all python ports in Macports use the PEP 517 build system?

comment:5 Changed 2 years ago by jmroot (Joshua Root)

PEP 517 in ports is a minority at the moment, but it's the direction everything should be moving since upstream is deprecating setup.py install.

comment:6 Changed 2 years ago by RobK88

Thanks Joshua. Got it. Use the PEP 517 build system whenever possible for future ports of python software.

Note: See TracTickets for help on using tickets.