Gnome Summit Discussion
At the Gnome Summit we explored adding CC licensing to various Gnome applications. Application developers appeared to have a few needs:
- They want to display the appropriate icon (or other) for a particular license. For instance, AbiWord could display a small icon representing license status in the tool bar. Music players could display the icon in the controls area. A music streaming app might want to play a 5 second "Now entering the Creative Commons" chime (much like radio station identification, but for licenses).
- They want to allow the user to easily select a license. This would probably be a wizard that asks the user questions and tries to select the most appropriate license from all that it knows about. Much like a file selection dialog, but navigating licenses instead of your file system.
A low-level liblicense could handle XML parsing required. It would allow the client to determine the questions that need to be asked to select a license, and to download any icons, blurbs, etc for all known license types.
The low-level library solves the first problem above, but not the second. It's still too difficult to ask the user to select a license. Layered on top of the low-level library would be any number of high level libraries that would convert the textual questions into GUI widgets and present them using the appropriate toolkit (GTK+ / KDE / Cocoa / Win32 / etc). This way, adding license awareness to an application should be as easy as "license=SFGetLicense(); saveDocument(license)".
- license (bundled) - simple cli program to license files.
- .license/default engine - a .license directory will contain the user's default setting, other config info and the user's licenses.
- Gnome Settings frontend. - set the default license through the gnome settings interface.
- Nautilus Frontend Extension - set and read licenses through nautilus.
- License chooser (app.) - license chooser for setting default and per file licenses. (GUI license)
- GTK widget
- Gconf config module.
- Journal Backend
- Journal Frontend
- KDE3 (???)