What's the "right" way to update a port to

Mojca Miklavec mojca at macports.org
Sun Aug 21 14:53:38 PDT 2016

Dear Gabriel,

On 21 August 2016 at 13:32, Yongwei Wu wrote:
> On Saturday, 20 August 2016, Gabriel Rosenkoetter wrote:
>> I'm very new to this mailing list (as of yesterday), but only relatively
>> new to using MacPorts (for little things over the past few years).
>> Recently, I finally got around to reripping my CD collection, and I
>> figured I'd use the same tool to do that that I did 15 years ago on a
>> now-deceased FreeBSD system: abcde.
>> The port installs just fine, and with the right abcde.conf configuration
>> can work, but as noted in https://trac.macports.org/ticket/49799, the
>> preferred way to retrieve tracks from a CD under Mac OS X (cddafs, or "just
>> copy the AIFFs from the mounted volume") is flat broken under the current
>> port version (2.7).
>> The note in that bug report about the upstream bug is exactly correct, and
>> the fix is available in the relatively recently (April 2016, I think) 2.7.2
>> upstream release.
>> I think this should be relatively simple to fix, and I'd like to learn how
>> to do that and contribute the update. Any pointers where I should start
>> reading?
> Maybe the following two links?
> https://trac.macports.org/wiki/howto/InstallingOlderPort
> https://guide.macports.org/#development.local-repositories

Like Yongwei Wu suggested, you need to create a local portfile
repository. I would start with a SVN checkout (might be a sparse
checkout with just the relevant port) of
(please note that we'll soon switch to git), even though just copying
the file from $(port dir abcde) or from somewhere else should also
work fine.

You then need to add path to that new dports to
${prefix}/etc/macports/sources.conf as instructed by the links, run
poinindex inside dports and make sure that "port dir abcde" points to
your local checkout. Then:

- replace the version 2.7 with 2.7.2 in the Portfile

- (optional) run "portindex" in your local "dports" again

- run "sudo port -v extract abcde"

- you should get an error along with the suggested new checksums that
should be replaced in the Portfile (make sure that the checksums are
correct before copy-pasting them and that you fetch the right files)

- "sudo port -v install abcde" should then install the latest version;
you might need minor modifications in the Portfile in case that the
port changed in any significant way

Once you get that working, you can open a new ticket to request an
upgrade. You could run "svn diff" inside abcde and attach the diff to
the ticket. (Please note that we will soon try to switch to pull
requests on GitHub.)

Ideally you would also volunteer to be the maintainer of that port
that currently has nobody to look after. In that case you would add
    eclipsed.net:gr openmaintainer
to the maintainers field (openmaintainer is optional and allows others
to make minor modifications to the port).

Then just reply to this thread again or ask on IRC. IRC might also be
useful to resolve your problems quickly in case you are stuck.

(I need to add that you could also just request an update of the port
and someone else could do the required steps. But if you are willing
to look after it yourself, being able to add or update other software
in the future without having to wait for others to do it for you is
often a valuable asset. And in particular ports without the maintainer
would more than welcome any new caring hands to look after them.)


More information about the macports-users mailing list