Eye of GNOME Plugins

Available plugins

Plugins part of the eog-plugins repository:

  • Exif Display

    • Displays a few camera setting Exif tags in the sidebar and optionally the statusbar. A histogram can also be enabled.

    • Language: C

  • Map

    • Displays on a map in the side panel where the picture was taken. Pictures need to contain geolocation EXIF data.

    • Requires: libchamplain

    • Language: C

  • Picasa Web Uploader (aka postasa in the source code)

    • Supports uploading photos to Google Picasa Web

    • Requires: libgdata

    • Language: C+

  • Postr

    • Support uploading photos to Flickr

    • Requires: Postr

    • Language: C

  • Python Console

    • A python console for Eye of GNOME

    • Language: Python

  • Send by Mail

    • Sends an image attached to a new mail

    • Language: C

  • Slideshow Shuffle

    • Shuffles the photos in slideshow mode

    • Language: Python

  • Zoom to fit image width

    • Adjusts the zoom to have the image's width fit into the window

    • Language: C

Third party plugins

Plugins developed by third parties available on their web site:

Also, check mailing threads the eog-list archives - as some plugins that do not show up in search engine results, may be advertised there; for instance:

Ideas

  • Tags side pane (aka "F-Spot mode")
  • File browser side pane
  • Photo feeds side pane (support for adding, removing, and viewing photo feeds)
  • Flickr Uploader (aka Postr integration)
  • Conduit integration
  • Post Image in your Blog (integration with gnome-blog)
  • Location metadata in statusbar
  • Creative Commons Licence in statusbar
  • Color Picker
  • Quick crop/rotate
  • Red eye removal

Plugin location

  • In the Eye of GNOME 2 series, per-user plugins are stored in $HOME/.gnome2/eog/plugins/ and system-wide plugins in $prefix/lib/eog/plugins.
  • In Eye of GNOME up to 3.6, per-user plugins are stored in $HOME/.config/eog/plugins/ and system-wide plugins in $prefix/lib/eog/plugins
  • In Eye of GNOME 3.8, per-user plugins are stored in $XDG_DATA_HOME/eog/plugins and system-wide plugins in the eog/plugins sub-directory of any system data directory returned by g_get_system_data_dirs.

Above, $HOME is your home directory, $prefix is whatever is passed as --prefix to the configure script when building Eye of GNOME, and $XDG_DATA_HOME is typically $HOME/.local (or $HOME/.local/share if not defined) - see XDG Base Directory Specification.

(I hope the information above is correct; at least it's more up-to-date than the previous information. :) /skagedal)

Installing plugins: Quick run-through

(This might no longer be correct, depending on what version of Eye of Gnome you are using; see "Plugin location" above)

Here's how to find and install some plugins without being root. On Ubuntu you will need to first install the "eog-dev" package. Installing "postr" is also required for the the Flickr integration to work.

  • cd $HOME/.gnome2
  • ln -s . lib
  • git clone git://git.gnome.org/eog-plugins
  • cd eog-plugins
  • ./autogen.sh --prefix=$HOME/.gnome2/
  • make install

Now when you run eog, you can do:

  • Edit->Preferences

  • Click the Plugins tab
  • Check the box next to the plug-in you want to enable

and now, in the Tools menu, you'll have an "Upload to Flickr" entry provided by a plugin! Notice that if you have the collection window open, you can select multiple photos to send to Flickr at once.

Ubuntu Prerequisites

If you use ubuntu, you need to install these packages at first:

sudo apt-get install eog-dev python-gnome2-desktop-dev libexif-dev libexif-gtk-dev postr libclutter-0.8-dev libclutter-gtk-0.8-dev

Additionally, you need to download libchamplain-0.2 and libchamplain-gtk-0.2 from the libchamplain download page and then install them.

Writing plugins:

Python

Create a file called helloworld.plugin:

[Plugin]
Module=libhello
IAge=2
Loader=python
Name=Hellloooooooooo
Icon=postr
Description=Print a greeting to the console where eog is running
Authors=Asheesh Laroia <eog-oh-baby@asheesh.org>
Copyright=Copyright © 2007 Creative Commons
Website=about:mozilla

Now create a file called libhello.py:

   1 from gi.repository import GObject, Eog
   2 
   3 class HelloWorldPlugin(GObject.Object, Eog.WindowActivatable):
   4         # Override EogWindowActivatable's window property
   5         # This is the EogWindow this plugin instance has been activated for
   6         window = GObject.property(type=Eog.Window)
   7 
   8         def __init__(self):
   9                 GObject.Object.__init__(self)
  10 
  11         def do_activate(self):
  12                 print 'The answer landed on my rooftop, whoa'
  13 
  14         def do_deactivate(self):
  15                 print 'The answer fell off my rooftop, woot'

Now, move all of these to a place where Eye of GNOME finds plugins; see above under "Plugin location".

Apps/EyeOfGnome/Plugins (last edited 2018-06-15 17:35:17 by ThomasBechtold)