Upgrade to Leopard mostly smooth, but has small glitch
Ryan Schmidt
ryandesign at macports.org
Sat Mar 8 00:06:51 PST 2008
On Mar 8, 2008, at 01:35, paul beard wrote:
> On Fri, Mar 7, 2008 at 7:11 PM, Ryan Schmidt wrote:
>
>> On Mar 7, 2008, at 14:31, Bill Hernandez wrote:
>>
>>> I just installed Leopard on iMacG5 and everything went off very
>>> well.
>>>
>>> However when I restarted and looked at all the usual preferences, I
>>> launched the terminal and tried :
>>
>> Did I understand correctly that you had Tiger, installed MacPorts
>> and
>> several ports, and now upgraded to Leopard and are trying to
>> continue
>> using the ports that were already installed? If so, I can't
>> recommend
>> that. I suggest reinstalling MacPorts and your ports from scratch.
>> Ports may need to build differently on each version of Mac OS X.
>
> That seems really cumbersome. If it is necessary, any way that the
> MacPorts team could whip up a script to migrate ports to a new OS
> release?
>
> or will a simple for loop (for i in `port installed`; do . . . ) do
> it?
I feel it's necessary. Consider all the ports you currently have
installed that have a "+darwin_8" variant. If you upgrade to Leopard,
your OS is now Darwin 9, but you still have +darwin_8 variants. If
you upgrade those ports, they'll still keep the +darwin_8 variants as
long as those ports still define those variants. Also, if those ports
define a +darwin_9 variant, during upgrade, you'll acquire that as
well, so now your port will be installed with "+darwin_8+darwin_9"
which is not correct and could cause unexpected behavior.
Consider also the case of the php5 port. The +apache variant, as it
is currently written, uses the Apache 1.3 server Apple has in Mac OS
X 10.4 and earlier. If you upgrade to Leopard, in which Apple's
Apache is now version 2, php5 won't work anymore, because Apache
modules need to be recompiled to work with a different Apache
version. To generalize, there may be variants that can only be used
on certain OS versions, or that work differently on different OS
versions, so ports should be recompiled when you upgrade to a new
major OS release.
MacPorts itself may behave differently. For example, there was talk
about using new facilities in Leopard for modifying the user's PATH.
That specific example won't apply since it was ultimately decided not
to use those facilities. But consider the case of upgrading from
Panther to Tiger. If you had any ports installed that need
startupitems, you should rebuild those ports so they'll be turned
into launchd plists instead.
One could probably script such a reinstall, but I'm not going to
right now. The steps would be: get the name and variants of each
installed port, and whether or not it's active. Uninstall each port
(optional?). Move aside all directories where MacPorts has installed
things (/opt/local, /Library/Tcl/macports1.0, /Applications/
MacPorts). Install MacPorts from the appropriate disk image for your
new OS. Install each of your previous ports with the right variants,
deactivating those ports that were originally inactive.
> and as a hint, if you install BBedit's command line tools, you can
> simply type "edit <filename>" instead of all that other stuff. Or use
> TextWrangler, for those who are short of coin. It has the same
> facility.
BBEdit's command line tools are called "bbedit" and "bbdiff".
TextWrangler's equivalent command line tools are called "edit" and
"twdiff".
More information about the macports-users
mailing list