[Fedora-packaging] Packaging mono - RFC

Paul Howarth paul at city-fan.org
Tue Sep 16 12:45:56 UTC 2008


Paul wrote:
> Hi,
> 
> Mono (and mono-packages) are currently packaged to %{_libdir} as per the
> published guidelines for packaging.
> 
> There has been discussion, both recently and in the past, about moving
> mono to .noarch packages and placing them in /usr/share. The rational
> behind this is that .NET CIL is a non-architecture specific system which
> calls on a central repository of dlls held within GAC. It is a shared
> resource rather than a platform specific resource. It is also not a
> traditional library (.so).
> 
> While there is no arguing that .so (and standard linux library files)
> should remain in %{_libdir}, non-native libs should not live there; it
> pollutes and causes problems elsewhere. Simple example, if you live on a
> 64 bit box and install a prebuilt 32 bit app, it will look for files
> from GAC in /usr/lib. There is no guarantee that GAC will be found.
> 
> By placing files in /usr/share GAC can always be found.
> 
> Obviously this is in discussion now (which is why I've invited Andrew
> Jorgensen from Novell to take part in the thread), but it would
> certainly make more sense to have them as .noarch packages and
> in /usr/share.

The Fedora Packaging Guidelines for Mono justify the use of 
arch-specific libraries on the basis that ahead-of-time (AOT) compiled 
assemblies are arch-specific and must, if used, live in the same 
directory as their DLL/EXE counterparts. Ergo the DLL/EXE versions must 
also live in arch-specific directories.

https://fedoraproject.org/wiki/Packaging/Mono

Paul.




More information about the Fedora-packaging mailing list