--- dee-0.4.2.orig/vapi/dee-1.0-custom.vala
+++ dee-0.4.2/vapi/dee-1.0-custom.vala
@@ -0,0 +1,11 @@
+
+namespace Dee
+{
+ [CCode (cheader_filename = "dee.h")]
+  public interface Model : GLib.Object
+    {
+      public virtual signal void row_added (ModelIter iter);
+      public virtual signal void row_removed (ModelIter iter);
+      public virtual signal void row_changed (ModelIter iter);
+    }
+}
--- dee-0.4.2.orig/debian/rules
+++ dee-0.4.2/debian/rules
@@ -0,0 +1,18 @@
+#!/usr/bin/make -f
+
+include /usr/share/cdbs/1/class/gnome.mk
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/rules/utils.mk
+
+LDFLAGS += -Wl,-z,defs -Wl,--as-needed
+
+DEB_CONFIGURE_EXTRA_FLAGS := --enable-introspection=no
+
+common-binary-post-install-arch::
+	find debian/tmp/usr/lib -name \*.la -exec rm {} \;
+	find debian/tmp/usr/lib -name \*.a -exec rm {} \;
+
+common-binary-fixup-arch::
+	dh_girepository -pgir1.0-dee-0.1
+
+common-binary-predeb-arch:: list-missing
--- dee-0.4.2.orig/debian/libdee-1.0-0.install
+++ dee-0.4.2/debian/libdee-1.0-0.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/lib*.so.*
--- dee-0.4.2.orig/debian/libdee-doc.install
+++ dee-0.4.2/debian/libdee-doc.install
@@ -0,0 +1 @@
+debian/tmp/usr/share/gtk-doc/
--- dee-0.4.2.orig/debian/libdee-dev.install
+++ dee-0.4.2/debian/libdee-dev.install
@@ -0,0 +1,5 @@
+debian/tmp/usr/include/*
+debian/tmp/usr/lib/lib*.so
+debian/tmp/usr/lib/pkgconfig/*
+debian/tmp/usr/share/vala/vapi/*
+#debian/tmp/usr/share/gir-1.0/*
--- dee-0.4.2.orig/debian/copyright
+++ dee-0.4.2/debian/copyright
@@ -0,0 +1,52 @@
+This work was packaged for Ubuntu by:
+
+    Didier Roche <didrocks@ubuntu.com> on Tue, 25 Jan 2010 17:05:16 +0100
+
+It was downloaded from https://launchpad.net/dee
+
+Upstream Authors:
+
+    Mikkel Kamstrup Erlandsen <mikkel.kamstrup@canonical.com>
+    Neil Jagdish Patel <neil.patel@canonical.com>
+
+Copyright:
+
+    Copyright (C) 2009-2010 Canonical Ltd.
+
+License:
+
+    * dee/*:
+    
+      This library is free software; you can redistribute it and/or
+      modify it under the terms of the GNU Lesser General Public
+      License Version 3.0 as published by the Free Software Foundation.
+
+      This library is distributed in the hope that it will be useful,
+      but WITHOUT ANY WARRANTY; without even the implied warranty of
+      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+      Lesser General Public License for more details.
+
+On Debian systems, the complete text of the GNU Lesser General Public License
+can be found in `/usr/share/common-licenses/LGPL-3'
+
+
+    * examples/*, tests/*:
+
+      This program is free software: you can redistribute it and/or modify
+      it under the terms of the GNU General Public License version 3 as 
+      published by the Free Software Foundation.
+ 
+      This program is distributed in the hope that it will be useful,
+      but WITHOUT ANY WARRANTY; without even the implied warranty of
+      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+      GNU General Public License for more details.
+ 
+On Debian systems, the complete text of the GNU General Public License
+can be found in `/usr/share/common-licenses/GPL-3'
+
+
+The Debian packaging is:
+
+    Copyright (C) 2010 Canonical Ltd.
+
+and is licensed under the GPL version 3, see `/usr/share/common-licenses/GPL-3'.
--- dee-0.4.2.orig/debian/gir1.0-dee-0.1.install
+++ dee-0.4.2/debian/gir1.0-dee-0.1.install
@@ -0,0 +1 @@
+debian/tmp/usr/lib/girepository-1.0/
--- dee-0.4.2.orig/debian/control
+++ dee-0.4.2/debian/control
@@ -0,0 +1,76 @@
+Source: dee
+Priority: optional
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+Build-Depends: debhelper (>= 5.0),
+               cdbs (>= 0.4.41),
+               libglib2.0-dev (>= 2.22.0),
+               libdbus-glib-1-dev (>= 0.80),
+               libdbus-1-dev (>= 1.0),
+               gobject-introspection (>= 0.6.5-3),
+               libgirepository1.0-dev,
+               gir1.0-glib-2.0,
+               gir1.0-dbus-1.0,
+               valac,
+Standards-Version: 3.8.4
+Section: libs
+Homepage: https://launchpad.net/dee
+
+Package: libdee-1.0-0
+Section: libs
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: model to synchronize mutiple instances over DBus - shared lib
+ libdee is a shared library that provides objects that help
+ having multiple instances communicating over DBus.
+ .
+ This package contains shared libraries to be used by applications.
+
+Package: libdee-dev
+Section: libdevel
+Architecture: any
+Depends: libdee-1.0-0 (= ${binary:Version}),
+         ${misc:Depends},
+         libglib2.0-dev (>= 2.22.0),
+         libdbus-glib-1-dev (>= 0.80)
+Suggests: libdee-doc
+Description: model to synchronize mutiple instances over DBus - dev files
+ libdee is a shared library that provides objects that help
+ having multiple instances communicating over DBus.
+ .
+ This package contains files that are needed to build applications.
+
+Package: libdee-1.0-0-dbg
+Section: debug
+Architecture: any
+Priority: extra
+Depends: libdee-1.0-0 (= ${binary:Version}),
+         ${misc:Depends}
+Description: model to synchronize mutiple instances over DBus
+ libdee is a shared library that provides objects that help
+ having multiple instances communicating over DBus.
+ .
+ This package contains the debug files.
+
+Package: libdee-doc
+Section: doc
+Architecture: all
+Depends: ${misc:Depends}
+Suggests: devhelp
+Description: model to synchronize mutiple instances over DBus - documentation
+ libdee is a shared library that provides objects that help
+ having multiple instances communicating over DBus.
+ .
+ This package contains the documentation
+
+#Package: gir1.0-dee-0.1
+#Section: libs
+#Architecture: any
+#Depends: ${gir:Depends},
+#         ${shlibs:Depends},
+#         ${misc:Depends}
+#Description: GObject introspection data for the Dee library
+# This package contains introspection data for the Dee library.
+# .
+# It can be used by packages using the GIRepository format to generate
+# dynamic bindings.
+
--- dee-0.4.2.orig/debian/watch
+++ dee-0.4.2/debian/watch
@@ -0,0 +1,2 @@
+version=3
+https://launchpad.net/dee/+download .*/dee-([0-9.]+)\.tar\.gz
--- dee-0.4.2.orig/debian/changelog
+++ dee-0.4.2/debian/changelog
@@ -0,0 +1,69 @@
+dee (0.4.2-0ubuntu1~unity2d1) lucid; urgency=low
+
+  * Backport from Maverick; required by unity-place-files
+
+ -- Alex Chiang <achiang@canonical.com>  Mon, 07 Feb 2011 23:22:36 -0700
+
+dee (0.4.2-0ubuntu1) maverick; urgency=low
+
+  * New upstream release.
+  * Update debian/libdee-1.0-0.symbols
+  * debian/control:
+    - remove gir-repository-dev from build-dep
+
+ -- Didier Roche <didrocks@ubuntu.com>  Fri, 13 Aug 2010 12:43:59 +0200
+
+dee (0.4.0-0ubuntu1) maverick; urgency=low
+
+  * New upstream release.
+  * Update debian/libdee-1.0-0.symbols
+
+ -- Didier Roche <didrocks@ubuntu.com>  Thu, 05 Aug 2010 19:11:03 +0200
+
+dee (0.3.0-0ubuntu1) maverick; urgency=low
+
+  * New upstream release.
+  * debian/libdee-1.0-0.symbols:
+    - update to API/ABI change
+
+ -- Didier Roche <didrocks@ubuntu.com>  Thu, 24 Jun 2010 20:36:05 +0200
+
+dee (0.2.8-0ubuntu1) maverick; urgency=low
+
+  * New upstream release.
+
+ -- Didier Roche <didrocks@ubuntu.com>  Thu, 17 Jun 2010 16:22:02 +0200
+
+dee (0.2.6-0ubuntu1) maverick; urgency=low
+
+  * New upstream release. (LP: #592111)
+  * debian/copyright:
+    - fix author*s*
+
+ -- Didier Roche <didrocks@ubuntu.com>  Thu, 10 Jun 2010 18:23:46 +0200
+
+dee (0.2.4-0ubuntu1) maverick; urgency=low
+
+  * debian/rules:
+    - fix rm *{,l}a files
+  * debian/watch:
+    - adjust url
+  * New upstream release.
+  * Update debian/libdee-1.0-0.symbols to new symbols
+  * Ship the vapi file and disable introspection package for now
+
+ -- Didier Roche <didrocks@ubuntu.com>  Mon, 07 Jun 2010 11:11:12 +0200
+
+dee (0.2.2-0ubuntu1) maverick; urgency=low
+
+  * New upstream release.
+
+ -- Didier Roche <didrocks@ubuntu.com>  Thu, 27 May 2010 19:12:26 +0200
+
+dee (0.2.0-0ubuntu1) maverick; urgency=low
+
+  * Initial packaging
+  * temporary disabling gir building due to bug:
+    https://bugzilla.gnome.org/show_bug.cgi?id=619703
+
+ -- Didier Roche <didrocks@ubuntu.com>  Thu, 27 May 2010 12:14:11 +0200
--- dee-0.4.2.orig/debian/libdee-1.0-0.symbols
+++ dee-0.4.2/debian/libdee-1.0-0.symbols
@@ -0,0 +1,108 @@
+libdee-1.0.so.0 libdee-1.0-0 #MINVER#
+ dee_analyzer_new_for_full_text_column@Base 0.4.0
+ dee_analyzer_new_for_int_column@Base 0.4.2
+ dee_analyzer_new_for_key_column@Base 0.4.0
+ dee_analyzer_new_for_uint_column@Base 0.4.2
+ dee_filter_model_append_iter@Base 0.2.0
+ dee_filter_model_contains@Base 0.2.0
+ dee_filter_model_get_type@Base 0.2.0
+ dee_filter_model_insert_iter@Base 0.2.0
+ dee_filter_model_insert_iter_before@Base 0.2.0
+ dee_filter_model_new@Base 0.2.0
+ dee_filter_model_prepend_iter@Base 0.2.0
+ dee_glist_result_set_get_type@Base 0.4.0
+ dee_hash_index_get_type@Base 0.4.0
+ dee_hash_index_new@Base 0.4.0
+ dee_index_foreach@Base 0.4.0
+ dee_index_get_analyzer@Base 0.4.0
+ dee_index_get_model@Base 0.4.0
+ dee_index_get_n_rows@Base 0.4.0
+ dee_index_get_n_rows_for_term@Base 0.4.0
+ dee_index_get_n_terms@Base 0.4.0
+ dee_index_get_supported_term_match_flags@Base 0.4.0
+ dee_index_get_type@Base 0.4.0
+ dee_index_lookup@Base 0.4.0
+ dee_model_append@Base 0.1.0
+ dee_model_append_valist@Base 0.1.0
+ dee_model_build_col_spec@Base 0.1.0
+ dee_model_check_type@Base 0.1.0
+ dee_model_clear@Base 0.1.0
+ dee_model_freeze_signals@Base 0.1.0
+ dee_model_get@Base 0.1.0
+ dee_model_get_bool@Base 0.1.0
+ dee_model_get_column_type@Base 0.1.0
+ dee_model_get_double@Base 0.1.0
+ dee_model_get_first_iter@Base 0.1.0
+ dee_model_get_int64@Base 0.1.0
+ dee_model_get_int@Base 0.1.0
+ dee_model_get_iter_at_row@Base 0.1.0
+ dee_model_get_last_iter@Base 0.1.0
+ dee_model_get_n_columns@Base 0.1.0
+ dee_model_get_n_rows@Base 0.1.0
+ dee_model_get_position@Base 0.1.0
+ dee_model_get_string@Base 0.1.0
+ dee_model_get_type@Base 0.1.0
+ dee_model_get_type_for_signature@Base 0.1.0
+ dee_model_get_uchar@Base 0.1.0
+ dee_model_get_uint64@Base 0.1.0
+ dee_model_get_uint@Base 0.1.0
+ dee_model_get_valist@Base 0.1.0
+ dee_model_get_value@Base 0.1.0
+ dee_model_insert@Base 0.1.0
+ dee_model_insert_before@Base 0.1.0
+ dee_model_insert_before_valist@Base 0.1.0
+ dee_model_insert_valist@Base 0.1.0
+ dee_model_is_first@Base 0.1.0
+ dee_model_is_last@Base 0.1.0
+ dee_model_next@Base 0.1.0
+ dee_model_prepend@Base 0.1.0
+ dee_model_prepend_valist@Base 0.1.0
+ dee_model_prev@Base 0.1.0
+ dee_model_remove@Base 0.1.0
+ dee_model_set@Base 0.1.0
+ dee_model_set_column_type@Base 0.1.0
+ dee_model_set_n_columns@Base 0.1.0
+ dee_model_set_valist@Base 0.1.0
+ dee_model_set_value@Base 0.1.0
+ dee_model_set_value_silently@Base 0.1.0
+ dee_model_thaw_signals@Base 0.1.0
+ dee_peer_connect@Base 0.1.0
+ dee_peer_get_swarm_leader@Base 0.1.0
+ dee_peer_get_swarm_name@Base 0.1.0
+ dee_peer_get_type@Base 0.1.0
+ dee_peer_is_swarm_leader@Base 0.1.0
+ dee_proxy_model_get_type@Base 0.1.0
+ dee_result_set_get_model@Base 0.4.0
+ dee_result_set_get_n_rows@Base 0.4.0
+ dee_result_set_get_type@Base 0.4.0
+ dee_result_set_has_next@Base 0.4.0
+ dee_result_set_next@Base 0.4.0
+ dee_result_set_peek@Base 0.4.0
+ dee_result_set_seek@Base 0.4.0
+ dee_result_set_tell@Base 0.4.0
+ dee_sequence_model_get_type@Base 0.1.0
+ dee_sequence_model_new@Base 0.1.0
+ dee_shared_model_connect@Base 0.1.0
+ dee_shared_model_get_peer@Base 0.2.4
+ dee_shared_model_get_swarm_name@Base 0.2.4
+ dee_shared_model_get_type@Base 0.1.0
+ dee_shared_model_new@Base 0.1.0
+ dee_shared_model_new_with_back_end@Base 0.2.0
+ dee_shared_model_new_with_name@Base 0.1.0
+ dee_term_list_add_term@Base 0.4.0
+ dee_term_list_clear@Base 0.4.0
+ dee_term_list_get_term@Base 0.4.0
+ dee_term_list_get_type@Base 0.4.0
+ dee_term_list_num_terms@Base 0.4.0
+ dee_versioned_model_append_next_seqnum@Base 0.1.0
+ dee_versioned_model_check_seqnum@Base 0.1.0
+ dee_versioned_model_check_seqnums@Base 0.1.0
+ dee_versioned_model_get_last_seqnum@Base 0.1.0
+ dee_versioned_model_get_seqnum@Base 0.1.0
+ dee_versioned_model_get_type@Base 0.1.0
+ dee_versioned_model_inc_seqnum@Base 0.1.0
+ dee_versioned_model_insert_next_seqnum@Base 0.1.0
+ dee_versioned_model_prepend_next_seqnum@Base 0.1.0
+ dee_versioned_model_remove_seqnum@Base 0.1.0
+ dee_versioned_model_set_last_seqnum@Base 0.1.0
+ dee_versioned_model_set_seqnum@Base 0.1.0
--- dee-0.4.2.orig/debian/compat
+++ dee-0.4.2/debian/compat
@@ -0,0 +1 @@
+5
--- dee-0.4.2.orig/examples/synced-lists.c
+++ dee-0.4.2/examples/synced-lists.c
@@ -0,0 +1,269 @@
+/*
+ * Copyright (C) 2010 Canonical Ltd
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 3 as 
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ * Authored by
+ *              Neil Jagdish Patel <neil.patel@canonical.com>
+ *              Mikkel Kamstrup Erlandsen <mikkel.kamstrup@canonical.com>
+ *
+ * Compile with:
+ *
+ * gcc synced-lists.c -o synced-lists `pkg-config --libs --cflags dee gtk+-2.0`
+ *
+ */
+#include <time.h>
+#include <glib.h>
+#include <glib-object.h>
+#include <gtk/gtk.h>
+#include <dee.h>
+#include <unistd.h>
+
+static DeeModel    *model;
+static GtkWidget    *window;
+static GtkWidget    *list;
+static GtkListStore *store;
+
+static void
+on_row_added (DeeModel *model, DeeModelIter *iter)
+{
+  gint         i = 0;
+  gchar       *str = NULL;
+  GtkTreeIter  titer;
+
+  dee_model_get (model, iter, 0, &i, 1, &str, -1);
+
+  gtk_list_store_append (store, &titer);
+  gtk_list_store_set (store, &titer,
+                      0, g_strdup_printf ("%d", i),
+                      1, str,
+                      2, iter,
+                      -1);
+
+  g_free (str);
+}
+
+static void
+on_row_removed (DeeModel *model, DeeModelIter *old_iter)
+{
+  GtkTreeIter iter = { 0};
+
+  gtk_tree_model_get_iter_first (GTK_TREE_MODEL (store), &iter);
+
+  do
+    {
+      gpointer data = NULL;
+
+      gtk_tree_model_get (GTK_TREE_MODEL (store), &iter,
+                          2, &data,
+                          -1);
+
+      if (data == old_iter)
+        {
+          gtk_list_store_remove (store, &iter);
+          break;
+        }
+    }
+  while (gtk_tree_model_iter_next (GTK_TREE_MODEL (store), &iter));
+}
+
+static void
+on_row_changed (DeeModel *model, DeeModelIter *row_iter)
+{
+  GtkTreeIter iter = { 0 };
+
+  gtk_tree_model_get_iter_first (GTK_TREE_MODEL (store), &iter);
+
+  do
+    {
+      gpointer data = NULL;
+
+      gtk_tree_model_get (GTK_TREE_MODEL (store), &iter,
+                          2, &data,
+                          -1);
+
+      if (data == row_iter)
+        {
+          gint i = 0;
+          gchar *str = NULL;
+
+          dee_model_get (model, row_iter, 0, &i, 1, &str, -1);
+
+          gtk_list_store_set (store, &iter,
+                              0, g_strdup_printf ("%d", i),
+                              1, str,
+                              -1);
+          break;
+        }
+    }
+  while (gtk_tree_model_iter_next (GTK_TREE_MODEL (store), &iter));
+}
+
+static void
+add_row (GtkWidget *button)
+{
+  dee_model_append (model,
+                     0, getpid (),
+                     1, "Wazza",
+                     -1);
+}
+
+static void
+remove_row (GtkWidget *button)
+{
+  GtkTreeSelection *sel;
+  GtkTreeIter       iter;
+
+  sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (list));
+
+  if (gtk_tree_selection_get_selected (sel,
+                                       NULL,
+                                       &iter))
+    {
+      gpointer data = NULL;
+
+      gtk_tree_model_get (GTK_TREE_MODEL (store),
+                          &iter,
+                          2, &data,
+                          -1);
+
+      dee_model_remove (model, data);
+    }
+  else
+    g_debug ("No selection to delete");
+}
+
+static void
+clear_rows (GtkWidget *button)
+{
+  dee_model_clear (model);
+}
+
+static void
+on_cell_edited (GtkCellRendererText *renderer,
+                gchar               *path,
+                gchar               *new_text,
+                gpointer             old_data)
+{
+  GtkTreeIter iter;
+
+  if (gtk_tree_model_get_iter_from_string (GTK_TREE_MODEL (store),
+                                       &iter,
+                                       path))
+    {
+      gpointer data = NULL;
+
+      gtk_tree_model_get (GTK_TREE_MODEL (store),
+                          &iter,
+                          2, &data,
+                          -1);
+
+      dee_model_set (model,
+                      (DeeModelIter *)data,
+                      1, new_text,
+                      -1);
+    }
+}
+
+gint
+main (gint argc, gchar *argv[])
+{
+  GtkWidget *vbox, *hbox, *scroll, *button;
+
+  gtk_init (&argc, &argv);
+
+  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+  gtk_window_resize (GTK_WINDOW (window), 300, 600);
+  gtk_container_set_border_width (GTK_CONTAINER (window), 12);
+
+  vbox = gtk_vbox_new (FALSE, 12);
+  gtk_container_add (GTK_CONTAINER (window), vbox);
+
+  button = gtk_label_new (g_strdup_printf ("My PID: <b>%d</b>", getpid()));
+  g_object_set (button, "use-markup", TRUE, NULL);
+  gtk_misc_set_alignment (GTK_MISC (button), 0.5, 0.5);
+  gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+
+  scroll = gtk_scrolled_window_new (NULL, NULL);
+  gtk_box_pack_start (GTK_BOX (vbox), scroll, TRUE, TRUE, 0);
+  gtk_widget_show (scroll);
+
+  list = gtk_tree_view_new ();
+  gtk_container_add (GTK_CONTAINER (scroll), list);
+  gtk_widget_show (list);
+
+    {
+      GtkCellRenderer   *cell;
+      GtkTreeViewColumn *col;
+
+      cell = gtk_cell_renderer_text_new ();
+      col = gtk_tree_view_column_new_with_attributes ("0",
+                                                      cell,
+                                                      "text", 0,
+                                                      NULL);
+      gtk_tree_view_append_column (GTK_TREE_VIEW (list), col);
+
+      cell = gtk_cell_renderer_text_new ();
+      g_object_set (cell, "editable", TRUE, NULL);
+      g_signal_connect (cell, "edited",
+                        G_CALLBACK (on_cell_edited), NULL);
+      col = gtk_tree_view_column_new_with_attributes ("1",
+                                                      cell,
+                                                      "text", 1,
+                                                      NULL);
+      gtk_tree_view_append_column (GTK_TREE_VIEW (list), col);
+    }
+
+  hbox = gtk_hbox_new (TRUE, 12);
+  gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
+
+  button = gtk_button_new_from_stock (GTK_STOCK_ADD);
+  gtk_container_add (GTK_CONTAINER (hbox), button);
+  g_signal_connect (button, "clicked",
+                    G_CALLBACK (add_row), NULL);
+
+  button = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
+  gtk_container_add (GTK_CONTAINER (hbox), button);
+  g_signal_connect (button, "clicked",
+                    G_CALLBACK (remove_row), NULL);
+
+  button = gtk_button_new_from_stock (GTK_STOCK_CLEAR);
+  gtk_container_add (GTK_CONTAINER (hbox), button);
+  g_signal_connect (button, "clicked",
+                    G_CALLBACK (clear_rows), NULL);
+
+  gtk_widget_show_all (window);
+
+  store = gtk_list_store_new (3,
+                              G_TYPE_STRING,
+                              G_TYPE_STRING,
+                              G_TYPE_POINTER);
+  gtk_tree_view_set_model (GTK_TREE_VIEW (list), GTK_TREE_MODEL (store));
+
+  model = dee_model_new ("com.canonical.Dbus.Model.Example",
+                          2,
+                          G_TYPE_INT,
+                          G_TYPE_STRING);
+  g_signal_connect (model, "row-added",
+                    G_CALLBACK (on_row_added), NULL);
+  g_signal_connect (model, "row-removed",
+                    G_CALLBACK (on_row_removed), NULL);
+  g_signal_connect (model, "row-changed",
+                    G_CALLBACK (on_row_changed), NULL);
+
+  dee_model_connect (DEE_SHARED_MODEL (model));
+
+  gtk_main ();
+
+  return 0;
+}
