/dtMediaWiki

Wikimedia Commons export plugin for darktable

Primary LanguageLuaGNU General Public License v3.0GPL-3.0

dtMediaWiki

Wikimedia Commons export plugin for darktable

See also: Commons:DtMediaWiki

Dependencies

Note that mediawikiapi.lua is independent of darktable.

Installation

  • Download the plugin from https://github.com/trougnouf/dtMediaWiki/archive/master.zip
  • Create the darktable plugin directory if it doesn't exist
    • # mkdir /usr/share/darktable/lua/contrib
  • Copy (or link) the dtMediaWiki directory over there
    • # cp -r /path/to/dtMediaWiki /usr/share/darktable/lua/contrib
  • Activate the plugin in your darktable luarc config file by adding require "contrib/dtMediaWiki/dtMediaWiki"
    • $ echo 'require "contrib/dtMediaWiki/dtMediaWiki"' >> ~/.config/darktable/luarc

… or simply use the Arch Linux package and activate the plugin.

Usage

  • Login to Wikimedia Commons by setting your "Wikimedia username" and "Wikimedia password" in darktable preferences > lua options then restarting darktable.
    • This will add the "Wikimedia Commons" entry into target storage.
  • Ensure your image contains the following metadata and tags:
    • title and/or description – The default output filename is title (filename) description.ext or title (filename).ext depending on what is available
    • rights – Use something compatible with the {{self}} template, some options are cc-by-sa-4.0, cc-by-4.0, GFDL, see Commons:Copyright tags
    • tags – Categories and templates. Any tag that matches Category:something will be added as [[Category:something]] (no need to include the brackets), likewise any template matching {{something}} will be added as-is.

The image coordinates will be added if they exist, and the creator metadata will be added as [[User:Wikimedia username|creator]] if it has been set.

Thanks

  • Iulia and Leslie for excellent coworking companionship and love
  • darktable developers for an excellent open-source imaging software with a well documented Lua API
  • LrMediaWiki developers robinkrahl and Hasenlaeufer for what inspired this and some base code
  • MediaWiki User:Platonides for helping me figure out the cookie issue
  • catwell: author of lua-multipart-post and a responsive fellow
  • simon04: second user and first contributor

:)

--Trougnouf