Remember to use the Reply All function when you reply, so the conversation 
stays on the mailing list. I've re-added the list address to my reply.

On Aug 12, 2015, at 5:41 PM, Kurt Pfeifle wrote:

> On Wed, Aug 12, 2015 at 6:06 AM, Ryan Schmidt wrote:

>> Don't use the -f flag to force things unless you really understand the 
>> consequences of doing that.
> 
> Too late :-) 
> 
> I upgraded now to Yosemite and am following the instructions for MacPorts 
> migration.
> 
> However, my son may have the same problem. So, if he hasn’t kept a log of all 
> his force-activations — is there a ports command which will reveal all 
> possibly conflicting ports?
> 
> If not — is this a feature request that is worth while to ask for?

No, there is currently no way to have MacPorts give you a list of all ports 
that conflict with some other port.

When you force an activation, MacPorts keeps the conflicting files but renames 
them with a suffix that begins with ".mp_" followed by the timestamp. So to 
identify all the ports whose activations you've forced, you could scan the 
MacPorts prefix for filenames matching that pattern:

sudo find -E /opt/local -regex '^.*\.mp_[0-9]+$'

Recent versions of MacPorts remember what port those renamed files belong to, 
so if you forced the activations recently, you could then map those files back 
to the ports that were force-activated:

sudo find -E /opt/local -regex '^.*\.mp_[0-9]+$' -print0 | xargs -0 port 
provides | sed 's/^.*: //' | sort -u

Older versions of MacPorts lost the link between the file and the port when the 
file was renamed due to an activation conflict, so if you force-activated ports 
several years ago, then you may instead get the message that a file "is not 
provided by a MacPorts port" and you'll have to manually intuit what port it 
might have come from.

Assuming you get a list of ports that you force-activated, you can then decide 
which of them, if any, you want to keep. If none of them, you can uninstall 
them. If one of them, you should uninstall it, then reinstall it, to ensure 
that its files are properly named (without ".mp_*" suffix). You may then get 
the message again that you cannot install it because another port is active. In 
that case, uninstall or deactivate that other port, then install the port you 
wanted.

_______________________________________________
macports-users mailing list
[email protected]
https://lists.macosforge.org/mailman/listinfo/macports-users

Reply via email to