Creative Commons support in Gnome

After reading about the new Nautilus-Python bindings, I decided I had to try my hand. And what better feature to enable than everyone’s favorite, Creative Commons License support. Lately I’ve been working on updates to our embedded license tools which allow users to tag an MP3 with a CC license and then provide a web page which “verifies” the license claim.

The new tool, as of yet unnamed (suggestions?) adds a Creative Commons tab to the file properties of any MP3 file. For example, a track from Copy Me/Remix Me :

click for larger screenshot

As you can see, the property page displays the license claim, and then verifies it against the web page. If the verification page didn’t exist, or didn’t match properly, you’d see an error message instead.

Now, I know what you’re thinking: “cool! how do I get in on the action?” It’s simple. Or at least straight-forward. You see, this bit of integration is made possible by some Nautilus code that’s not in the latest release, but never fear; I’ve provided a source tarball and I think it’ll work with Nautilus 2.4 and later (for sure 2.6 and later).

There are two packages you’ll need, and both are available at the CC Tools Sourceforge Project. First, nautilus-python provides the actual Python bindings for Nautilus. Simply untar it, and do the configure/make/make install dance. This will install the Nautilus support and install some example Python extensions. The default installation location is under your Nautilus library path; on my system it’s /usr/lib/nautilus/extensions-1.0/python.

The second package, nautilus-cc , provides the extension and all of it’s dependencies. Simply untar it in the nautilus-python directory (/usr/lib/nautilus/extensions-1.0/python on my system). Restart Nautilus and right click on an MP3 to try it out.

There’s definitely room for improvement in the tool, from simple UI polish to further integration. For example, what about a context-menu option which lets you license your file and publish it to the Internet Archive via ccTag, all integrated with the desktop. I’m sure there are other ideas out there as well. Leave a comment with a cool idea on this post; my favorite will get a CC t-shirt (so yes, you need to leave your email address and you implicitly give permission for CC to implement your idea; oh, and it’s my blog, so it’s my decision; but I really want to give away a t-shirt).

The cool thing about this integration is not necessarily the license display. I mean, that’s cool, but not necessarily the coolest thing. The coolest thing is that it took me longer to figure out the GTK code than it did to write the license parsing code. That’s because I’m reusing lots of code from previous projects. This further emphasizes the importance of packaging our code in ways that encourage reuse; we should be able to say “Hey, you developer there! Wanna integrate CC in your app? Here’s a library that makes it painless!” And yes, that’s a project I’ll be tackling in the coming weeks for CC.

