The image question

Randall Wood rhwood at
Fri Mar 9 01:45:44 PST 2007

On 8 Mar 2007, at 22:38, Yves de Champlain wrote:

> Le 07-03-08 à 21:31, Randall Wood a écrit :
>> On 8 Mar 2007, at 13:05, Daniel J. Luke wrote:
>>> On Mar 8, 2007, at 10:30 AM, Yves de Champlain wrote:
>>>> Are there people out there who really use the image installations ?
>>>> I mean, who are activating / deactivating ports on a regular basis,
>>>> in such a way that it would not make sense to install /  
>>>> uninstall them from a tarball instead ?
>>> I've thought for a while that improving archive mode a little and  
>>> deprecating image mode would be a good idea (it's why I patched  
>>> upgrade to work with direct+archive mode when it only worked with  
>>> image mode before).
>>> The one thing we would loose is the potential for ports to depend  
>>> on a specific version of another port that was installed but not  
>>> 'active' (ie, you could have multiple versions of some library  
>>> port installed with ports that needed each version linked against  
>>> the one they wanted without having to change the normal install  
>>> layout of that library). I _think_ this is something that jkh has  
>>> wanted ever since images were first implemented.
>>> It seems to me like this just exponentially increases the  
>>> installed system complexities and in the few cases where it would  
>>> be very useful to have multiple different library versions  
>>> installed, it makes more sense to me to alter the port so they  
>>> can both be installed at the same time (like the db43/db44 ports,  
>>> for example).
>>> I think direct + archive mode makes more intuitive sense as well  
>>> (and gives us an obvious path to distributing binaries, as we  
>>> would eventually just distribute appropriate archives somehow).
>>>> And if I use the direct install mode, what happens to the "post- 
>>>> activate" phase ?
>>> I don't think it gets run. (but it has been a while since I looked).
>>> [g5:~/Projects/macports/dports] dluke% grep -r 'post-activate' .  
>>> | wc -l
>>>      144
>>> ... which isn't too many to look at and change to post-destroot/ 
>>> post-install if we ever decide to depricate images.
>> A healthy chunk of those are so written because they broke if the  
>> port-activate process was run during the destroot or post-install  
>> phase. See the long history of problems with scrollkeeper for an  
>> example.
> Does post-install make any sense at all in image mode ?  Are there  
> really issues that must be dealt with after destroot and before  
> activation ?  Most of the post-install procedures are ui_msg stuff.

Yes there are. If a build process insists on running some cataloging  
utility like scrollkeeper-update in destroot, then the catalogs need  
to be removed post-destroot, because you would not want that bad  
cataloging data in the archive.

> So could MacPorts have only one finalize procedure that is run  
> after install in direct mode and postponed after activation in  
> image mode to replace both post-install and post-activate ?

That would be ideal.

> yves

Randall Wood
rhwood at

"The rules are simple: The ball is round. The game lasts 90 minutes.  
All the
rest is just philosophy."

More information about the macports-users mailing list