Opened 4 years ago

Last modified 10 months ago

#61165 assigned defect

reinteract: Image error: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract already exists and does not belong to a registered port

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.6.3
Keywords: Cc:
Port: reinteract

Description

On the 10.14 and 10.15 buildbot workers only, reinteract cannot be activated:

https://build.macports.org/builders/ports-10.15_x86_64-builder/builds/38223/steps/install-port/logs/stdio

Error: Failed to activate reinteract: Image error: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract already exists and does not belong to a registered port.  Unable to activate port reinteract. Use 'port -f activate reinteract' to force the activation.

If I delete /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract try again, it comes back:

% /opt/local/bin/port prov /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract does not exist.
% sudo /opt/local/bin/port install reinteract
--->  Computing dependencies for reinteract
--->  Fetching distfiles for reinteract
--->  Verifying checksums for reinteract
--->  Extracting reinteract
--->  Configuring reinteract
--->  Building reinteract
--->  Staging reinteract into destroot
--->  Installing reinteract @0.5.10_0+x11
--->  Activating reinteract @0.5.10_0+x11
Error: Failed to activate reinteract: Image error: /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract already exists and does not belong to a registered port.  Unable to activate port reinteract. Use 'port -f activate reinteract' to force the activation.
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_reinteract/reinteract/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port reinteract failed
% /opt/local/bin/port prov /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract is not provided by a MacPorts port.

I checked the disks of both workers with Disk Utility - First Aid and no problems were found.

Attachments (1)

main.log.bz2 (10.1 KB) - added by ryandesign (Ryan Carsten Schmidt) 4 years ago.

Download all attachments as: .zip

Change History (4)

comment:1 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

It appears to get created in the destroot phase:

% /opt/local/bin/port prov /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract does not exist.
% sudo /opt/local/bin/port build reinteract
--->  Computing dependencies for reinteract
--->  Fetching distfiles for reinteract
--->  Verifying checksums for reinteract
--->  Extracting reinteract
--->  Configuring reinteract
--->  Building reinteract
% /opt/local/bin/port prov /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract does not exist.
% sudo /opt/local/bin/port destroot reinteract
--->  Computing dependencies for reinteract
--->  Staging reinteract into destroot
% /opt/local/bin/port prov /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract is not provided by a MacPorts port.

Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: main.log.bz2 added

comment:2 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Status: newaccepted

There must be an adverse reaction between the python portgroup, whose default behavior is to create a symlink at /opt/local/bin/reinteract pointing to /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/reinteract, and the reinteract portfile, which has this block (and has had it since before the port started using the python portgroup):

    post-destroot {
	xinstall ${worksrcpath}/bin/reinteract ${destroot}${prefix}/bin/
    }

Maybe this used to work back in 2012 when this port was last updated. The python portgroup has changed a lot since then.

Actually I do see the problem on my 10.13 system when I build from source but not when I get the binary the buildbot created. Maybe there was a change in the python portgroup between November 2, 2018 when the last (private) archive was successfully created and now.

comment:3 Changed 10 months ago by ryandesign (Ryan Carsten Schmidt)

Owner: ryandesign deleted
Status: acceptedassigned

This is still a problem and I don't appear to be working on it.

Note: See TracTickets for help on using tickets.