[epiphany-extensions/peas] all: port to libpeas



commit 17af8d030a9e9c678db22f36be4f45631b006c7c
Author: Diego Escalante Urrelo <descalante igalia com>
Date:   Sun Apr 3 09:51:46 2011 -0500

    all: port to libpeas
    
    Update a lot of things to work with peas enabled Epiphany:
    - remove the now uneeded extensions-manager-ui
    - update m4 and other Makefile macros
    - rename .ephy-extension files to .plugin
    - rebase on Peas something
    - fix some trivial old API usage while updating
    
    Notice that non default extensions were ignored.

 configure.ac                                       |    9 +-
 extensions/actions/Makefile.am                     |   13 +-
 extensions/actions/actions.ephy-extension.in.in    |   11 -
 extensions/actions/actions.plugin.in.in            |    7 +
 extensions/actions/ephy-actions-extension.c        |   12 +
 extensions/actions/ephy-actions-extension.h        |    6 +-
 extensions/actions/extension.c                     |   40 --
 extensions/adblock/Makefile.am                     |   13 +-
 extensions/adblock/adblock.ephy-extension.in.in    |   11 -
 extensions/adblock/adblock.plugin.in.in            |    7 +
 extensions/adblock/ephy-adblock-extension.c        |   13 +
 extensions/adblock/ephy-adblock-extension.h        |    2 +
 extensions/adblock/extension.c                     |   49 --
 extensions/auto-reload/Makefile.am                 |   13 +-
 .../auto-reload/auto-reload.ephy-extension.in.in   |   10 -
 extensions/auto-reload/auto-reload.plugin.in.in    |    7 +
 .../auto-reload/ephy-auto-reload-extension.c       |   21 +-
 .../auto-reload/ephy-auto-reload-extension.h       |    4 +-
 extensions/auto-reload/extension.c                 |   44 --
 extensions/auto-scroller/Makefile.am               |   13 +-
 .../auto-scroller.ephy-extension.in.in             |   11 -
 .../auto-scroller/auto-scroller.plugin.in.in       |    7 +
 .../auto-scroller/ephy-auto-scroller-extension.c   |   13 +-
 .../auto-scroller/ephy-auto-scroller-extension.h   |    4 +-
 extensions/auto-scroller/extension.c               |   47 --
 extensions/certificates/Makefile.am                |   13 +-
 .../certificates/certificates.ephy-extension.in.in |   11 -
 extensions/certificates/certificates.plugin.in.in  |    7 +
 .../certificates/ephy-certificates-extension.c     |   12 +-
 .../certificates/ephy-certificates-extension.h     |    4 +-
 extensions/certificates/extension.c                |   44 --
 extensions/extensions-manager-ui/Makefile.am       |   44 --
 .../ephy-extensions-manager-ui-extension.c         |  283 ------------
 .../ephy-extensions-manager-ui-extension.h         |   58 ---
 extensions/extensions-manager-ui/extension.c       |   46 --
 .../extensions-manager-ui/extensions-manager-ui.c  |  482 --------------------
 .../extensions-manager-ui.ephy-extension.in.in     |   11 -
 .../extensions-manager-ui/extensions-manager-ui.h  |   62 ---
 .../extensions-manager-ui/extensions-manager-ui.ui |  114 -----
 extensions/gestures/Makefile.am                    |   11 +-
 extensions/gestures/ephy-gesture.c                 |    2 +-
 extensions/gestures/ephy-gestures-extension.c      |   14 +-
 extensions/gestures/ephy-gestures-extension.h      |    9 +-
 extensions/gestures/gestures.c                     |   45 --
 extensions/gestures/gestures.ephy-extension.in.in  |   11 -
 extensions/gestures/gestures.plugin.in.in          |    7 +
 extensions/greasemonkey/Makefile.am                |   13 +-
 .../greasemonkey/ephy-greasemonkey-extension.c     |   13 +
 .../greasemonkey/ephy-greasemonkey-extension.h     |    8 +-
 extensions/greasemonkey/extension.c                |   46 --
 .../greasemonkey/greasemonkey.ephy-extension.in.in |   11 -
 extensions/greasemonkey/greasemonkey.plugin.in.in  |    7 +
 extensions/html5tube/Makefile.am                   |   13 +-
 extensions/html5tube/ephy-html5tube-extension.c    |   12 +-
 extensions/html5tube/ephy-html5tube-extension.h    |    8 +-
 extensions/html5tube/html5tube.c                   |   41 --
 .../html5tube/html5tube.ephy-extension.in.in       |   11 -
 extensions/html5tube/html5tube.plugin.in.in        |    7 +
 extensions/push-scroller/Makefile.am               |   13 +-
 .../push-scroller/ephy-push-scroller-extension.c   |   13 +-
 .../push-scroller/ephy-push-scroller-extension.h   |    7 +-
 extensions/push-scroller/extension.c               |   47 --
 .../push-scroller.ephy-extension.in.in             |   10 -
 .../push-scroller/push-scroller.plugin.in.in       |    7 +
 extensions/soup-fly/Makefile.am                    |   13 +-
 extensions/soup-fly/ephy-soup-fly-extension.c      |   12 +
 extensions/soup-fly/ephy-soup-fly-extension.h      |    9 +-
 extensions/soup-fly/extension.c                    |   46 --
 extensions/soup-fly/soup-fly.ephy-extension.in.in  |   11 -
 extensions/soup-fly/soup-fly.plugin.in.in          |    7 +
 extensions/tab-key-tab-navigate/Makefile.am        |   13 +-
 .../ephy-tab-key-tab-navigate-extension.c          |   13 +-
 .../ephy-tab-key-tab-navigate-extension.h          |    8 +-
 extensions/tab-key-tab-navigate/extension.c        |   44 --
 ...ion.in.in => tab-key-tab-navigate.plugin.in.in} |   12 +-
 extensions/tab-states/Makefile.am                  |   13 +-
 extensions/tab-states/ephy-tab-states-extension.c  |   23 +-
 extensions/tab-states/ephy-tab-states-extension.h  |    9 +-
 extensions/tab-states/extension.c                  |   44 --
 .../tab-states/tab-states.ephy-extension.in.in     |   11 -
 extensions/tab-states/tab-states.plugin.in.in      |    7 +
 m4/epiphany.m4                                     |    2 +-
 po/POTFILES.in                                     |   24 +-
 83 files changed, 373 insertions(+), 1912 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 4495870..bb7c26a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -169,9 +169,9 @@ AM_CONDITIONAL([HAVE_OPENSP],[test "x$enable_opensp" = "xyes"])
 
 AC_MSG_CHECKING([which extensions to build])
 
