What === GNUstep is a Obj-C-based framework, similar to Mac OS X's Cocoa State of GNUstep in Fedora ================ GNUstep has long been excluded from Fedora due to its non-standard filesystem layout. Recently, however, its support for being installed under the FHS layout has improved. gnustep-make is now in Fedora. There are some problems with the current layout used by Fedora; see below. Other distributions =========== Debian and its derived distributions have the complete GNUstep stack already packaged. The file system layout they adopted seem to be a flattened FHS layout. Current problems ========== OpenStep/GNUstep/Cocoa allow for application bundles: self-contained directories that is treated by the application launcher (openapp in GNUstep) as applications. In GNUstep terminology, a "flattened" layout, such as used in Debian, makes the application bundles platform-specific. In an unflattened layout, however, such as used by default when using the GNUstep layout (as opposed to the FHS layout that we are constrained to use in Fedora), fat binaries are possible: binaries are stored under a directory specifying their platform. for instance: Hello.app \--- i386 | \--- hello \--- x86_64 \--- hello This seems more desirable, in that it will allow an unmodified 'openapp' launcher to work on multilib systems: the default application path is /usr/lib/GNUstep/Applications, regardless of whether %{_libdir} is /usr/lib or /usr/lib64. The problem, right now, is that GNUstep tools are currently installed in /usr/bin/<arch>. Which conflicts with util-linux-ng, where /usr/bin/<arch> is an executable wrapper around 'setarch <arch>'. We would need to settle on our GNUstep layout, before the rest of GNUstep can be packaged. The main options right now seem to be: - FHS, flattened (like Debian). We would need to override GNUstep-make to install under %{_libdir} rather than %{_prefix}/lib. It will require a customized openapp to handle multilib systems - FHS, unflattened (like our current gnustep-make). Works well with multilib. We need to decide where to put GNUstep tools: Axel suggests /usr/bin/GNUstep/<arch>. Base libraries currently go in /usr/lib/<arch>, and are probably fine there. Moving them to /usr/lib/GNUstep/<arch> might cause confusion as the higher-level frameworks are installed there. - Pure GNUstep layout. Everything goes in /usr/GNUstep Thoughts? Once we come up with a consensus I'll probably start a page on the Wiki. Anyone interested in joining a GNUstep SIG? Regards, -- Michel Salim http://hircus.jaiku.com/ -- fedora-devel-list mailing list fedora-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-devel-list