I think it make perfect sense, but since it would make it easier for 'users' and not require a techie that has not reached a significant knowledge level with AutoTools I think the bulk of the Unix world will think it's a very very bad idea.

Andy

On Apr 2, 2004, at 9:44 AM, Philippe Lavoie wrote:

Hi folks,

 

There was a small discussion which stemed from the release of MonoDevelop. MonoDevelop already has a list of RPMS which are needed for it to work. However, I think that having multiple RPMS is braking the .NET spirit.

 

Let me explain. Then flame away.

 

In .NET, they try hard to break the DLL hell. There are two solutions, the GAC and copying everything locally. The GAC is work in progress with mono, so let’s focus on the other one.

 

According to the .NET philosophy, every “managed” dependency of MonoDevelop should be bundled inside its own package and that’s it. The only dependencies should be the unmanaged ones.  

 

Maybe have a .NET application binary package could/should/would unbundle to a structure as follows

 

Application.exe

Application                      # this would be a sh script which calls the exe

Application.exe.libs/

Application.exe.libs/lib1.dll

Application.exe.libs/lib2.dll

Application.exe.libs/lib3.dll

Application.exe.config

 

One of the things I notice with unix is that I need to do a lot of dependency checking before I get something up and running. The above structure would remove this (except for unmanaged dependencies) and it could be optimize when someone compiles by source since the libraries might already be inside the GAC. The philosophy I think is that hard disk is cheap and DLL hell is not cheap.

 

Anyway, I liked it when I installed Axiom. It also contained the Tao and other managed libraries it needed. I didn’t need to fetch 3 or 4 more packages.

 

In Linux, we also have dependency hell with RPMS when you start to mix compiling from source and adding RPMS made by different vendors, etc. We should move away from that model, gtk#.dll could have been bundled with MonoDevelop. If people want to put all dependencies in a GAC or something, they will need a real installer. Otherwise it’s the copy everything locally methodology. At least according to the philosophy of .NET. Do we have an installer for mono applications under Unix yet?

 

What do you guys think?

 
Philippe Lavoie
 
   Cactus Commerce         eBusiness. All Business.
 Tel 819.778.0313 x302 • 888.CACTUS.0 • Fax 819.771.0921
www.cactuscommerce.com [EMAIL PROTECTED]

 

_______________________________________________ Mono-list maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to