-ALL_EXTENSIONS="actions adblock auto-reload auto-scroller certificates error-viewer extensions-manager-ui gestures greasemonkey html5tube java-console livehttpheaders page-info permissions push-scroller rss sample select-stylesheet smart-bookmarks soup-fly tab-key-tab-navigate tab-states"
-USEFUL_EXTENSIONS="actions adblock auto-reload auto-scroller certificates extensions-manager-ui html5tube java-console page-info push-scroller select-stylesheet smart-bookmarks soup-fly tab-key-tab-navigate tab-states"
-DEFAULT_EXTENSIONS="actions adblock auto-reload certificates extensions-manager-ui greasemonkey gestures html5tube push-scroller soup-fly tab-key-tab-navigate tab-states rss"
+ALL_EXTENSIONS="actions adblock auto-reload auto-scroller certificates error-viewer gestures greasemonkey html5tube java-console livehttpheaders page-info permissions push-scroller rss sample select-stylesheet smart-bookmarks soup-fly tab-key-tab-navigate tab-states"
+USEFUL_EXTENSIONS="actions adblock auto-reload auto-scroller certificates html5tube java-console page-info push-scroller select-stylesheet smart-bookmarks soup-fly tab-key-tab-navigate tab-states"
+DEFAULT_EXTENSIONS="actions adblock auto-reload certificates greasemonkey gestures html5tube push-scroller soup-fly tab-key-tab-navigate tab-states"
 
 MOZILLA_ALL_EXTENSIONS="error-viewer java-console livehttpheaders page-info select-stylesheet smart-bookmarks"
 
@@ -185,7 +185,7 @@ AC_ARG_WITH([extensions],
 [  --with-extensions=extension1,extension2,...
 			  build the specified extensions. Available:
 			  actions, adblock, auto-reload, auto-scroller,
-			  certificates, error-viewer, extensions-manager-ui,
+			  certificates, error-viewer,
 			  gestures, greasemonkey, java-console, livehttpheaders, page-info,
 			  permissions, push-scroller, rss, sample,
 			  select-stylesheet,
@@ -283,7 +283,6 @@ extensions/gestures/Makefile
 extensions/error-viewer/Makefile
 extensions/error-viewer/mozilla/Makefile
 extensions/error-viewer/opensp/Makefile
-extensions/extensions-manager-ui/Makefile
 extensions/greasemonkey/Makefile
 extensions/html5tube/Makefile
 extensions/livehttpheaders/Makefile
diff --git a/extensions/actions/Makefile.am b/extensions/actions/Makefile.am
index 2083d47..f408fdc 100644
--- a/extensions/actions/Makefile.am
+++ b/extensions/actions/Makefile.am
@@ -9,8 +9,7 @@ libactionsextension_la_SOURCES = \
 	ephy-actions-extension-util.c			\
 	ephy-actions-extension-util.h			\
 	ephy-actions-extension.c			\
-	ephy-actions-extension.h			\
-	extension.c
+	ephy-actions-extension.h
 
 libactionsextension_la_CPPFLAGS = \
 	-I$(top_srcdir)/include					\
@@ -24,7 +23,7 @@ libactionsextension_la_CFLAGS = \
 
 libactionsextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 ui_DATA = \
@@ -33,12 +32,12 @@ ui_DATA = \
 uidir = $(pkgdatadir)/ui
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = actions.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = actions.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/actions/actions.plugin.in.in b/extensions/actions/actions.plugin.in.in
new file mode 100644
index 0000000..77c3932
--- /dev/null
+++ b/extensions/actions/actions.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+_Name=Actions
+_Description=Execute arbitrary commands from the context menu
+Authors=Jean-Yves Lefort <jylefort brutele be>
+IAge=1
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/actions/ephy-actions-extension.c b/extensions/actions/ephy-actions-extension.c
index b3bf925..a14bf39 100644
--- a/extensions/actions/ephy-actions-extension.c
+++ b/extensions/actions/ephy-actions-extension.c
@@ -22,6 +22,7 @@
 #include <glib/gi18n-lib.h>
 #include <gtk/gtk.h>
 #include <epiphany/epiphany.h>
+#include <libpeas/peas.h>
 #include "ephy-file-helpers.h"
 #include "ephy-actions-extension.h"
 #include "ephy-actions-extension-editor-dialog.h"
@@ -823,3 +824,14 @@ ephy_actions_extension_detach_tab (EphyExtension *extension,
 		 G_CALLBACK (ephy_actions_extension_context_menu_cb), window);
 }
 
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_actions_extension_editor_dialog_register_type (G_TYPE_MODULE (module));
+	ephy_actions_extension_properties_dialog_register_type (G_TYPE_MODULE (module));
+	ephy_actions_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_ACTIONS_EXTENSION);
+}
diff --git a/extensions/actions/ephy-actions-extension.h b/extensions/actions/ephy-actions-extension.h
index 6d5595d..ff1ca5d 100644
--- a/extensions/actions/ephy-actions-extension.h
+++ b/extensions/actions/ephy-actions-extension.h
@@ -20,7 +20,7 @@
 #define _EPHY_ACTIONS_EXTENSION_H
 
 #include <glib-object.h>
-#include <epiphany/epiphany.h>
+#include <libpeas/peas.h>
 #include "ephy-actions-extension-properties-dialog.h"
 
 G_BEGIN_DECLS
@@ -79,6 +79,10 @@ EphyNodeDb *	ephy_actions_extension_get_db
 EphyNode *	ephy_actions_extension_get_actions
 			(EphyActionsExtension			*extension);
 
+G_MODULE_EXPORT void
+		peas_register_types
+			(PeasObjectModule			*module);
+
 G_END_DECLS
 
 #endif /* _EPHY_ACTIONS_EXTENSION_H */
diff --git a/extensions/adblock/Makefile.am b/extensions/adblock/Makefile.am
index 4c082c6..9ac9399 100644
--- a/extensions/adblock/Makefile.am
+++ b/extensions/adblock/Makefile.am
@@ -11,8 +11,7 @@ libadblockextension_la_SOURCES = \
 	ad-uri-tester.h			\
 	ad-uri-tester.c			\
 	adblock-ui.h			\
-	adblock-ui.c			\
-	extension.c
+	adblock-ui.c
 
 libadblockextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include				\
@@ -27,7 +26,7 @@ libadblockextension_la_CFLAGS = \
 
 libadblockextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 uidir = $(pkgdatadir)/ui
@@ -40,12 +39,12 @@ update-adblock-patterns: download-latest.pl
 	perl $< > $(patterns_DATA)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = adblock.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = adblock.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/adblock/adblock.plugin.in.in b/extensions/adblock/adblock.plugin.in.in
