Hi everyone I was going to update the wiki with some thoughts about desktop bundles and host-platform service interfaces, but it's still locked. Instead, the dev mailing list will get spammed - it might be useful to discuss anyway.
There's been some discussion about the need for "desktop bundles" in GNUstep. They are intended to support using GNUstep apps within a native desktop environment like GNOME, KDE, Windows and MacOSX. I guess these bundles will be tied in to some kind of UI theme, too. I think it's a good idea, it'd be nice to be able to use GNUstep and the development tools to create native-like apps for other platforms. Even better, doing this might make a GNUstep-native environment richer, by creating a GNUstep-native bundle that enables the same kind of functionality in a GNUstep desktop kind of way. The key areas I can think of that would benefit from a bundle of prebuilt standard dialogs, integrated host-desktop dialogs, controls and GNUstep-like APIs are: * disk and file management - managing volumes - platform/filesystem independent capacity, read-only/read-write status, formatting, inserting, ejecting - utilising local shortcut schemes, special folders, VFS schemes etc - integration into local indexing services * misc hardware - power management integration - battery data - screen topology (how many? what layout?), bit-depth and blanking - local printer services - consumer electronics services (cameras, music players, home entertainment devices) * data, IPC and helper apps - integration into local cut and paste services where not already operational, or where extra functionality exists - use of local calendar, identity (vCard-like), authenication, privilege-escalation, and mail services - messaging, voice and video services - integration of local IPC types where appropriate into GS mechanisms - use of and registration into local MIME and file type mappings - start and stop local services * networking - interface configuration - interface authentication - profiles - remote desktop services - web and internet services (proxies, system-wide aggregators) * internationalisation and localisation - integration into local localisation services for currency symbols, date formats, sort orders, timezone name display-names, well-known filesystem locations... - keyboard layout etc * assistive and automation services - local screen readers and assistance services - local alternative data entry systems - proxies for local automation services The idea would be first to be able to harvest these things from the local system, so that our application that wishes to appear native can use local services, provide expected functionality, display the appropriate local directory names depending on the language settings of the user, battery charge status etc. In some cases, there are new Cocoa classes that would be well-suited to deliver this functionality to a GNUstep app, and where a desktop bundle could provide UI wrapping for it. In other cases, it'd be necessary to create some kind of well-thought-out GS extension classes I guess. You'd probably need a backend bundle - GNOME runs on a large number of platforms, all of which have different ways of doing power-management, for example. KDE and a native GNUstep desktop are in the same boat - it seems sensible to create common backends for them for Linux, the BSDs, etc. Is anyone doing any work on these things at this point? Regards Peter _______________________________________________ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev