Running Canola2 plug-ins on the desktop


A few days ago the Canola2 SDK was released allowing users to run Canola2 on their Linux desktops for plug-ins and themes development. In this post I’ll show how one can add plugins to the SDK.

What you need

When deploying plugins to Canola2 SDK one must observe three main steps:

  1. Install plug-in code
  2. Install plug-in theme extension (for some themes)
  3. Rebuild plug-in database

Note that some plug-ins require extra interface widgets, for those the 2nd step must be completed, for the others it will be skipped.

SDK directory structure

In Canola2 SDK plug-ins code is located at:


Note that the <plugin-name> folder may be zipped so you may also see plugins in the form:


The theme extensions for each plug-in however are in a different folder:


Example HOWTO – Installing Canola YouTube plug-in

Note that <SDK-base-dir> is the directory where you installed the Canola2 SDK, aka the directory you run Canola2 from.

1. Get Canola YouTube plug-in binaries from maemo repository:

$ mkdir /tmp/canola-youtube

$ cd /tmp/canola-youtube

$ wget

2. Extract contents (see notes if you don’t have dpkg-deb installed)

$ dpkg-deb -X canola2-youtube-plugin_0.1.1-maemo1_all.deb .

3. Copy plug-in code to the SDK dir

$ cp usr/share/canola/plugins/ <SDK-base-dir>/plugins/

4. Copy plug-in theme extension to SDK dir

$ cp usr/share/canola/themes/*.edj <SDK-base-dir>/THEMES

5. Rebuild plug-in database

$ cd <SDK-base-dir>

$ ./run-canola –shell

$ bin/cnl-rescan-collections

$ exit

6. Run Canola2 SDK and test the new plugin

./run-canola -n


– You can use “alien -t” and “tar xf” to extract the .deb contents if you don’t have dpkg-deb installed on your system.

– If you download the source code of a plug-in you will have to compile each theme extension using “edje_cc” that comes with your SDK installation. Just run “./run-canola –shell” to set-up the environment and you’ll have the compiler available. For more information regarding making your own plug-ins check the “Plug-ins development” section in the Canola2 SDK Development-README.

Additional Information

Checkout the #canola channel on the IRC servers.