Opened 4 years ago

Closed 4 years ago

#61813 closed enhancement (wontfix)

macports base: faulty symbolic links should be flagged

Reported by: mascguy (Christopher Nielsen) Owned by: mascguy (Christopher Nielsen)
Priority: Low Milestone:
Component: base Version:
Keywords: Cc:
Port:

Description (last modified by mascguy (Christopher Nielsen))

As part of my routine port upgrade workflow, symlinks -t -r /opt is run to identify faulty symbolic links. And this has uncovered a not-insignificant number of ports with this issue.

Faulty links should be identified and flagged by MacPorts, during port installation. And we should also consider failing the installation.

Near-term, perhaps we could add "Have you run symlinks -t -r ${prefix} ?" to the list of items in the pull request form?

Change History (10)

comment:1 Changed 4 years ago by mascguy (Christopher Nielsen)

Description: modified (diff)
Summary: macports base: faulty symbolic links should be flagged, perhaps by rev-upgrademacports base: faulty symbolic links should be flagged

comment:2 Changed 4 years ago by mascguy (Christopher Nielsen)

Description: modified (diff)

comment:3 Changed 4 years ago by mascguy (Christopher Nielsen)

Of note, port texlive-bin apparently installs dangling placeholder symlinks, replaced when other ports are installed. So if this is common practice, it may not be possible to fail all installations with faulty links.

comment:4 in reply to:  description ; Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

It is perhaps a bit unusual, but there is nothing inherently incorrect about a port installing a symlink to something that does not exist. There may be valid reasons to do so. If you find individual ports doing this and it appears to be erroneous, please do file bug reports about those ports.

Replying to mascguy:

Near-term, perhaps we could add "Have you run symlinks -t -r ${prefix} ?" to the list of items in the pull request form?

When I run that, I get:

-bash: symlinks: command not found

Where does this command come from?

comment:5 in reply to:  4 Changed 4 years ago by mascguy (Christopher Nielsen)

Replying to ryandesign:

Replying to mascguy:

Near-term, perhaps we could add "Have you run symlinks -t -r ${prefix} ?" to the list of items in the pull request form?

When I run that, I get:

-bash: symlinks: command not found

Where does this command come from?

symlinks is installed via a port of the same name.

comment:6 Changed 4 years ago by mascguy (Christopher Nielsen)

Priority: NormalLow

comment:7 Changed 4 years ago by mascguy (Christopher Nielsen)

Since I'm the one asking for this, it seems only fair that I also provide a proof-of-concept.

Even if the POC code is ultimately tossed out, or rewritten, it'll still provide a starting point for brainstorming, etc.

comment:8 Changed 4 years ago by mascguy (Christopher Nielsen)

Owner: set to mascguy
Status: newassigned

comment:9 Changed 4 years ago by mascguy (Christopher Nielsen)

In retrospect, I'm not sure how necessary this is. Given the amount of other port-related work, particularly related to the Apple Silicon porting efforts... well, we arguably have much bigger fish to fry.

So if folks think this idea has some merit, let me know. But if the consensus is that such a feature is unnecessary or superfluous, we can close this ticket. I'm fine with whatever you folks decide.

comment:10 Changed 4 years ago by mascguy (Christopher Nielsen)

Resolution: wontfix
Status: assignedclosed

Closing this, as we have much bigger fish to fry.

Note: See TracTickets for help on using tickets.