[Mono-list] About RPMS of .NET packages (using MonoDevelop as a case study)

Philippe Lavoie philippe.lavoie@cactus.ca
Sat, 3 Apr 2004 13:19:52 -0500


Its kind of strange that three days after I post my little question =
about RPMS that slashdot discuss zero install. I didn't know it existed, =
but I think it shows that the idea has merits.=20

I think it especially pertinent to the managed world.

Here is the link: =
http://slashdot.org/articles/04/04/03/174249.shtml?tid=3D106&tid=3D185



Philippe Lavoie
=20
   Cactus Commerce         eBusiness. All Business.
 Tel 819.778.0313 x302 * 888.CACTUS.0 * Fax 819.771.0921
www.cactuscommerce.com philippe.lavoie@cactuscommerce.com

-----Original Message-----
From: Andy Satori [mailto:dru@druware.com]=20
Sent: Friday, April 02, 2004 4:20 PM
To: Philippe Lavoie
Cc: mono-list@lists.ximian.com
Subject: Re: [Mono-list] About RPMS of .NET packages (using MonoDevelop =
as a case study)

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

Andy

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

> Hi folks,
>
> =A0
>
> There was a small discussion which stemed from the release of=20
> MonoDevelop. MonoDevelop already has a list of RPMS which are needed=20
> for it to work. However, I think that having multiple RPMS is braking=20
> the .NET spirit.
>
> =A0
>
> Let me explain. Then flame away.
>
> =A0
>
> 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=20
> with mono, so let's focus on the other one.
>
>  =A0
>
> According to the .NET philosophy, every "managed" dependency of=20
> MonoDevelop should be bundled inside its own package and that's it.=20
> The only dependencies should be the unmanaged ones. =A0
>
> =A0
>
> Maybe have a .NET application binary package could/should/would=20
> unbundle to a structure as follows
>
> =A0
>
> Application.exe
>
> =
Application=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=
 # this would be a sh script which=20
> calls the exe
>
>  Application.exe.libs/
>
> Application.exe.libs/lib1.dll
>
> Application.exe.libs/lib2.dll
>
> Application.exe.libs/lib3.dll
>
> Application.exe.config
>
> =A0
>
> One of the things I notice with unix is that I need to do a lot of=20
> dependency checking before I get something up and running. The above=20
> structure would remove this (except for unmanaged dependencies) and it =

> could be optimize when someone compiles by source since the libraries=20
> might already be inside the GAC. The philosophy I think is that hard=20
> disk is cheap and DLL hell is not cheap.
>
>  =A0
>
> Anyway, I liked it when I installed Axiom. It also contained the Tao=20
> and other managed libraries it needed. I didn't need to fetch 3 or 4=20
> more packages.
>
> =A0
>
> 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.=20
> We should move away from that model, gtk#.dll could have been bundled=20
> with MonoDevelop. If people want to put all dependencies in a GAC or=20
> something, they will need a real installer. Otherwise it's the copy=20
> everything locally methodology. At least according to the philosophy=20
> of .NET. Do we have an installer for mono applications under Unix yet?
>
> =A0
>
> What do you guys think?
>
> =A0
> Philippe Lavoie
> =A0
> =A0=A0 Cactus Commerce=A0=A0=A0=A0=A0=A0=A0=A0 eBusiness. All =
Business.
> =A0Tel 819.778.0313 x302 * 888.CACTUS.0 * Fax 819.771.0921
> www.cactuscommerce.com philippe.lavoie@cactuscommerce.com
>
> =A0