http://www.splitbrain.org/projects/file_icons

Released to the Public Domain
Free to use. Provided as is. No warranties.

Note: The big majority of icons where created by the creators listed
      below. Only a few ones where found on the net. They were too
      widespread to determine the original author and thus were
      considered public domain.
      If you are the author of one of those icons just send a short
      mail to either be included in the list below or have the icon
      removed from the package.

Creators:

  Andreas Gohr <andi@splitbrain.org>
  Michael Klier <chi@chimeric.de>
  Andreas Barton <andreas.barton@web.de>
  Hubert Chathi <hubert@uhoreg.ca>
  Johan Koehne <johankohne@gmail.com>