7 Comments

  1. Posted Wednesday, October 27, 2004 at 12:43 pm | Permalink

    Cool stuff, Nathan. I’ve put a link to it on my blog (and hence, on http://planet.gnome.org). Hopefully those folks have better ideas than I do :)

  2. Posted Wednesday, October 27, 2004 at 1:44 pm | Permalink

    Although I don’t use Gnome (I know…shame on me) this tool seems like a great step forward for the Creative Commons. I have a few suggestions that might help start your brainstorm for enhancements to the tool: 1) After successful verification, how about a link to the varification site in case I want to check out other material from the same author. 2) If the MP3 file is one that I created, it might be beneficial to allow me to create/edit the embedded information from the same screen (i.e. integrate ccTag functionality into this tool). 3) Maybe have a button that allows you to catalog the MP3 file after successful validation (help keep track of verified vs. non-verified files) 4) After successful validation, if the file is available for redistribution, how about the ability to send the file to my favorite file-sharing application’s “share” directory. (Or better yet, create a CC file sharing application that it works with) 5)Since the Creative Commons now has a search engine in beta, it might be useful to add a link or button that launches a search for other stuff from the same author, validation url, or with the same title contents, etc. to the screen.

    Those are just some ideas off the top of my head. I hope this helps. Cheers!

  3. Posted Wednesday, October 27, 2004 at 2:22 pm | Permalink

    How about an Epiphany/Firefox plugin which displays an icon for properly tagged web pages under the CC license?

  4. Posted Wednesday, October 27, 2004 at 4:16 pm | Permalink

    Cool ideas, guys. Jon, we do have the Firefox plugin (which I also wrote), available at http://yergler.net/projects/mozcc. I’ve toyed with an Epiphany plugin in the past, but it’s never really gained enough momentum to reach the point where it’s release quality (even for a hack). Is there interest in such an animal?

  5. Posted Wednesday, October 27, 2004 at 5:14 pm | Permalink

    If you emailed the epiphany guys I’m sure they’d be more than helpful in getting it into the epiphany-extensions build- they’re very easy to work with.

  6. Posted Saturday, October 30, 2004 at 6:35 am | Permalink

    I’ve been thinking a bit about the CC desktop integration, and come up with a couple of ideas. Firstly I have a suggestion or two for improving the current implementation. I think it would be useful for the end user if when they hover over icons such as the no derivative works or non-commerical icon, it shows a description of its meaning (the one-line descriptions from the human-readable CC deeds seem right for this purpose). Another minor point, is that it would be nice if links to the Creative Commons license used and the verify url were clickable. Personally, I’d also like to see the license name displayed in in the format like: “Attribution-NonCommercial-NoDerivs 2.0”. Maybe this could be put (fairly visibly) just above the images that illustrate the features of the CC license used. I like the images too, it’s just that at a quick glance I find the text title easier to process.

    You’re probably aware of this, but if the verify URL is inaccessible (which seems to be the case for one of my files right now, as creativecommons.org seems to be temporarily down), it results in a long wait untill the request times out – the file properties window doesn’t display untill the time out, and it freezes nautilus. Clearly, it would be nicer if the retrieving of license metadata could be done in the background (this would improve the response on people with slower internet connections, or who are querying slow sites). While the software it attempted to retrieve the verify url, it could work out what license the file claims to be licensed under from the embedded license URL, and show the information about that license but clearly indicate that it is unverified at this point. Currently, if the request for the verify url times out then eventually the file properties window comes up but with no Creative Commons tab, it’s as if there is no CC information embedded in the file. Some sort of caching mechanism could be useful, so that a file could be marked as previously verified, even the verification url isn’t currently accessible. This could also reduce the load on the server hosting the verification data.

    I’m not sure if this is possible just using nautilus plugins, but I think it would be a good step towards better CC desktop integration. It would be great if when you hover your mouse over a CC-licensed file, it shows something like “by-nc-nd” to give a quick indication of the license the file claims to be under (maybe the format in which the license name is displayed could be configurable, some people might preter to see the longer “Attribution-NonCommercial-NoDerivs”). This information could also be displayed when a directory is displayed in a list view. I’m a KDE user, and konqueror displays a lot of metadata when I hover over a file, though nautilus currently shows me none – I’m assuming that it can do, and I just don’t have it properly configured. Another possible feature is to have some graphical indication that a file is CC-licensed displayed in the corner of the file icon. A small CC symbol would probably do the trick. This could be a different colour depending on whether the CC cache says the file has been verified, the verification has failed, or whether the file is as yet unverified (green, red and amber seem like natural colours to use). It would probably be best if verification urls weren’t queried as soon as a directory containing unverified files was opened – a user could select files and right click to select a manual verification, or right click on a folder to verify all files within. The results of this verification can then be cached (the files could be reverified periodically, or if a reverification is manually forced by the user). Even on an unverified file where the RDF license data hasn’t been downloaded, a mouse-over should tell me that the file claims to be by-nd-2.0 or whatever else it might claim to be.

    With this idea, I’m really not sure if it’s possible to implement easily without modifying core nautilus code. A user could open up a dialog at the side of a directory, and then use it to select certain license parameters so as to display files from the current directory (or in subdirectories of the current directory) that meet these requirements. This dialog could have two formats – one where the user simply ticks features such as “Share Alike” or free for commercial use, and the files are shown. A more “wizard” like interface could also be used, that asks questions such as “Are you creating a derivative work” (ok, maybe the word derivative could be changed to something more easily understandable, or you could mouseover or a simple definition) and “Do you want to release your work commercially” – essentially, this tool would help people who are looking on their computer for saved CC-licensed works they could integrate into something they’re working on. I know there’s the Creative Commons Nutch-based search engine, but people might handpick CC-licensed works they really like, and then want to easily sort through them.

    An obvious way that the tool can be improved is to add support for other file formats, but I know that standards for this haven’t really been developed yet. Being able to tag images would be extremely useful, especially given that online tools such as flickr have made it so easy to share and distribute CC-licensed pictures (the Flickr CC page shows around 100,000 CC-licensed images). Has EXIF been investigated for JPEG images? Maybe Flickr would be willing to allow CC images to be verified through their site. While I’m mentioning Flickr, integrating Flickr upload of CC-licensed images is also a possible idea, but flickr integration could be well handled by other already available tools, I don’t know. Projects such as jpegrdf have looked at embedding RDF into JPEG images, using the comment section (maybe this is a little hackish, but I suppose there’s no better way). I would imagine it could be significantly easier to embed such data into more modern formats such as SVG.

  7. Ken
    Posted Wednesday, November 17, 2004 at 12:22 am | Permalink

    Polish up Gnomoradio (kind of like iTunes Music Store, but for CC-licensed music) and add it to Rhythmbox (kind of like iTunes).

    Right now, I’m somewhat jealous of my iTunes friends because they have the iTunes Music Store. If Rhythmbox had a free music store, they’d be jealous of me. :-)

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*
Creative Commons Attribution-ShareAlike 3.0 United States
Creative Commons Attribution-ShareAlike 3.0 United States