#43085 closed defect (fixed)
MacPorts port should not be installable
Reported by: | sjorek (Stephan Jorek) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.2.1 |
Keywords: | Cc: | cooljeanius (Eric Gallager) | |
Port: | MacPorts |
Description
Todays “port selfupdate” followed by an “port outdated” listed:
MacPorts 2.2.1_0 < 2.3.0-beta1_0
This is the current subversion release, which I guess should »not yet« get published via “selfupdate”, right ?
On the other hand, if you deliberately released this version, then I'd like to mention, that this version is broken as it is not able to uninstall (upgrade) ports which have been installed with MacPorts 2.2.1. It reports broken/invalid Portfile-descriptions and leaves the system quite unusable. I already read some related mailing-list threads, which talk about changes in the Sqlite-database schema. Are there any steps I might have missed before upgrading MacPorts from 2.2.1 to 2.3.0 ? Do I have to reinstall everything ?
Change History (4)
comment:1 Changed 11 years ago by neverpanic (Clemens Lang)
comment:2 follow-up: 3 Changed 11 years ago by sjorek (Stephan Jorek)
Replying to stephan.jorek@…:
… This message suggests you have the MacPorts port installed. You should not install the MacPorts port, it's only for developers to create the binary installers they re-distribute to users.
Ok, acknowledged - my fault, sorry. Problem solved …
MacPorts should always be updated using selfupdate, and it's entirely possible installing the MacPorts port has overwritten the files previously installed by the MacPorts installer without running the required post- setup scripts that avoid the problem you are mentioning. Didn't you have to force-activate the MacPorts port when you installed it?
Yes, I had to force-activate it (and did a clean-up afterwards). And I have to admit, that I used the macports-migration reinstall-script from http://trac.macports.org/wiki/Migration . So, it was my fault …
If you uninstall the MacPorts port now that will likely break your MacPorts installation, because it will remove the files required to run MacPorts.
I'm not sure, but a running (tcl) process survives the removal of its own binaries and scripts, as long as everything has already been loaded into RAM, or am I wrong ? Like when running the port-repl or the migration-script I mentioned above ?
I suggest you make a backup of
/opt/local
, uninstall the MacPorts port and run the 2.3.0-beta1 installer (see https://lists.macosforge.org/pipermail/macports-dev/2014-March/026208.html). Going back to 2.2.x is probably not a good idea now, because the layout of the database changed (and the beta seems pretty stable at the moment, so it's not worth the risk).
Yep, have it already running on my second machine … good job so far. +1
We should really prevent the MacPorts port from installing (and overwriting MacPorts' files).
Good spot, and/or to make it absolutely obvious rename “MacPorts” to “MacPorts-dev” ?
Thanks for your immediate reply,
Stephan
comment:3 Changed 11 years ago by neverpanic (Clemens Lang)
Port: | MacPorts added |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Summary: | MacPorts 2.3 »beta« already released via selfupdate ? → MacPorts port should not be installable |
Replying to stephan.jorek@…:
Ok, acknowledged - my fault, sorry. Problem solved …
You couldn't have known – the port doesn't say anything about that.
I'm not sure, but a running (tcl) process survives the removal of its own binaries and scripts, as long as everything has already been loaded into RAM, or am I wrong ? Like when running the port-repl or the migration-script I mentioned above ?
That might be true, but not every file needed might have been loaded at this point (even though the package require
statements are usually at the top of our files, so that might even work).
Yep, have it already running on my second machine … good job so far. +1
That's good to hear :)
Good spot, and/or to make it absolutely obvious rename “MacPorts” to “MacPorts-dev”?
I've prevented installation of the MacPorts port with a very noisy message in r118259.
This message suggests you have the MacPorts port installed. You should not install the MacPorts port, it's only for developers to create the binary installers they re-distribute to users.
MacPorts should always be updated using selfupdate, and it's entirely possible installing the MacPorts port has overwritten the files previously installed by the MacPorts installer without running the required post-setup scripts that avoid the problem you are mentioning. Didn't you have to force-activate the MacPorts port when you installed it? If you uninstall the MacPorts port now that will likely break your MacPorts installation, because it will remove the files required to run MacPorts.
I suggest you make a backup of
/opt/local
, uninstall the MacPorts port and run the 2.3.0-beta1 installer (see https://lists.macosforge.org/pipermail/macports-dev/2014-March/026208.html). Going back to 2.2.x is probably not a good idea now, because the layout of the database changed (and the beta seems pretty stable at the moment, so it's not worth the risk).We should really prevent the MacPorts port from installing (and overwriting MacPorts' files).