Proposal for a Desktop Services Framework
With Camaelon theming, GNUstep applications may be able to offer an "almost native" experience in alien environments like Windows and MacOS.
To avoid significant and repetitive modifications to applications which may require some support from the native desktop environment or provide services to other applications (classic low-threshhold activities such as handling MIME and file types, all the way through to native file dialogs and gateways into local accessibility services), it may be sensible to begin work on a DesktopServicesKit.
The following is a limited list of common desktop services offered (to one extent or another) by environments like KDE, GNOME, Windows, MacOS, Etoile and ...:
- desktop notifications and information
- file and directory dialogs
- printing services and dialogs
- registration of MIME and file-type handling capabilities
- native application helper launch and termination
- gateway from GNUstep accessibility framework (does it exist yet?) to local platform
- privilege escalations
This would logically be complemented by a rather lighter System Services Framework to deal with native operating system issues such as networking, disk, volume, filesystem and file metadata, capabilities and permissions management, authentication services, etc.