new file mode 100644
index 0000000..2acbf2f
--- /dev/null
+++ b/extensions/adblock/adblock.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+_Name=Ad Blocker
+_Description=Block the pest!
+Authors=Adam Hooper <adamh cvs gnome org>
+IAge=1
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/adblock/ephy-adblock-extension.c b/extensions/adblock/ephy-adblock-extension.c
index e8bb151..de07750 100644
--- a/extensions/adblock/ephy-adblock-extension.c
+++ b/extensions/adblock/ephy-adblock-extension.c
@@ -613,3 +613,16 @@ ephy_adblock_extension_class_init (EphyAdblockExtensionClass *klass)
 
 	g_type_class_add_private (object_class, sizeof (EphyAdblockExtensionPrivate));
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ad_blocker_register_type (G_TYPE_MODULE (module));
+	ad_uri_tester_register_type (G_TYPE_MODULE (module));
+	adblock_ui_register_type (G_TYPE_MODULE (module));
+	ephy_adblock_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_ADBLOCK_EXTENSION);
+}
diff --git a/extensions/adblock/ephy-adblock-extension.h b/extensions/adblock/ephy-adblock-extension.h
index ec64ece..06e1602 100644
--- a/extensions/adblock/ephy-adblock-extension.h
+++ b/extensions/adblock/ephy-adblock-extension.h
@@ -60,6 +60,8 @@ GType	ephy_adblock_extension_get_type		(void);
 
 GType	ephy_adblock_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void peas_register_types 	(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/auto-reload/Makefile.am b/extensions/auto-reload/Makefile.am
index 32da240..b7a98b4 100644
--- a/extensions/auto-reload/Makefile.am
+++ b/extensions/auto-reload/Makefile.am
@@ -3,12 +3,11 @@ extension_LTLIBRARIES = libautoreloadextension.la
 
 libautoreloadextension_la_SOURCES = \
 	ephy-auto-reload-extension.c	\
-	ephy-auto-reload-extension.h	\
-	extension.c
+	ephy-auto-reload-extension.h
 	
 libautoreloadextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 libautoreloadextension_la_CPPFLAGS = \
@@ -22,12 +21,12 @@ libautoreloadextension_la_CFLAGS = \
 	$(AM_CFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = auto-reload.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = auto-reload.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/auto-reload/auto-reload.plugin.in.in b/extensions/auto-reload/auto-reload.plugin.in.in
new file mode 100644
index 0000000..522114a
--- /dev/null
+++ b/extensions/auto-reload/auto-reload.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+_Name=Auto Reload Tab
+_Description=Reload a tab periodically
+Authors=RaphaÃl Slinckx <raphael slinckx net>;
+IAge=1
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/auto-reload/ephy-auto-reload-extension.c b/extensions/auto-reload/ephy-auto-reload-extension.c
index 3fef46a..15daabe 100644
--- a/extensions/auto-reload/ephy-auto-reload-extension.c
+++ b/extensions/auto-reload/ephy-auto-reload-extension.c
@@ -29,8 +29,6 @@
 
 #include <glib/gi18n-lib.h>
 
-#include <gmodule.h>
-
 #define EPHY_AUTO_RELOAD_EXTENSION_GET_PRIVATE(object)	(G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_AUTO_RELOAD_EXTENSION, EphyAutoReloadExtensionPrivate))
 
 /* This is the time to wait before the first reload, the maximal reload rate and the time increment after each unchanged reload */
@@ -96,13 +94,16 @@ ephy_auto_reload_remove_timeout (TimeoutData *data)
 static void
 ephy_auto_reload_create (EphyEmbed *embed, guint new_timeout)
 {
+	EphyWebView *view;
+
 	/* We have a new timeout,discard the old one */
 	g_object_set_data (G_OBJECT (embed), TIMEOUT_DATA_KEY, NULL);
 
 	/* Check the new_timeout sanity */
 	new_timeout = (new_timeout < RELOAD_RATE) ? RELOAD_RATE : new_timeout;
 
-	LOG ("AutoReload reloading embed: %s in %d msecs", ephy_embed_get_title (embed), new_timeout);
+	view = EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (embed);
+	LOG ("AutoReload reloading embed: %s in %d msecs", ephy_web_view_get_title (view), new_timeout);
 
 	/* Create the new one */
 	TimeoutData *timeout = g_new (TimeoutData, 1);
@@ -124,10 +125,10 @@ ephy_auto_reload_timeout (EphyEmbed *embed)
 
 	g_return_val_if_fail (embed != NULL, FALSE);
 
-	LOG ("AutoReload tab: %s", ephy_embed_get_title (embed));
-
 	/* Reload the page */
 	view = EPHY_GET_WEBKIT_WEB_VIEW_FROM_EMBED (embed);
+	LOG ("AutoReload tab: %s", ephy_web_view_get_title (view));
+
 	webkit_web_view_reload_bypass_cache (view);
 
 	/* Retreive the old timeout value (if we want to do something relative to it
@@ -316,3 +317,13 @@ ephy_auto_reload_extension_register_type (GTypeModule *module)
 
 	return type;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_auto_reload_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_AUTO_RELOAD_EXTENSION);
+}
diff --git a/extensions/auto-reload/ephy-auto-reload-extension.h b/extensions/auto-reload/ephy-auto-reload-extension.h
index 7380095..968dc59 100644
--- a/extensions/auto-reload/ephy-auto-reload-extension.h
+++ b/extensions/auto-reload/ephy-auto-reload-extension.h
@@ -22,7 +22,7 @@
 #define EPHY_AUTO_RELOAD_EXTENSION_H
 
 #include <glib.h>
-#include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -50,6 +50,8 @@ GType	ephy_auto_reload_extension_get_type			(void);
 
 GType	ephy_auto_reload_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void peas_register_types		(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/auto-scroller/Makefile.am b/extensions/auto-scroller/Makefile.am
index 8f9d31b..0e6d034 100644
--- a/extensions/auto-scroller/Makefile.am
+++ b/extensions/auto-scroller/Makefile.am
@@ -6,8 +6,7 @@ libautoscrollerextension_la_SOURCES = \
 	ephy-auto-scroller-extension.h	\
 	ephy-auto-scroller.c		\
 	ephy-auto-scroller.h		\
-	autoscroll.xpm.h		\
-	extension.c
+	autoscroll.xpm.h
 
 libautoscrollerextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include					\
@@ -24,16 +23,16 @@ libautoscrollerextension_la_LIBADD =
 
 libautoscrollerextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = auto-scroller.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = auto-scroller.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/auto-scroller/auto-scroller.plugin.in.in b/extensions/auto-scroller/auto-scroller.plugin.in.in
new file mode 100644
index 0000000..606e2e2
--- /dev/null
+++ b/extensions/auto-scroller/auto-scroller.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+_Name=Auto Scroll
+_Description=Scroll on middle mouse click
+Authors=Crispin Flowerday <gnome flowerday cx>
+IAge=1
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/auto-scroller/ephy-auto-scroller-extension.c b/extensions/auto-scroller/ephy-auto-scroller-extension.c
index 3fffb70..9692d5d 100644
--- a/extensions/auto-scroller/ephy-auto-scroller-extension.c
+++ b/extensions/auto-scroller/ephy-auto-scroller-extension.c
@@ -27,7 +27,7 @@
 
 #include <epiphany/epiphany.h>
 
-#include <gmodule.h>
+#include <libpeas/peas.h>
 
 #define WINDOW_DATA_KEY	"EphyAutoScrollerExtension::WindowData"
 
@@ -174,3 +174,14 @@ ephy_auto_scroller_extension_register_type (GTypeModule *module)
 
 	return type;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_auto_scroller_register_type (G_TYPE_MODULE (module));
+	ephy_auto_scroller_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_AUTO_SCROLLER_EXTENSION);
+}
diff --git a/extensions/auto-scroller/ephy-auto-scroller-extension.h b/extensions/auto-scroller/ephy-auto-scroller-extension.h
index 65b8479..139c66c 100644
--- a/extensions/auto-scroller/ephy-auto-scroller-extension.h
+++ b/extensions/auto-scroller/ephy-auto-scroller-extension.h
@@ -23,7 +23,7 @@
 #define EPHY_AUTO_SCROLLER_EXTENSION_H
 
 #include <glib.h>
-#include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -51,6 +51,8 @@ GType	ephy_auto_scroller_extension_get_type		(void);
 
 GType	ephy_auto_scroller_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void peas_register_types		(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/certificates/Makefile.am b/extensions/certificates/Makefile.am
index eb80b73..25c644b 100644
--- a/extensions/certificates/Makefile.am
+++ b/extensions/certificates/Makefile.am
@@ -5,8 +5,7 @@ extension_LTLIBRARIES = libcertificatesextension.la
 
 libcertificatesextension_la_SOURCES = \
 	ephy-certificates-extension.c	\
-	ephy-certificates-extension.h	\
-	extension.c
+	ephy-certificates-extension.h
 
 libcertificatesextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include				\
@@ -20,16 +19,16 @@ libcertificatesextension_la_CFLAGS = \
 
 libcertificatesextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = certificates.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = certificates.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/certificates/certificates.plugin.in.in b/extensions/certificates/certificates.plugin.in.in
new file mode 100644
index 0000000..42c9bdb
--- /dev/null
+++ b/extensions/certificates/certificates.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+_Name=Certificates
+_Description=View the page certificate and manage the certificates
+Authors=Christian Persch <chpe gnome org>
+IAge=1
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/certificates/ephy-certificates-extension.c b/extensions/certificates/ephy-certificates-extension.c
index 0d4a71d..7161bc5 100644
--- a/extensions/certificates/ephy-certificates-extension.c
+++ b/extensions/certificates/ephy-certificates-extension.c
@@ -28,7 +28,7 @@
 #include <epiphany/epiphany.h>
 
 #include <gtk/gtk.h>
-#include <gmodule.h>
+#include <libpeas/peas.h>
 #include <glib/gi18n-lib.h>
 
 #define EPHY_CERTIFICATES_EXTENSION_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_CERTIFICATES_EXTENSION, EphyCertificatesExtensionPrivate))
@@ -302,3 +302,13 @@ ephy_certificates_extension_class_init (EphyCertificatesExtensionClass *klass)
 
 	g_type_class_add_private (object_class, sizeof (EphyCertificatesExtensionPrivate));
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_certificates_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_CERTIFICATES_EXTENSION);
+}
diff --git a/extensions/certificates/ephy-certificates-extension.h b/extensions/certificates/ephy-certificates-extension.h
index cf88d2e..82056cd 100644
--- a/extensions/certificates/ephy-certificates-extension.h
+++ b/extensions/certificates/ephy-certificates-extension.h
@@ -23,7 +23,7 @@
 #define EPHY_CERTIFICATES_EXTENSION_H
 
 #include <glib.h>
-#include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -54,6 +54,8 @@ GType	ephy_certificates_extension_get_type		(void);
 
 GType	ephy_certificates_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void	peas_register_types	(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/gestures/Makefile.am b/extensions/gestures/Makefile.am
index 1e4b5b4..40d392e 100644
--- a/extensions/gestures/Makefile.am
+++ b/extensions/gestures/Makefile.am
@@ -6,7 +6,6 @@ libgesturesextension_la_SOURCES = 	\
 	ephy-gesture.h			\
 	ephy-gestures-extension.c	\
 	ephy-gestures-extension.h	\
-	gestures.c			\
 	stroke.c			\
 	stroke.h
 
@@ -22,19 +21,19 @@ libgesturesextension_la_CFLAGS = \
 
 libgesturesextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
  
 gesturesdir = $(pkgdatadir)
 gestures_DATA =	ephy-gestures.xml
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = gestures.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = gestures.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/gestures/ephy-gesture.c b/extensions/gestures/ephy-gesture.c
index c252598..5d4885b 100644
--- a/extensions/gestures/ephy-gesture.c
+++ b/extensions/gestures/ephy-gesture.c
@@ -452,7 +452,7 @@ ephy_gesture_activate (EphyGesture *gesture,
 		g_return_if_fail (EPHY_IS_EMBED (embed));
 
 		event = ephy_gesture_get_event (gesture);
-		g_return_if_fail (EPHY_IS_EMBED_EVENT (event));
+		g_return_if_fail (event != NULL);
 
 		g_signal_emit_by_name (embed, "button-press-event", event,
 				       &handled);
diff --git a/extensions/gestures/ephy-gestures-extension.c b/extensions/gestures/ephy-gestures-extension.c
index a435b0c..bd4c8c7 100644
--- a/extensions/gestures/ephy-gestures-extension.c
+++ b/extensions/gestures/ephy-gestures-extension.c
@@ -29,11 +29,12 @@
 
 #include <epiphany/epiphany.h>
 
-#include <gmodule.h>
 #include <libxml/tree.h>
 
 #include <string.h>
 
+#include <libpeas/peas.h>
+
 #define WINDOW_DATA_KEY	"EphyGesturesExtension::WindowData"
 
 #define EPHY_GESTURES_EXTENSION_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_GESTURES_EXTENSION, EphyGesturesExtensionPrivate))
@@ -364,3 +365,14 @@ ephy_gestures_extension_class_init (EphyGesturesExtensionClass *class)
 
 	g_type_class_add_private (object_class, sizeof (EphyGesturesExtensionPrivate));
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_gesture_register_type (G_TYPE_MODULE (module));
+	ephy_gestures_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_GESTURES_EXTENSION);
+}
diff --git a/extensions/gestures/ephy-gestures-extension.h b/extensions/gestures/ephy-gestures-extension.h
index c061973..154be30 100644
--- a/extensions/gestures/ephy-gestures-extension.h
+++ b/extensions/gestures/ephy-gestures-extension.h
@@ -23,8 +23,7 @@
 #define EPHY_GESTURES_EXTENSION_H
 
 #include <glib.h>
-#include <glib-object.h>
-#include <gmodule.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -41,12 +40,12 @@ typedef struct EphyGesturesExtensionPrivate	EphyGesturesExtensionPrivate;
 
 struct EphyGesturesExtensionClass
 {
-	GObjectClass parent_class;
+	PeasExtensionBaseClass parent_class;
 };
 
 struct EphyGesturesExtension
 {
-	GObject parent_instance;
+	PeasExtensionBase parent_instance;
 
 	EphyGesturesExtensionPrivate *priv;
 };
@@ -55,6 +54,8 @@ GType	ephy_gestures_extension_get_type	(void);
 
 GType	ephy_gestures_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void	peas_register_types	(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/gestures/gestures.plugin.in.in b/extensions/gestures/gestures.plugin.in.in
new file mode 100644
index 0000000..c4cfd30
--- /dev/null
+++ b/extensions/gestures/gestures.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+IAge=1
+_Name=Gestures
+_Description=Perform actions with mouse gestures
+Authors=Adam Hooper <adamh cvs gnome org>;Christian Persch <chpe gnome org>
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/greasemonkey/Makefile.am b/extensions/greasemonkey/Makefile.am
index 7bc2462..f19d0fa 100644
--- a/extensions/greasemonkey/Makefile.am
+++ b/extensions/greasemonkey/Makefile.am
@@ -5,8 +5,7 @@ libgreasemonkeyextension_la_SOURCES = \
 	ephy-greasemonkey-extension.c	\
 	ephy-greasemonkey-extension.h	\
 	greasemonkey-script.c		\
-	greasemonkey-script.h		\
-	extension.c
+	greasemonkey-script.h
 
 libgreasemonkeyextension_la_CPPFLAGS = \
 	-I$(top_srcdir)/include					\
@@ -26,16 +25,16 @@ libgreasemonkeyextension_la_LIBADD = \
 
 libgreasemonkeyextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = greasemonkey.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = greasemonkey.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/greasemonkey/ephy-greasemonkey-extension.c b/extensions/greasemonkey/ephy-greasemonkey-extension.c
index 59784c9..266c02c 100644
--- a/extensions/greasemonkey/ephy-greasemonkey-extension.c
+++ b/extensions/greasemonkey/ephy-greasemonkey-extension.c
@@ -40,6 +40,8 @@
 #include <dirent.h>
 #include <errno.h>
 
+#include <libpeas/peas.h>
+
 #define EPHY_GREASEMONKEY_EXTENSION_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_GREASEMONKEY_EXTENSION, EphyGreasemonkeyExtensionPrivate))
 
 #define WINDOW_DATA_KEY "EphyGreasemonkeyExtensionWindowData"
@@ -676,3 +678,14 @@ ephy_greasemonkey_extension_register_type (GTypeModule *module)
 
 	return type;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	greasemonkey_script_register_type (G_TYPE_MODULE (module));
+	ephy_greasemonkey_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_GREASEMONKEY_EXTENSION);
+}
diff --git a/extensions/greasemonkey/ephy-greasemonkey-extension.h b/extensions/greasemonkey/ephy-greasemonkey-extension.h
index 985ec20..ac1ed9e 100644
--- a/extensions/greasemonkey/ephy-greasemonkey-extension.h
+++ b/extensions/greasemonkey/ephy-greasemonkey-extension.h
@@ -24,6 +24,7 @@
 
 #include <glib.h>
 #include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -40,21 +41,22 @@ typedef struct _EphyGreasemonkeyExtensionPrivate	EphyGreasemonkeyExtensionPrivat
 
 struct _EphyGreasemonkeyExtensionClass
 {
-	GObjectClass parent_class;
+	PeasExtensionBaseClass parent_class;
 };
 
 struct _EphyGreasemonkeyExtension
 {
-	GObject parent_instance;
+	PeasExtensionBase parent_instance;
 
 	/*< private >*/
 	EphyGreasemonkeyExtensionPrivate *priv;
 };
 
 GType	ephy_greasemonkey_extension_get_type		(void);
-
 GType	ephy_greasemonkey_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void	peas_register_types		(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/greasemonkey/greasemonkey.plugin.in.in b/extensions/greasemonkey/greasemonkey.plugin.in.in
new file mode 100644
index 0000000..b141503
--- /dev/null
+++ b/extensions/greasemonkey/greasemonkey.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+IAge=1
+_Name=Greasemonkey
+_Description=Run user scripts to modify web pages' behavior
+Authors=Adam Hooper <adamh densi com>
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/html5tube/Makefile.am b/extensions/html5tube/Makefile.am
index 3a26925..e4d7a98 100644
--- a/extensions/html5tube/Makefile.am
+++ b/extensions/html5tube/Makefile.am
@@ -3,8 +3,7 @@ extension_LTLIBRARIES = libhtml5tubeextension.la
 
 libhtml5tubeextension_la_SOURCES = \
 	ephy-html5tube-extension.c	\
-	ephy-html5tube-extension.h	\
-	html5tube.c
+	ephy-html5tube-extension.h
 
 libhtml5tubeextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include				\
@@ -18,16 +17,16 @@ libhtml5tubeextension_la_CFLAGS = \
 
 libhtml5tubeextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = html5tube.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = html5tube.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/html5tube/ephy-html5tube-extension.c b/extensions/html5tube/ephy-html5tube-extension.c
index 7e12f23..27c1c21 100644
--- a/extensions/html5tube/ephy-html5tube-extension.c
+++ b/extensions/html5tube/ephy-html5tube-extension.c
@@ -24,7 +24,7 @@
 #include <epiphany/epiphany.h>
 #include <JavaScriptCore/JavaScript.h>
 
-#include <gmodule.h>
+#include <libpeas/peas.h>
 
 static GObjectClass *parent_class = NULL;
 
@@ -457,3 +457,13 @@ ephy_html5tube_extension_register_type (GTypeModule *module)
 
   return type;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_html5tube_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_HTML5TUBE_EXTENSION);
+}
diff --git a/extensions/html5tube/ephy-html5tube-extension.h b/extensions/html5tube/ephy-html5tube-extension.h
index 464dc15..9d0acd9 100644
--- a/extensions/html5tube/ephy-html5tube-extension.h
+++ b/extensions/html5tube/ephy-html5tube-extension.h
@@ -21,6 +21,7 @@
 
 #include <glib.h>
 #include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -37,20 +38,21 @@ typedef struct _EphyHTML5TubeExtensionPrivate	EphyHTML5TubeExtensionPrivate;
 
 struct _EphyHTML5TubeExtensionClass
 {
-    GObjectClass parent_class;
+    PeasExtensionBaseClass parent_class;
 };
 
 struct _EphyHTML5TubeExtension
 {
-    GObject parent_instance;
+    PeasExtensionBase parent_instance;
 
     /*< private >*/
     EphyHTML5TubeExtensionPrivate *priv;
 };
 
 GType	ephy_html5tube_extension_get_type		(void);
+GType	ephy_html5tube_extension_register_type		(GTypeModule *module);
 
-GType	ephy_html5tube_extension_register_type	(GTypeModule *module);
+G_MODULE_EXPORT void	peas_register_types	(PeasObjectModule *module);
 
 G_END_DECLS
 
diff --git a/extensions/html5tube/html5tube.plugin.in.in b/extensions/html5tube/html5tube.plugin.in.in
new file mode 100644
index 0000000..a3a05b7
--- /dev/null
+++ b/extensions/html5tube/html5tube.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+IAge=1
+_Name=HTML5Tube
+_Description=View Youtube videos using WebKit's HTML5 media player
+Authors=Gustavo Noronha Silva <gns gnome org>
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/push-scroller/Makefile.am b/extensions/push-scroller/Makefile.am
index ac57126..fd86d25 100644
--- a/extensions/push-scroller/Makefile.am
+++ b/extensions/push-scroller/Makefile.am
@@ -5,8 +5,7 @@ libpushscrollerextension_la_SOURCES = \
 	ephy-push-scroller-extension.c	\
 	ephy-push-scroller-extension.h	\
 	ephy-push-scroller.c		\
-	ephy-push-scroller.h		\
-	extension.c
+	ephy-push-scroller.h
 
 libpushscrollerextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include					\
@@ -23,16 +22,16 @@ libpushscrollerextension_la_LIBADD =
 
 libpushscrollerextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = push-scroller.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = push-scroller.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/push-scroller/ephy-push-scroller-extension.c b/extensions/push-scroller/ephy-push-scroller-extension.c
index 5e5a010..ad28b9c 100644
--- a/extensions/push-scroller/ephy-push-scroller-extension.c
+++ b/extensions/push-scroller/ephy-push-scroller-extension.c
@@ -27,7 +27,7 @@
 
 #include <epiphany/epiphany.h>
 
-#include <gmodule.h>
+#include <libpeas/peas.h>
 
 #define WINDOW_DATA_KEY	"EphyPushScrollerExtension::WindowData"
 
@@ -170,3 +170,14 @@ ephy_push_scroller_extension_register_type (GTypeModule *module)
 
 	return type;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_push_scroller_register_type (G_TYPE_MODULE (module));
+	ephy_push_scroller_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_PUSH_SCROLLER_EXTENSION);
+}
diff --git a/extensions/push-scroller/ephy-push-scroller-extension.h b/extensions/push-scroller/ephy-push-scroller-extension.h
index 468609f..6619e73 100644
--- a/extensions/push-scroller/ephy-push-scroller-extension.h
+++ b/extensions/push-scroller/ephy-push-scroller-extension.h
@@ -24,6 +24,7 @@
 
 #include <glib.h>
 #include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -39,18 +40,20 @@ typedef struct _EphyPushScrollerExtensionClass	EphyPushScrollerExtensionClass;
 
 struct _EphyPushScrollerExtensionClass
 {
-	GObjectClass parent_class;
+	PeasExtensionBaseClass parent_class;
 };
 
 struct _EphyPushScrollerExtension
 {
-	GObject parent_instance;
+	PeasExtensionBase parent_instance;
 };
 
 GType	ephy_push_scroller_extension_get_type		(void);
 
 GType	ephy_push_scroller_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void   peas_register_types		(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/push-scroller/push-scroller.plugin.in.in b/extensions/push-scroller/push-scroller.plugin.in.in
new file mode 100644
index 0000000..eed02dc
--- /dev/null
+++ b/extensions/push-scroller/push-scroller.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+IAge=1
+_Name=Push Scroll
+_Description=Drag the page on middle mouse click
+Authors=Samuel Abels <spam2 debain org>
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/soup-fly/Makefile.am b/extensions/soup-fly/Makefile.am
index 82d62b6..4c48d92 100644
--- a/extensions/soup-fly/Makefile.am
+++ b/extensions/soup-fly/Makefile.am
@@ -5,8 +5,7 @@ libsoupflyextension_la_SOURCES = \
 	ephy-soup-fly-extension.c	\
 	ephy-soup-fly-extension.h	\
 	soup-fly.c \
-	soup-fly.h \
-	extension.c
+	soup-fly.h
 
 libsoupflyextension_la_CPPFLAGS = \
 	-I$(top_srcdir)/include				\
@@ -20,16 +19,16 @@ libsoupflyextension_la_CFLAGS = \
 
 libsoupflyextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = soup-fly.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = soup-fly.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/soup-fly/ephy-soup-fly-extension.c b/extensions/soup-fly/ephy-soup-fly-extension.c
index 125824d..98b4683 100644
--- a/extensions/soup-fly/ephy-soup-fly-extension.c
+++ b/extensions/soup-fly/ephy-soup-fly-extension.c
@@ -29,6 +29,7 @@
 #include <gtk/gtk.h>
 #include <glib/gi18n-lib.h>
 #include <string.h>
+#include <libpeas/peas.h>
 
 #define WINDOW_DATA_KEY "EphySoupFlyExtWindowData"
 
@@ -242,3 +243,14 @@ ephy_soup_fly_extension_iface_init (EphyExtensionIface *iface)
   iface->attach_window = impl_attach_window;
   iface->detach_window = impl_detach_window;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	soup_fly_register_type (G_TYPE_MODULE (module));
+	ephy_soup_fly_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_SOUP_FLY_EXTENSION);
+}
diff --git a/extensions/soup-fly/ephy-soup-fly-extension.h b/extensions/soup-fly/ephy-soup-fly-extension.h
index 1880a7d..63a2f79 100644
--- a/extensions/soup-fly/ephy-soup-fly-extension.h
+++ b/extensions/soup-fly/ephy-soup-fly-extension.h
@@ -21,7 +21,8 @@
 #ifndef EPHY_SOUP_FLY_EXTENSION_H
 #define EPHY_SOUP_FLY_EXTENSION_H
 
