[Mono-list] MacOS packages.

Andy Satori dru@satori-assoc.com
Tue, 24 Feb 2004 19:11:47 -0500


OK, following up my own post and thoughts.

I went ahead and installed OS X 10.3 on an external FW drive, and just 
built a ground up Mono install using pkg-config 0.15.0, glib-2.3.1, 
gettext 0.11.5, and mono-0.30.1.  And I'm getting ready to assemble the 
.pkg files for those installations.  The question now becomes, where to 
put them...

On a fresh installation of OS X, /usr/local/bin is not in the path.  
Everything lives in /usr/bin, including java, javac, php, ruby, and 
python.  Based upon that, we have the option of installing Mono and 
it's dep's into /usr/ /usr/local/ or /opt/.

For the average user, installing it to /usr/ means that it will just 
magically work.  The other alternative is to write a shell script to 
alter the systemwide environment variables, but this would be 
overwritten by every .x.x patch to the OS.  With the change to bash, we 
could alter it for the terminal windows, but spawned tasks would not 
have the correct environment by default.

Looking at the way that Apple integrated Java into the operating 
system, it looks like the "proper" way to do this would be to go to 
/usr/ as this would allow Mono development to build applications that 
are deployed in <<name>>.app bundles just like Java applications and be 
executable in the same fashion, giving Mono apps the same level of 
system parity as Java.

The only negative I see with this is that it might conflict with other 
versions of glib-2 or gettext on the system.  It might give some 
strange interactions with DarwinPorts or Fink applications.

Does anyone have any thoughts?

Andy Satori

On Feb 24, 2004, at 2:37 PM, Andy Satori wrote:

> This depends upon if you want a 'native' solution, or a Fink, or a 
> DarwinPorts solution.  I personally prefer native solutions, as they 
> don't require any 3rd party tools, but it means packaging all of the 
> dependancies as well.
>
> The native solution would be to build Package via the Apple Developer 
> Tools Package Builder, then place it in a disk image, gzip the image 
> and that's your installer.
>
> The other solutions require that either the Fink client or the 
> DarwinPorts tools be installed and then the user can use those 
> installation systems, which are more like the Linux RPM, or Apt Get 
> tools.  This is fine, but it puts things in funny locations, like 
> /sw/bin & /sw/lib or /opt/, making your documentation a little bit 
> odd.
>
> I'd be happy to work on a full installer package if that's of 
> interest.  It's not to terribly complex, and it ties into my work on 
> integrating Mono (mcs) into XCode.
>
> Andy
>
> On Feb 24, 2004, at 1:44 PM, Miguel de Icaza wrote:
>
>> Hey guys,
>>
>>    Given that the Mono port for MacOS is progressing rapidly [1], I
>> would like the next release of Mono to be available as an easy-to-use
>> .dmg file.
>>
>>    Can someone who understand this explain what do I have to do?
>>
>> [1] the only missing feature am aware of is exception handling.
>> _______________________________________________
>> Mono-list maillist  -  Mono-list@lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-list
>>
>
> _______________________________________________
> Mono-list maillist  -  Mono-list@lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-list
>