-#include <glib-object.h>
+#include <glib.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -37,11 +38,11 @@ typedef struct _EphySoupFlyExtensionClass   EphySoupFlyExtensionClass;
 typedef struct _EphySoupFlyExtensionPrivate EphySoupFlyExtensionPrivate;
 
 struct _EphySoupFlyExtensionClass {
-  GObjectClass parent_class;
+  PeasExtensionBaseClass parent_class;
 };
 
 struct _EphySoupFlyExtension {
-  GObject parent_instance;
+  PeasExtensionBase parent_instance;
 
   /*< private >*/
   EphySoupFlyExtensionPrivate *priv;
@@ -50,6 +51,8 @@ struct _EphySoupFlyExtension {
 GType ephy_soup_fly_extension_get_type      (void);
 GType ephy_soup_fly_extension_register_type (GTypeModule *module);
 
+G_MODULE_EXPORT void	peas_register_types	(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/soup-fly/soup-fly.plugin.in.in b/extensions/soup-fly/soup-fly.plugin.in.in
new file mode 100644
index 0000000..f3f476c
--- /dev/null
+++ b/extensions/soup-fly/soup-fly.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+IAge=1
+_Name=Soup Fly
+_Description=A tool to debug the SoupSession WebKit uses.
+Authors=Xan LÃpez <xan gnome org>
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/tab-key-tab-navigate/Makefile.am b/extensions/tab-key-tab-navigate/Makefile.am
index 84b8d12..9cac876 100644
--- a/extensions/tab-key-tab-navigate/Makefile.am
+++ b/extensions/tab-key-tab-navigate/Makefile.am
@@ -3,8 +3,7 @@ extension_LTLIBRARIES = libtabkeytabnavigateextension.la
 
 libtabkeytabnavigateextension_la_SOURCES = \
 	ephy-tab-key-tab-navigate-extension.c	\
-	ephy-tab-key-tab-navigate-extension.h	\
-	extension.c
+	ephy-tab-key-tab-navigate-extension.h
 
 libtabkeytabnavigateextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include				\
@@ -18,16 +17,16 @@ libtabkeytabnavigateextension_la_CFLAGS = \
 
 libtabkeytabnavigateextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = tab-key-tab-navigate.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = tab-key-tab-navigate.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.c b/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.c
index ae6fdfb..06194e6 100644
--- a/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.c
+++ b/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.c
@@ -27,12 +27,14 @@
 #include <epiphany/epiphany.h>
 #include <gdk/gdkkeysyms.h>
 
-#include <gmodule.h>
+#include <libpeas/peas.h>
 
 static GObjectClass *parent_class = NULL;
 
 static GType type = 0;
 
+GType	ephy_tab_key_tab_navigate_extension_register_type	(GTypeModule *module);
+
 static void set_tab_offset (EphyWindow *window, gint offset)
 {
 	GtkWidget *notebook;
@@ -149,3 +151,12 @@ ephy_tab_key_tab_navigate_extension_register_type (GTypeModule *module)
 
 	return type;
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_tab_key_tab_navigate_extension_register_type (G_TYPE_MODULE (module));
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_TAB_KEY_TAB_NAVIGATE_EXTENSION);
+}
diff --git a/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.h b/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.h
index e905198..127afa6 100644
--- a/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.h
+++ b/extensions/tab-key-tab-navigate/ephy-tab-key-tab-navigate-extension.h
@@ -24,6 +24,7 @@
 
 #include <glib.h>
 #include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -39,18 +40,19 @@ typedef struct _EphyTabKeyTabNavigateExtensionClass	EphyTabKeyTabNavigateExtensi
 
 struct _EphyTabKeyTabNavigateExtensionClass
 {
-	GObjectClass parent_class;
+	PeasExtensionBaseClass parent_class;
 };
 
 struct _EphyTabKeyTabNavigateExtension
 {
-	GObject parent_instance;
+	PeasExtensionBase parent_instance;
 };
 
 GType	ephy_tab_key_tab_navigate_extension_get_type		(void);
-
 GType	ephy_tab_key_tab_navigate_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void   peas_register_types			(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif
diff --git a/extensions/tab-key-tab-navigate/tab-key-tab-navigate.ephy-extension.in.in b/extensions/tab-key-tab-navigate/tab-key-tab-navigate.plugin.in.in
similarity index 50%
rename from extensions/tab-key-tab-navigate/tab-key-tab-navigate.ephy-extension.in.in
rename to extensions/tab-key-tab-navigate/tab-key-tab-navigate.plugin.in.in
index c0e414d..2d04036 100644
--- a/extensions/tab-key-tab-navigate/tab-key-tab-navigate.ephy-extension.in.in
+++ b/extensions/tab-key-tab-navigate/tab-key-tab-navigate.plugin.in.in
@@ -1,11 +1,7 @@
-[Epiphany Extension]
+[Plugin]
+Module=%LIBRARY%
+IAge=1
 _Name=Tab Key Tab Navigate
 _Description=Use the Tab key to navigate between tabs
 Authors=LubomÃr SedlÃÅ <lubomir sedlar gmail com>, Stefan Stuhr
-Version=1
-URL=http://www.gnome.org/projects/epiphany/extensions.html
-
-
-[Loader]
-Type=shlib
-Library=%EXTENSION_DIR%/%LIBRARY%
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/extensions/tab-states/Makefile.am b/extensions/tab-states/Makefile.am
index 47b4f97..91c9a65 100644
--- a/extensions/tab-states/Makefile.am
+++ b/extensions/tab-states/Makefile.am
@@ -3,8 +3,7 @@ extension_LTLIBRARIES = libtabstatesextension.la
 
 libtabstatesextension_la_SOURCES = \
 	ephy-tab-states-extension.c	\
-	ephy-tab-states-extension.h	\
-	extension.c
+	ephy-tab-states-extension.h
 
 libtabstatesextension_la_CPPFLAGS = \
         -I$(top_srcdir)/include				\
@@ -18,16 +17,16 @@ libtabstatesextension_la_CFLAGS = \
 
 libtabstatesextension_la_LDFLAGS = \
 	-module -avoid-version \
-	-export-symbols $(top_srcdir)/ephy-extension.symbols \
+	-no-undefined \
 	$(AM_LDFLAGS)
 
 extensioninidir = $(extensiondir)
-extensionini_in_files = tab-states.ephy-extension.in.in
-extensionini_DATA = $(extensionini_in_files:.ephy-extension.in.in=.ephy-extension)
+extensionini_in_files = tab-states.plugin.in.in
+extensionini_DATA = $(extensionini_in_files:.plugin.in.in=.plugin)
 
-%.ephy-extension.in: %.ephy-extension.in.in $(extension_LTLIBRARIES)
+%.plugin.in: %.plugin.in.in $(extension_LTLIBRARIES)
 	$(AM_V_GEN) \
-	sed -e "s|%LIBRARY%|`. ./$(extension_LTLIBRARIES) && echo $$dlname`|" \
+	sed -e "s|%LIBRARY%|`echo $(extension_LTLIBRARIES) | cut -d. -f1`|" \
 	    -e "s|%EXTENSION_DIR%|$(extensiondir)|" \
 	$< > $@
 
diff --git a/extensions/tab-states/ephy-tab-states-extension.c b/extensions/tab-states/ephy-tab-states-extension.c
index b624e0d..82dedf5 100644
--- a/extensions/tab-states/ephy-tab-states-extension.c
+++ b/extensions/tab-states/ephy-tab-states-extension.c
@@ -21,15 +21,14 @@
 
 #include "config.h"
 
-#include "ephy-tab-states-extension.h"
-
-#include <epiphany/epiphany.h>
-
 #include "ephy-debug.h"
+#include "ephy-tab-states-extension.h"
 
-#include <gmodule.h>
 #include <gtk/gtk.h>
 #include <glib/gi18n-lib.h>
+#include <libpeas/peas.h>
+
+#include <epiphany/epiphany.h>
 
 #define EPHY_TAB_STATES_EXTENSION_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_TAB_STATES_EXTENSION, EphyTabStatesExtensionPrivate))
 
@@ -180,7 +179,7 @@ sync_active_tab (EphyWindow *window,
 	{
 		/* mark the tab as read */
 		label = get_real_tab_label (window, embed);
-		gtk_widget_modify_font (label, NULL);
+		gtk_widget_override_font (label, NULL);
 #ifdef ENABLE_COLOURS
 		set_label_colour (label, NULL);
 #endif
@@ -223,7 +222,7 @@ sync_load_status (EphyWebView *view,
 	}
 
 	label = get_real_tab_label (window, embed);
-	gtk_widget_modify_font (label, font_desc);
+	gtk_widget_override_font (label, font_desc);
 #ifdef ENABLE_COLOURS
 	set_label_colour (label, colour);
 #endif
@@ -311,3 +310,13 @@ ephy_tab_states_extension_class_init (EphyTabStatesExtensionClass *klass)
 
 	g_type_class_add_private (object_class, sizeof (EphyTabStatesExtensionPrivate));
 }
+
+G_MODULE_EXPORT void
+peas_register_types (PeasObjectModule *module)
+{
+	ephy_tab_states_extension_register_type (G_TYPE_MODULE (module));
+
+	peas_object_module_register_extension_type (module,
+						    EPHY_TYPE_EXTENSION,
+						    EPHY_TYPE_TAB_STATES_EXTENSION);
+}
diff --git a/extensions/tab-states/ephy-tab-states-extension.h b/extensions/tab-states/ephy-tab-states-extension.h
index 4ff8f2b..d61015d 100644
--- a/extensions/tab-states/ephy-tab-states-extension.h
+++ b/extensions/tab-states/ephy-tab-states-extension.h
@@ -23,7 +23,7 @@
 #define EPHY_TAB_STATES_EXTENSION_H
 
 #include <glib.h>
-#include <glib-object.h>
+#include <libpeas/peas.h>
 
 G_BEGIN_DECLS
 
@@ -40,20 +40,21 @@ typedef struct _EphyTabStatesExtensionPrivate	EphyTabStatesExtensionPrivate;
 
 struct _EphyTabStatesExtensionClass
 {
-	GObjectClass parent_class;
+	PeasExtensionBaseClass parent_class;
 };
 
 struct _EphyTabStatesExtension
 {
-	GObject parent_instance;
+	PeasExtensionBase parent_instance;
 
 	EphyTabStatesExtensionPrivate *priv;
 };
 
 GType	ephy_tab_states_extension_get_type	(void);
-
 GType	ephy_tab_states_extension_register_type	(GTypeModule *module);
 
+G_MODULE_EXPORT void	peas_register_types	(PeasObjectModule *module);
+
 G_END_DECLS
 
 #endif /* EPHY_TAB_STATES_EXTENSION_H */
diff --git a/extensions/tab-states/tab-states.plugin.in.in b/extensions/tab-states/tab-states.plugin.in.in
new file mode 100644
index 0000000..1de6beb
--- /dev/null
+++ b/extensions/tab-states/tab-states.plugin.in.in
@@ -0,0 +1,7 @@
+[Plugin]
+Module=%LIBRARY%
+IAge=1
+_Name=Tab States
+_Description=Indicates new content in background tabs
+Authors=Christian Persch <chpe gnome org>
+Website=http://www.gnome.org/projects/epiphany/extensions.html
diff --git a/m4/epiphany.m4 b/m4/epiphany.m4
index 56def9a..4b82083 100644
--- a/m4/epiphany.m4
+++ b/m4/epiphany.m4
@@ -81,7 +81,7 @@ AC_MSG_RESULT([$result])
 
 dnl Add a rule that auto-translates the .ephy-extension files
 dnl (like the INTLTOOL_XML_RULE does for xml files)
-EPIPHANY_EXTENSION_RULE='%.ephy-extension: %.ephy-extension.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
+EPIPHANY_EXTENSION_RULE='%.plugin: %.plugin.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
 
 AC_SUBST(EPIPHANY_EXTENSION_RULE)
 
diff --git a/po/POTFILES.in b/po/POTFILES.in
index d494050..e0d552f 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -18,9 +18,6 @@ extensions/error-viewer/mozilla/ErrorViewerConsoleListener.cpp
 extensions/error-viewer/mozilla/ErrorViewerURICheckerObserver.cpp
 extensions/error-viewer/opensp/validate.cpp
 extensions/error-viewer/sgml-validator.c
-extensions/extensions-manager-ui/extensions-manager-ui.c
-[type: gettext/glade]extensions/extensions-manager-ui/extensions-manager-ui.ui
-extensions/extensions-manager-ui/ephy-extensions-manager-ui-extension.c
 extensions/greasemonkey/ephy-greasemonkey-extension.c
 extensions/java-console/ephy-java-console-extension.c
 extensions/livehttpheaders/ephy-livehttpheaders-extension.c
@@ -38,23 +35,22 @@ extensions/select-stylesheet/mozilla/mozilla-helpers.cpp
 extensions/smart-bookmarks/smart-bookmarks-extension.c
 extensions/soup-fly/ephy-soup-fly-extension.c
 extensions/soup-fly/soup-fly.c
-[type: gettext/ini]extensions/actions/actions.ephy-extension.in.in
-[type: gettext/ini]extensions/adblock/adblock.ephy-extension.in.in
-[type: gettext/ini]extensions/auto-scroller/auto-scroller.ephy-extension.in.in
-[type: gettext/ini]extensions/auto-reload/auto-reload.ephy-extension.in.in
-[type: gettext/ini]extensions/certificates/certificates.ephy-extension.in.in
+[type: gettext/ini]extensions/actions/actions.plugin.in.in
+[type: gettext/ini]extensions/adblock/adblock.plugin.in.in
+[type: gettext/ini]extensions/auto-reload/auto-reload.plugin.in.in
+[type: gettext/ini]extensions/auto-scroller/auto-scroller.plugin.in.in
+[type: gettext/ini]extensions/certificates/certificates.plugin.in.in
 [type: gettext/ini]extensions/error-viewer/error-viewer.ephy-extension.in.in
-[type: gettext/ini]extensions/extensions-manager-ui/extensions-manager-ui.ephy-extension.in.in
-[type: gettext/ini]extensions/gestures/gestures.ephy-extension.in.in
-[type: gettext/ini]extensions/greasemonkey/greasemonkey.ephy-extension.in.in
+[type: gettext/ini]extensions/gestures/gestures.plugin.in.in
+[type: gettext/ini]extensions/greasemonkey/greasemonkey.plugin.in.in
 [type: gettext/ini]extensions/java-console/java-console.ephy-extension.in.in
 [type: gettext/ini]extensions/livehttpheaders/livehttpheaders.ephy-extension.in.in
 [type: gettext/ini]extensions/page-info/page-info.ephy-extension.in.in
 [type: gettext/ini]extensions/permissions/permissions.ephy-extension.in.in
-[type: gettext/ini]extensions/push-scroller/push-scroller.ephy-extension.in.in
+[type: gettext/ini]extensions/push-scroller/push-scroller.plugin.in.in
 [type: gettext/ini]extensions/rss/rss.ephy-extension.in.in
 [type: gettext/ini]extensions/sample/sample.ephy-extension.in.in
 [type: gettext/ini]extensions/select-stylesheet/select-stylesheet.ephy-extension.in.in
 [type: gettext/ini]extensions/smart-bookmarks/smart-bookmarks.ephy-extension.in.in
-[type: gettext/ini]extensions/tab-states/tab-states.ephy-extension.in.in
-[type: gettext/ini]extensions/tab-key-tab-navigate/tab-key-tab-navigate.ephy-extension.in.in
+[type: gettext/ini]extensions/tab-states/tab-states.plugin.in.in
+[type: gettext/ini]extensions/tab-key-tab-navigate/tab-key-tab-navigate.plugin.in.in



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]