[PackageKit-commit] packagekit: Branch 'master' - 41 commits

Richard Hughes hughsient at kemper.freedesktop.org
Wed Dec 16 00:48:38 PST 2009


 RELEASE                                          |   10 
 backends/aptcc/apt.cpp                           |    8 
 backends/aptcc/apt.h                             |    2 
 backends/aptcc/pk-backend-aptcc.cpp              |   80 
 backends/dummy/pk-backend-dummy.c                |   32 
 backends/test/pk-backend-test-fail.c             |   20 
 backends/test/pk-backend-test-nop.c              |    6 
 backends/test/pk-backend-test-spawn.c            |   13 
 backends/test/pk-backend-test-succeed.c          |   16 
 backends/test/pk-backend-test-thread.c           |   10 
 backends/yum/pk-backend-yum.c                    |   47 
 client/egg-string.c                              |    2 
 client/egg-string.h                              |    2 
 client/egg-test.c                                |    2 
 client/egg-test.h                                |    2 
 configure.ac                                     |   18 
 contrib/command-not-found/pk-command-not-found.c |   38 
 contrib/device-rebind/pk-device-rebind.c         |    1 
 etc/PackageKit.conf.in                           |   17 
 lib/Makefile.am                                  |    4 
 lib/packagekit-glib/.gitignore                   |   12 
 lib/packagekit-glib/Makefile.am                  |  178 
 lib/packagekit-glib/egg-debug.c                  |    1 
 lib/packagekit-glib/egg-debug.h                  |    1 
 lib/packagekit-glib/egg-string.c                 |    1 
 lib/packagekit-glib/egg-string.h                 |    1 
 lib/packagekit-glib/egg-test.c                   |    1 
 lib/packagekit-glib/egg-test.h                   |    1 
 lib/packagekit-glib/packagekit-glib.pc.in        |   13 
 lib/packagekit-glib/packagekit.h                 |   54 
 lib/packagekit-glib/pk-bitfield.c                |  544 --
 lib/packagekit-glib/pk-bitfield.h                |   59 
 lib/packagekit-glib/pk-catalog.c                 |  431 -
 lib/packagekit-glib/pk-catalog.h                 |   72 
 lib/packagekit-glib/pk-category-obj.c            |  144 
 lib/packagekit-glib/pk-category-obj.h            |   58 
 lib/packagekit-glib/pk-client-pool.c             |  401 -
 lib/packagekit-glib/pk-client-pool.h             |   78 
 lib/packagekit-glib/pk-client.c                  | 5652 -----------------------
 lib/packagekit-glib/pk-client.h                  |  393 -
 lib/packagekit-glib/pk-common.c                  |  782 ---
 lib/packagekit-glib/pk-common.h                  |   99 
 lib/packagekit-glib/pk-connection.c              |  229 
 lib/packagekit-glib/pk-connection.h              |   64 
 lib/packagekit-glib/pk-control.c                 | 1313 -----
 lib/packagekit-glib/pk-control.h                 |  130 
 lib/packagekit-glib/pk-desktop.c                 |  405 -
 lib/packagekit-glib/pk-desktop.h                 |   90 
 lib/packagekit-glib/pk-details-obj.c             |  149 
 lib/packagekit-glib/pk-details-obj.h             |   62 
 lib/packagekit-glib/pk-distro-upgrade-obj.c      |  141 
 lib/packagekit-glib/pk-distro-upgrade-obj.h      |   55 
 lib/packagekit-glib/pk-enum.c                    | 1273 -----
 lib/packagekit-glib/pk-enum.h                    |  698 --
 lib/packagekit-glib/pk-marshal.list              |    1 
 lib/packagekit-glib/pk-obj-list.c                |  788 ---
 lib/packagekit-glib/pk-obj-list.h                |  110 
 lib/packagekit-glib/pk-package-id.c              |  706 --
 lib/packagekit-glib/pk-package-id.h              |   82 
 lib/packagekit-glib/pk-package-ids.c             |  272 -
 lib/packagekit-glib/pk-package-ids.h             |   60 
 lib/packagekit-glib/pk-package-list.c            |  573 --
 lib/packagekit-glib/pk-package-list.h            |   82 
 lib/packagekit-glib/pk-package-obj.c             |  297 -
 lib/packagekit-glib/pk-package-obj.h             |   60 
 lib/packagekit-glib/pk-require-restart-obj.c     |  138 
 lib/packagekit-glib/pk-require-restart-obj.h     |   54 
 lib/packagekit-glib/pk-self-test.c               |   81 
 lib/packagekit-glib/pk-service-pack.c            | 1173 ----
 lib/packagekit-glib/pk-service-pack.h            |  118 
 lib/packagekit-glib/pk-task-list.c               |  588 --
 lib/packagekit-glib/pk-task-list.h               |   96 
 lib/packagekit-glib/pk-transaction-obj.c         |  159 
 lib/packagekit-glib/pk-transaction-obj.h         |   65 
 lib/packagekit-glib/pk-update-detail-obj.c       |  178 
 lib/packagekit-glib/pk-update-detail-obj.h       |   75 
 lib/packagekit-glib/pk-version.h.in              |    1 
 lib/packagekit-glib2/pk-client.c                 |   30 
 lib/packagekit-glib2/pk-control.c                |  175 
 lib/packagekit-glib2/pk-enum.c                   |    1 
 lib/packagekit-glib2/pk-enum.h                   |    1 
 lib/packagekit-glib2/pk-marshal.list             |    2 
 lib/packagekit-qt/src/client.cpp                 |   68 
 lib/packagekit-qt/src/client.h                   |   72 
 lib/packagekit-qt/src/clientprivate.cpp          |   12 
 lib/packagekit-qt/src/clientprivate.h            |    3 
 lib/packagekit-qt/src/transaction.cpp            |   19 
 lib/packagekit-qt/src/transaction.h              |   65 
 lib/packagekit-qt/src/transactionprivate.cpp     |   15 
 lib/packagekit-qt/src/transactionprivate.h       |    2 
 lib/packagekit-qt/src/transactionproxy.h         |   15 
 po/as.po                                         | 1851 ++++---
 po/bn_IN.po                                      |  909 ++-
 po/de.po                                         | 1765 ++++---
 po/fr.po                                         | 1823 ++++---
 po/hi.po                                         |  736 +-
 po/ja.po                                         | 1080 ++--
 po/kn.po                                         |  737 +-
 po/ml.po                                         |  735 +-
 po/mr.po                                         |  724 +-
 po/nl.po                                         |  308 -
 po/pa.po                                         |  724 +-
 po/pt_BR.po                                      |  750 +--
 po/ru.po                                         | 1015 +---
 po/ta.po                                         |  805 +--
 po/te.po                                         |  412 -
 po/zh_CN.po                                      | 2370 +--------
 po/zh_TW.po                                      | 1662 ++++--
 src/Makefile.am                                  |    2 
 src/org.freedesktop.PackageKit.Transaction.xml   |  403 -
 src/org.freedesktop.PackageKit.xml               |  208 
 src/pk-backend-internal.h                        |   18 
 src/pk-backend.c                                 |   38 
 src/pk-backend.h                                 |   16 
 src/pk-conf.c                                    |   22 
 src/pk-conf.h                                    |    3 
 src/pk-engine.c                                  |  122 
 src/pk-engine.h                                  |   19 
 src/pk-lsof.c                                    |    9 
 src/pk-proc.c                                    |  379 +
 src/pk-proc.h                                    |   63 
 src/pk-self-test.c                               |    2 
 src/pk-transaction-extra.c                       |  353 -
 src/pk-transaction-extra.h                       |    3 
 src/pk-transaction.c                             |  328 -
 src/pk-transaction.h                             |   38 
 126 files changed, 10508 insertions(+), 30076 deletions(-)

New commits:
commit 3cb32ad40af3a38456e09baf1b29b046d82c587e
Author: Richard Hughes <richard at hughsie.com>
Date:   Wed Dec 16 08:47:07 2009 +0000

    Add functionality to check if certain running applications should prevent an update

diff --git a/src/pk-transaction-extra.c b/src/pk-transaction-extra.c
index 963c257..5369c59 100644
--- a/src/pk-transaction-extra.c
+++ b/src/pk-transaction-extra.c
@@ -44,6 +44,7 @@
 #include "pk-backend-internal.h"
 #include "pk-lsof.h"
 #include "pk-proc.h"
+#include "pk-conf.h"
 
 #define PK_POST_TRANS_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_POST_TRANS, PkTransactionExtraPrivate))
 
@@ -55,8 +56,10 @@ struct PkTransactionExtraPrivate
 	GPtrArray		*list;
 	PkLsof			*lsof;
 	PkProc			*proc;
+	PkConf			*conf;
 	guint			 finished_id;
 	guint			 package_id;
+	gchar			**no_update_process_list;
 	GHashTable		*hash;
 	GPtrArray		*files_list;
 	GPtrArray		*pids;
@@ -898,6 +901,145 @@ out:
 }
 
 /**
+ * pk_transaction_extra_match_running_file:
+ *
+ * Only if the pattern matches the old and new names we refuse to run
+ **/
+static gboolean
+pk_transaction_extra_match_running_file (PkTransactionExtra *extra, const gchar *filename)
+{
+	guint i;
+	gchar **list;
+	gboolean ret;
+
+	/* compare each pattern */
+	list = extra->priv->no_update_process_list;
+	for (i=0; list[i] != NULL; i++) {
+
+		/* does the package filename match */
+		ret = g_pattern_match_simple (list[i], filename);
+		if (ret) {
+			/* is there a running process that also matches */
+			ret = pk_proc_find_exec (extra->priv->proc, list[i]);
+			if (ret)
+				goto out;
+		}
+	}
+
+	/* we failed */
+	ret = FALSE;
+out:
+	return ret;
+}
+
+/**
+ * pk_transaction_extra_files_check_applications_are_running_cb:
+ **/
+static void
+pk_transaction_extra_files_check_applications_are_running_cb (PkBackend *backend, PkFiles *files, PkTransactionExtra *extra)
+{
+	guint i;
+	guint len;
+	gboolean ret;
+	gchar **filenames = NULL;
+
+	/* get data */
+	g_object_get (files,
+		      "files", &filenames,
+		      NULL);
+
+	/* check each file to see if it's a system shared library */
+	len = g_strv_length (filenames);
+	egg_debug ("len=%i", len);
+	for (i=0; i<len; i++) {
+
+		/* does the package filename match */
+		ret = pk_transaction_extra_match_running_file (extra, filenames[i]);
+		if (!ret)
+			continue;
+
+		/* add as it matches the criteria */
+		egg_debug ("adding filename %s", filenames[i]);
+		g_ptr_array_add (extra->priv->files_list, g_strdup (filenames[i]));
+	}
+	g_strfreev (filenames);
+}
+
+/**
+ * pk_transaction_extra_applications_are_running:
+ **/
+gboolean
+pk_transaction_extra_applications_are_running (PkTransactionExtra *extra, gchar **package_ids, GError **error)
+{
+	gboolean ret = TRUE;
+	const gchar *file;
+	gchar **files = NULL;
+	gchar *process = NULL;
+	guint signal_files = 0;
+
+	g_return_val_if_fail (PK_IS_POST_TRANS (extra), FALSE);
+	g_return_val_if_fail (package_ids != NULL, FALSE);
+
+	if (!pk_backend_is_implemented (extra->priv->backend, PK_ROLE_ENUM_GET_FILES)) {
+		egg_debug ("cannot get files");
+		/* return success, as we're not setting an error */
+		return TRUE;
+	}
+
+	/* check we have entry */
+	if (extra->priv->no_update_process_list == NULL ||
+	    extra->priv->no_update_process_list[0] == NULL) {
+		egg_debug ("no processes to watch");
+		/* return success, as we're not setting an error */
+		return TRUE;
+	}
+
+	/* reset */
+	g_ptr_array_set_size (extra->priv->files_list, 0);
+
+	/* set status */
+	pk_transaction_extra_set_status_changed (extra, PK_STATUS_ENUM_SCAN_PROCESS_LIST);
+	pk_transaction_extra_set_progress_changed (extra, 101);
+
+	/* get list from proc */
+	ret = pk_proc_refresh (extra->priv->proc);
+	if (!ret) {
+		egg_warning ("failed to refresh");
+		/* non-fatal */
+		ret = TRUE;
+		goto out;
+	}
+
+	/* set status */
+	pk_transaction_extra_set_status_changed (extra, PK_STATUS_ENUM_CHECK_EXECUTABLE_FILES);
+
+	signal_files = g_signal_connect (extra->priv->backend, "files",
+					 G_CALLBACK (pk_transaction_extra_files_check_applications_are_running_cb), extra);
+
+	/* get all the files touched in the packages we just updated */
+	pk_backend_reset (extra->priv->backend);
+	pk_backend_get_files (extra->priv->backend, package_ids);
+
+	/* wait for finished */
+	g_main_loop_run (extra->priv->loop);
+
+	/* there is a file we can't COW */
+	if (extra->priv->files_list->len != 0) {
+		file = g_ptr_array_index (extra->priv->files_list, 0);
+		*error = g_error_new (1, 0, "failed to run as %s is running", file);
+		ret = FALSE;
+		goto out;
+	}
+out:
+	pk_transaction_extra_set_progress_changed (extra, 100);
+	if (signal_files > 0)
+		g_signal_handler_disconnect (extra->priv->backend, signal_files);
+	g_strfreev (files);
+	g_free (process);
+	return ret;
+}
+
+/**
  * pk_transaction_extra_check_library_restart_pre:
  * @package_ids: the list of security updates
  *
@@ -1009,10 +1151,12 @@ pk_transaction_extra_finalize (GObject *object)
 	sqlite3_close (extra->priv->db);
 	g_hash_table_unref (extra->priv->hash);
 	g_ptr_array_unref (extra->priv->files_list);
+	g_strfreev (extra->priv->no_update_process_list);
 
 	g_object_unref (extra->priv->backend);
 	g_object_unref (extra->priv->lsof);
 	g_object_unref (extra->priv->proc);
+	g_object_unref (extra->priv->conf);
 	g_ptr_array_unref (extra->priv->list);
 
 	G_OBJECT_CLASS (pk_transaction_extra_parent_class)->finalize (object);
@@ -1069,6 +1213,7 @@ pk_transaction_extra_init (PkTransactionExtra *extra)
 	extra->priv->pids = NULL;
 	extra->priv->hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
 	extra->priv->files_list = g_ptr_array_new_with_free_func (g_free);
+	extra->priv->conf = pk_conf_new ();
 
 	extra->priv->finished_id =
 		g_signal_connect (extra->priv->backend, "finished",
@@ -1077,6 +1222,9 @@ pk_transaction_extra_init (PkTransactionExtra *extra)
 		g_signal_connect (extra->priv->backend, "package",
 				  G_CALLBACK (pk_transaction_extra_package_cb), extra);
 
+	/* get the list of processes we should neverupdate when running */
+	extra->priv->no_update_process_list = pk_conf_get_strv (extra->priv->conf, "NoUpdateProcessList");
+
 	/* check if exists */
 	ret = g_file_test (PK_DESKTOP_DEFAULT_DATABASE, G_FILE_TEST_EXISTS);
 
diff --git a/src/pk-transaction-extra.h b/src/pk-transaction-extra.h
index b42cd55..0312c52 100644
--- a/src/pk-transaction-extra.h
+++ b/src/pk-transaction-extra.h
@@ -59,6 +59,9 @@ gboolean	 pk_transaction_extra_check_desktop_files	(PkTransactionExtra	*extra,
 gboolean	 pk_transaction_extra_check_library_restart	(PkTransactionExtra	*extra);
 gboolean	 pk_transaction_extra_check_library_restart_pre	(PkTransactionExtra	*extra,
 								 gchar			**package_ids);
+gboolean	 pk_transaction_extra_applications_are_running	(PkTransactionExtra	*extra,
+								 gchar			**package_ids,
+								 GError			**error);
 
 G_END_DECLS
 
diff --git a/src/pk-transaction.c b/src/pk-transaction.c
index 7cbc42b..029acfd 100644
--- a/src/pk-transaction.c
+++ b/src/pk-transaction.c
@@ -1424,10 +1424,10 @@ pk_transaction_update_detail_cb (PkBackend *backend, PkUpdateDetail *item, PkTra
  * pk_transaction_pre_transaction_checks:
  * @package_ids: the list of packages to process
  *
- * This function does any pre-transaction checks
+ * This function does any pre-transaction checks before the backend is connected
  */
 static gboolean
-pk_transaction_pre_transaction_checks (PkTransaction *transaction, gchar **package_ids)
+pk_transaction_pre_transaction_checks (PkTransaction *transaction, gchar **package_ids, GError **error)
 {
 	GPtrArray *updates;
 	PkPackage *item;
@@ -1435,11 +1435,19 @@ pk_transaction_pre_transaction_checks (PkTransaction *transaction, gchar **packa
 	guint j = 0;
 	guint length = 0;
 	gboolean ret = FALSE;
+	gboolean success = TRUE;
 	gchar **package_ids_security = NULL;
 	gchar *package_id;
 	PkInfoEnum info;
 
-	/* chekc we have anything to process */
+	/* only do this for update actions, FIXME: need to get cached updtae list for update */
+	if (transaction->priv->role == PK_ROLE_ENUM_UPDATE_PACKAGES) {
+		success = pk_transaction_extra_applications_are_running (transaction->priv->transaction_extra, package_ids, error);
+		if (!success)
+			goto out;
+	}
+
+	/* check we have anything to process */
 	if (package_ids == NULL) {
 		egg_debug ("no package_ids for %s", pk_role_enum_to_text (transaction->priv->role));
 		goto out;
@@ -1526,7 +1534,7 @@ pk_transaction_pre_transaction_checks (PkTransaction *transaction, gchar **packa
 	ret = pk_transaction_extra_check_library_restart_pre (transaction->priv->transaction_extra, package_ids_security);
 out:
 	g_strfreev (package_ids_security);
-	return ret;
+	return success;
 }
 
 /**
@@ -1625,11 +1633,22 @@ pk_transaction_set_running (PkTransaction *transaction)
 	}
 
 	/* do any pre transaction checks */
-	ret = pk_transaction_pre_transaction_checks (transaction, priv->cached_package_ids);
+	ret = pk_transaction_pre_transaction_checks (transaction, priv->cached_package_ids, &error);
+	if (!ret) {
+		/* run a fake transaction */
+		pk_transaction_status_changed_emit (transaction, PK_STATUS_ENUM_FINISHED);
+		pk_transaction_error_code_emit (transaction, PK_ERROR_ENUM_UPDATE_FAILED_DUE_TO_RUNNING_PROCESS, error->message);
+		pk_transaction_finished_emit (transaction, PK_EXIT_ENUM_FAILED, 0);
+
+		/* do not fail the tranaction */
+		ret = TRUE;
+
+		g_error_free (error);
+		goto out;
+	}
 
 	/* might have to reset again if we used the backend */
-	if (ret)
-		pk_backend_reset (transaction->priv->backend);
+	pk_backend_reset (transaction->priv->backend);
 
 	/* connect up the signals */
 	transaction->priv->signal_allow_cancel =
@@ -1785,9 +1804,10 @@ pk_transaction_set_running (PkTransaction *transaction)
 		}
 	} else {
 		egg_error ("failed to run as role not assigned");
-		return FALSE;
+		ret = FALSE;
 	}
-	return TRUE;
+out:
+	return ret;
 }
 
 /**
commit f17608f3bf05cf844c4e48f710e6a96e7752e6ad
Author: Richard Hughes <richard at hughsie.com>
Date:   Wed Dec 16 08:46:18 2009 +0000

    trivial: add a file to the dummy backend for testing

diff --git a/backends/dummy/pk-backend-dummy.c b/backends/dummy/pk-backend-dummy.c
index 365b96e..dd5b85e 100644
--- a/backends/dummy/pk-backend-dummy.c
+++ b/backends/dummy/pk-backend-dummy.c
@@ -244,7 +244,7 @@ backend_get_files (PkBackend *backend, gchar **package_ids)
 		if (g_strcmp0 (package_id, "powertop;1.8-1.fc8;i386;fedora") == 0)
 			pk_backend_files (backend, package_id, "/usr/share/man/man1/boo;/usr/bin/xchat-gnome");
 		else if (g_strcmp0 (package_id, "kernel;2.6.23-0.115.rc3.git1.fc8;i386;installed") == 0)
-			pk_backend_files (backend, package_id, "/usr/share/man/man1;/usr/share/man/man1/gnome-power-manager.1.gz");
+			pk_backend_files (backend, package_id, "/usr/share/man/man1;/usr/share/man/man1/gnome-power-manager.1.gz;/usr/lib/firefox-3.5.7/firefox");
 		else if (g_strcmp0 (package_id, "gtkhtml2;2.19.1-4.fc8;i386;fedora") == 0)
 			pk_backend_files (backend, package_id, "/usr/share/man/man1;/usr/bin/ck-xinit-session;/lib/libselinux.so.1");
 		else
commit 66d3fc26054abd528ee18017d9c67edb6400f239
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 15 14:14:04 2009 +0000

    Add a new config file entry, NoUpdateProcessList that specifies processes that should not be updated when running

diff --git a/etc/PackageKit.conf.in b/etc/PackageKit.conf.in
index 1d31631..5a43da5 100644
--- a/etc/PackageKit.conf.in
+++ b/etc/PackageKit.conf.in
@@ -250,3 +250,20 @@ TransactionKeepFinishedTimeout=5
 # default=true
 UseIdleBandwidth=true
 
+# Processes that cannot be updated when they are running
+#
+# Some processes do not cope well when they are upgraded when the binary is
+# running. These include things like firefox, where updating causes the original
+# instance to misbehave as some components are not locked in memory.
+#
+# Applications can be added here that do not cope well with being updated.
+#
+# NOTE: you should not list applications here that the user has no permission
+# or cannot shutdown without the session exploding. For instance, listing
+# /sbin/dbus-daemon or /usr/sbin/haldaemon would be a really bad idea.
+#
+# Seporate entries can be seporated with the ';' character.
+#
+# default=/usr/lib/*/firefox
+NoUpdateProcessList=/usr/lib/*/firefox
+
commit 22196a4af0ca470d518e51cf315da7472d892b6f
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 15 14:21:46 2009 +0000

    trivial: Add a helper pk_conf_get_strv() for getting string arrays

diff --git a/src/pk-conf.c b/src/pk-conf.c
index 91c5f53..d771351 100644
--- a/src/pk-conf.c
+++ b/src/pk-conf.c
@@ -68,6 +68,28 @@ pk_conf_get_string (PkConf *conf, const gchar *key)
 }
 
 /**
+ * pk_conf_get_strv:
+ **/
+gchar **
+pk_conf_get_strv (PkConf *conf, const gchar *key)
+{
+	gchar **value = NULL;
+	GError *error = NULL;
+
+	g_return_val_if_fail (PK_IS_CONF (conf), NULL);
+	g_return_val_if_fail (key != NULL, NULL);
+
+	value = g_key_file_get_string_list (conf->priv->keyfile, "Daemon", key, NULL, &error);
+	if (error != NULL) {
+		/* set to missing value */
+		value = PK_CONF_VALUE_STRING_MISSING;
+		egg_debug ("%s read error: %s", key, error->message);
+		g_error_free (error);
+	}
+	return value;
+}
+
+/**
  * pk_conf_get_int:
  **/
 gint
diff --git a/src/pk-conf.h b/src/pk-conf.h
index fecb687..0d57e81 100644
--- a/src/pk-conf.h
+++ b/src/pk-conf.h
@@ -56,6 +56,9 @@ gchar		*pk_conf_get_filename		(void);
 gchar		*pk_conf_get_string		(PkConf		*conf,
 						 const gchar	*key)
 						 G_GNUC_WARN_UNUSED_RESULT;
+gchar		**pk_conf_get_strv		(PkConf		*conf,
+						 const gchar	*key)
+						 G_GNUC_WARN_UNUSED_RESULT;
 gint		 pk_conf_get_int		(PkConf		*conf,
 						 const gchar	*key);
 gboolean	 pk_conf_get_bool		(PkConf		*conf,
commit 379532488a639774905f864d742bb3bb0f136dd0
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 15 13:51:26 2009 +0000

    trivial: use the PkProc shared functionality rather than the hacked up version in PkTransactionExtra

diff --git a/src/pk-transaction-extra.c b/src/pk-transaction-extra.c
index fbfa062..963c257 100644
--- a/src/pk-transaction-extra.c
+++ b/src/pk-transaction-extra.c
@@ -43,6 +43,7 @@
 #include "pk-marshal.h"
 #include "pk-backend-internal.h"
 #include "pk-lsof.h"
+#include "pk-proc.h"
 
 #define PK_POST_TRANS_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_POST_TRANS, PkTransactionExtraPrivate))
 
@@ -51,9 +52,9 @@ struct PkTransactionExtraPrivate
 	sqlite3			*db;
 	PkBackend		*backend;
 	GMainLoop		*loop;
-	GPtrArray		*running_exec_list;
 	GPtrArray		*list;
 	PkLsof			*lsof;
+	PkProc			*proc;
 	guint			 finished_id;
 	guint			 package_id;
 	GHashTable		*hash;
@@ -560,11 +561,9 @@ pk_transaction_extra_clear_firmware_requests (PkTransactionExtra *extra)
 static void
 pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, PkFiles *files, PkTransactionExtra *extra)
 {
-	guint i, j;
+	guint i;
 	guint len;
 	gboolean ret;
-	const gchar *tmp;
-	GPtrArray *array;
 	gchar **filenames = NULL;
 	gchar *package_id = NULL;
 
@@ -583,15 +582,7 @@ pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, PkFiles
 			continue;
 
 		/* running? */
-		ret = FALSE;
-		array = extra->priv->running_exec_list;
-		for (j=0; j<array->len; j++) {
-			tmp = g_ptr_array_index (array, j);
-			if (g_strcmp0 (tmp, filenames[i]) == 0) {
-				ret = TRUE;
-				break;
-			}
-		}
+		ret = pk_proc_find_exec (extra->priv->proc, filenames[i]);
 		if (!ret)
 			continue;
 
@@ -606,105 +597,6 @@ pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, PkFiles
 	g_free (package_id);
 }
 
-#ifdef USE_SECURITY_POLKIT
-/**
- * dkp_extra_trans_get_cmdline:
- **/
-static gchar *
-dkp_extra_trans_get_cmdline (guint pid)
-{
-	gboolean ret;
-	gchar *filename = NULL;
-	gchar *cmdline = NULL;
-	GError *error = NULL;
-
-	/* get command line from proc */
-	filename = g_strdup_printf ("/proc/%i/cmdline", pid);
-	ret = g_file_get_contents (filename, &cmdline, NULL, &error);
-	if (!ret) {
-		egg_debug ("failed to get cmdline: %s", error->message);
-		g_error_free (error);
-		goto out;
-	}
-out:
-	g_free (filename);
-	return cmdline;
-}
-#endif
-
-/**
- * pk_transaction_extra_update_process_list:
- **/
-static gboolean
-pk_transaction_extra_update_process_list (PkTransactionExtra *extra)
-{
-	GDir *dir;
-	const gchar *name;
-	gchar *offset;
-	gchar *uid_file;
-	gchar *contents;
-	gboolean ret;
-	guint uid;
-	pid_t pid;
-	gchar *exec;
-
-	uid = getuid ();
-	dir = g_dir_open ("/proc", 0, NULL);
-	name = g_dir_read_name (dir);
-	if (extra->priv->running_exec_list->len > 0)
-		g_ptr_array_remove_range (extra->priv->running_exec_list, 0, extra->priv->running_exec_list->len);
-	while (name != NULL) {
-		contents = NULL;
-		exec = NULL;
-		uid_file = g_build_filename ("/proc", name, "loginuid", NULL);
-
-		/* is a process file */
-		if (!g_file_test (uid_file, G_FILE_TEST_EXISTS))
-			goto out;
-
-		/* able to get contents */
-		ret = g_file_get_contents (uid_file, &contents, 0, NULL);
-		if (!ret)
-			goto out;
-
-		/* parse UID */
-		ret = egg_strtouint (contents, &uid);
-		if (!ret) {
-			egg_warning ("failed to parse uid: '%s'", contents);
-			goto out;
-		}
-
-		/* parse PID */
-		ret = egg_strtoint (name, &pid);
-		if (!ret) {
-			egg_warning ("failed to parse pid: '%s'", name);
-			goto out;
-		}
-
-#ifdef USE_SECURITY_POLKIT
-		exec = dkp_extra_trans_get_cmdline (pid);
-		if (exec == NULL)
-			goto out;
-#else
-		goto out;
-#endif
-
-		/* can be /usr/libexec/notification-daemon.#prelink#.9sOhao */
-		offset = g_strrstr (exec, ".#prelink#.");
-		if (offset != NULL)
-			*(offset) = '\0';
-		egg_debug ("uid=%i, pid=%i, exec=%s", uid, pid, exec);
-		g_ptr_array_add (extra->priv->running_exec_list, g_strdup (exec));
-out:
-		g_free (exec);
-		g_free (uid_file);
-		g_free (contents);
-		name = g_dir_read_name (dir);
-	}
-	g_dir_close (dir);
-	return TRUE;
-}
-
 /**
  * pk_transaction_extra_check_running_process:
  **/
@@ -723,7 +615,7 @@ pk_transaction_extra_check_running_process (PkTransactionExtra *extra, gchar **p
 	pk_transaction_extra_set_status_changed (extra, PK_STATUS_ENUM_CHECK_EXECUTABLE_FILES);
 	pk_transaction_extra_set_progress_changed (extra, 101);
 
-	pk_transaction_extra_update_process_list (extra);
+	pk_proc_refresh (extra->priv->proc);
 
 	signal_files = g_signal_connect (extra->priv->backend, "files",
 					 G_CALLBACK (pk_transaction_extra_update_files_check_running_cb), extra);
@@ -1120,8 +1012,8 @@ pk_transaction_extra_finalize (GObject *object)
 
 	g_object_unref (extra->priv->backend);
 	g_object_unref (extra->priv->lsof);
+	g_object_unref (extra->priv->proc);
 	g_ptr_array_unref (extra->priv->list);
-	g_ptr_array_unref (extra->priv->running_exec_list);
 
 	G_OBJECT_CLASS (pk_transaction_extra_parent_class)->finalize (object);
 }
@@ -1168,11 +1060,11 @@ pk_transaction_extra_init (PkTransactionExtra *extra)
 	gint rc;
 
 	extra->priv = PK_POST_TRANS_GET_PRIVATE (extra);
-	extra->priv->running_exec_list = g_ptr_array_new_with_free_func ((GDestroyNotify) g_free);
 	extra->priv->loop = g_main_loop_new (NULL, FALSE);
 	extra->priv->list = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
 	extra->priv->backend = pk_backend_new ();
 	extra->priv->lsof = pk_lsof_new ();
+	extra->priv->proc = pk_proc_new ();
 	extra->priv->db = NULL;
 	extra->priv->pids = NULL;
 	extra->priv->hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
commit 43f5ceb1a241534679d47843a534509391007997
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 15 13:43:15 2009 +0000

    Fix a crash where the extra library check file callbacks had the wrong signature

diff --git a/src/pk-transaction-extra.c b/src/pk-transaction-extra.c
index 8ad69d9..fbfa062 100644
--- a/src/pk-transaction-extra.c
+++ b/src/pk-transaction-extra.c
@@ -558,23 +558,27 @@ pk_transaction_extra_clear_firmware_requests (PkTransactionExtra *extra)
  * pk_transaction_extra_update_files_check_running_cb:
  **/
 static void
-pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, const gchar *package_id,
-					     const gchar *filelist, PkTransactionExtra *extra)
+pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, PkFiles *files, PkTransactionExtra *extra)
 {
 	guint i, j;
 	guint len;
 	gboolean ret;
-	gchar **files;
 	const gchar *tmp;
 	GPtrArray *array;
+	gchar **filenames = NULL;
+	gchar *package_id = NULL;
 
-	files = g_strsplit (filelist, ";", 0);
+	/* get data */
+	g_object_get (files,
+		      "package-id", &package_id,
+		      "files", &filenames,
+		      NULL);
 
 	/* check each file */
-	len = g_strv_length (files);
+	len = g_strv_length (filenames);
 	for (i=0; i<len; i++) {
 		/* executable? */
-		ret = g_file_test (files[i], G_FILE_TEST_IS_REGULAR | G_FILE_TEST_IS_EXECUTABLE | G_FILE_TEST_EXISTS);
+		ret = g_file_test (filenames[i], G_FILE_TEST_IS_REGULAR | G_FILE_TEST_IS_EXECUTABLE | G_FILE_TEST_EXISTS);
 		if (!ret)
 			continue;
 
@@ -583,7 +587,7 @@ pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, const gc
 		array = extra->priv->running_exec_list;
 		for (j=0; j<array->len; j++) {
 			tmp = g_ptr_array_index (array, j);
-			if (g_strcmp0 (tmp, files[i]) == 0) {
+			if (g_strcmp0 (tmp, filenames[i]) == 0) {
 				ret = TRUE;
 				break;
 			}
@@ -595,10 +599,11 @@ pk_transaction_extra_update_files_check_running_cb (PkBackend *backend, const gc
 		 * suggest an application restart instead */
 
 		/* send signal about session restart */
-		egg_debug ("package %s updated, and %s is running", package_id, files[i]);
+		egg_debug ("package %s updated, and %s is running", package_id, filenames[i]);
 		pk_backend_require_restart (extra->priv->backend, PK_RESTART_ENUM_SESSION, package_id);
 	}
-	g_strfreev (files);
+	g_strfreev (filenames);
+	g_free (package_id);
 }
 
 #ifdef USE_SECURITY_POLKIT
@@ -739,39 +744,45 @@ pk_transaction_extra_check_running_process (PkTransactionExtra *extra, gchar **p
  * pk_transaction_extra_update_files_check_desktop_cb:
  **/
 static void
-pk_transaction_extra_update_files_check_desktop_cb (PkBackend *backend, const gchar *package_id,
-					     const gchar *filelist, PkTransactionExtra *extra)
+pk_transaction_extra_update_files_check_desktop_cb (PkBackend *backend, PkFiles *files, PkTransactionExtra *extra)
 {
 	guint i;
 	guint len;
 	gboolean ret;
-	gchar **files;
 	gchar **package;
 	gchar *md5;
+	gchar **filenames = NULL;
+	gchar *package_id = NULL;
+
+	/* get data */
+	g_object_get (files,
+		      "package-id", &package_id,
+		      "files", &filenames,
+		      NULL);
 
-	files = g_strsplit (filelist, ";", 0);
 	package = pk_package_id_split (package_id);
 
 	/* check each file */
-	len = g_strv_length (files);
+	len = g_strv_length (filenames);
 	for (i=0; i<len; i++) {
 		/* exists? */
-		ret = g_file_test (files[i], G_FILE_TEST_EXISTS);
+		ret = g_file_test (filenames[i], G_FILE_TEST_EXISTS);
 		if (!ret)
 			continue;
 
 		/* .desktop file? */
-		ret = g_str_has_suffix (files[i], ".desktop");
+		ret = g_str_has_suffix (filenames[i], ".desktop");
 		if (!ret)
 			continue;
 
-		egg_debug ("adding filename %s", files[i]);
-		md5 = pk_transaction_extra_get_filename_md5 (files[i]);
-		pk_transaction_extra_sqlite_add_filename_details (extra, files[i], package[PK_PACKAGE_ID_NAME], md5);
+		egg_debug ("adding filename %s", filenames[i]);
+		md5 = pk_transaction_extra_get_filename_md5 (filenames[i]);
+		pk_transaction_extra_sqlite_add_filename_details (extra, filenames[i], package[PK_PACKAGE_ID_NAME], md5);
 		g_free (md5);
 	}
-	g_strfreev (files);
+	g_strfreev (filenames);
 	g_strfreev (package);
+	g_free (package_id);
 }
 
 /**
@@ -811,30 +822,33 @@ pk_transaction_extra_check_desktop_files (PkTransactionExtra *extra, gchar **pac
  * pk_transaction_extra_files_check_library_restart_cb:
  **/
 static void
-pk_transaction_extra_files_check_library_restart_cb (PkBackend *backend, const gchar *package_id,
-					      const gchar *filelist, PkTransactionExtra *extra)
+pk_transaction_extra_files_check_library_restart_cb (PkBackend *backend, PkFiles *files, PkTransactionExtra *extra)
 {
 	guint i;
 	guint len;
-	gchar **files = NULL;
+	gchar **filenames = NULL;
 
-	files = g_strsplit (filelist, ";", 0);
+	/* get data */
+	g_object_get (files,
+		      "files", &filenames,
+		      NULL);
 
 	/* check each file to see if it's a system shared library */
-	len = g_strv_length (files);
+	len = g_strv_length (filenames);
 	for (i=0; i<len; i++) {
 		/* not a system library */
-		if (strstr (files[i], "/lib") == NULL)
+		if (strstr (filenames[i], "/lib") == NULL)
 			continue;
 
 		/* not a shared object */
-		if (strstr (files[i], ".so") == NULL)
+		if (strstr (filenames[i], ".so") == NULL)
 			continue;
 
 		/* add as it matches the criteria */
-		egg_debug ("adding filename %s", files[i]);
-		g_ptr_array_add (extra->priv->files_list, g_strdup (files[i]));
+		egg_debug ("adding filename %s", filenames[i]);
+		g_ptr_array_add (extra->priv->files_list, g_strdup (filenames[i]));
 	}
+	g_strfreev (filenames);
 }
 
 /**
commit e36715c98cd6993a650c0bfcd9d5d1b459dea64c
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 15 13:12:12 2009 +0000

    trivial: add functionality to PkProc to get the uid, and add two public functions

diff --git a/src/pk-proc.c b/src/pk-proc.c
index b68e5cc..9bc3431 100644
--- a/src/pk-proc.c
+++ b/src/pk-proc.c
@@ -42,37 +42,12 @@ struct PkProcPrivate
 G_DEFINE_TYPE (PkProc, pk_proc, G_TYPE_OBJECT)
 
 typedef struct {
-	guint			 pid;
 	gchar			*cmdline;
+	guint			 pid;
+	guint			 uid;
 } PkProcData;
 
 /**
- * pk_proc_add_pid:
- **/
-static gboolean
-pk_proc_add_pid (GPtrArray *array, guint pid)
-{
-	guint i;
-	guint pid_tmp;
-	gboolean found = FALSE;
-
-	/* search already list */
-	for (i=0; i<array->len; i++) {
-		pid_tmp = GPOINTER_TO_INT (g_ptr_array_index (array, i));
-		if (pid_tmp == pid) {
-			found = TRUE;
-			break;
-		}
-	}
-
-	/* not found, so add */
-	if (!found)
-		g_ptr_array_add (array, GINT_TO_POINTER (pid));
-
-	return !found;
-}
-
-/**
  * pk_proc_data_free:
  **/
 static void
@@ -86,17 +61,16 @@ pk_proc_data_free (PkProcData *proc)
  * pk_proc_data_new:
  **/
 static PkProcData *
-pk_proc_data_new (guint pid, const gchar *cmdline)
+pk_proc_data_new (const gchar *cmdline, guint pid, guint uid)
 {
 	PkProcData *data;
 	data = g_new0 (PkProcData, 1);
 	data->pid = pid;
+	data->uid = uid;
 	data->cmdline = g_strdup (cmdline);
 	return data;
 }
 
-
-
 /**
  * pk_proc_refresh_find_file:
  **/
@@ -133,8 +107,12 @@ pk_proc_refresh_add_file (PkProc *proc, const gchar *pid_text, const gchar *path
 	GError *error = NULL;
 	gchar *cmdline = NULL;
 	gint pid = -1;
+	guint uid;
 	PkProcData *data;
 	gchar *cmdline_full = NULL;
+	gchar *offset;
+	gchar *uid_file = NULL;
+	gchar *contents = NULL;
 
 	/* get cmdline */
 	ret = g_file_get_contents (path, &cmdline, NULL, &error);
@@ -144,6 +122,11 @@ pk_proc_refresh_add_file (PkProc *proc, const gchar *pid_text, const gchar *path
 		goto out;
 	}
 
+	/* remove prelink junk */
+	offset = g_strrstr (cmdline, ".#prelink#.");
+	if (offset != NULL)
+		*(offset) = '\0';
+
 	/* remove added junk */
 	g_strdelimit (cmdline, " \t:;", '\0');
 
@@ -179,13 +162,34 @@ pk_proc_refresh_add_file (PkProc *proc, const gchar *pid_text, const gchar *path
 		goto out;
 	}
 
+	/* get UID */
+	uid_file = g_build_filename ("/proc", pid_text, "loginuid", NULL);
+
+	/* is a process file */
+	if (!g_file_test (uid_file, G_FILE_TEST_EXISTS))
+		goto out;
+
+	/* able to get contents */
+	ret = g_file_get_contents (uid_file, &contents, 0, NULL);
+	if (!ret)
+		goto out;
+
+	/* parse UID */
+	ret = egg_strtouint (contents, &uid);
+	if (!ret) {
+		egg_warning ("failed to parse uid: '%s' for %s", contents, pid_text);
+		goto out;
+	}
+
 	/* add data to array */
-	data = pk_proc_data_new (pid, cmdline_full);
+	data = pk_proc_data_new (cmdline_full, pid, uid);
 	g_ptr_array_add (proc->priv->list_data, data);
-	egg_debug ("adding %s (%i)", data->cmdline, data->pid);
+	egg_debug ("adding %s pid:%i uid:%i", data->cmdline, data->pid, data->uid);
 out:
 	g_free (cmdline_full);
 	g_free (cmdline);
+	g_free (contents);
+	g_free (uid_file);
 	return ret;
 }
 
@@ -240,42 +244,51 @@ out:
 }
 
 /**
- * pk_proc_get_pids_for_cmdlines:
+ * pk_proc_find_exec:
  **/
-GPtrArray *
-pk_proc_get_pids_for_filenames (PkProc *proc, gchar **filenames)
+gboolean
+pk_proc_find_exec (PkProc *proc, const gchar *filename)
 {
-	guint i;
 	guint j;
-	gboolean ret;
+	gboolean ret = FALSE;
 	GPtrArray *list_data;
-	GPtrArray *pids = NULL;
 	const PkProcData *data;
 
-	g_return_val_if_fail (PK_IS_PROC (proc), NULL);
+	g_return_val_if_fail (PK_IS_PROC (proc), FALSE);
 
-	/* might not have been refreshed ever */
+	/* setup state */
 	list_data = proc->priv->list_data;
-	if (list_data->len == 0) {
-		ret = pk_proc_refresh (proc);
-		if (!ret) {
-			egg_warning ("failed to refresh");
-			goto out;
-		}
+
+	/* find executable that matches the pattern */
+	for (j=0; j < list_data->len; j++) {
+		data = g_ptr_array_index (list_data, j);
+		ret = g_pattern_match_simple (filename, data->cmdline);
+		if (ret)
+			break;
 	}
 
-	/* create array of pids that are using this library */
-	pids = g_ptr_array_new ();
+	return ret;
+}
+
+/**
+ * pk_proc_find_execs:
+ **/
+gboolean
+pk_proc_find_execs (PkProc *proc, gchar **filenames)
+{
+	guint i;
+	gboolean ret = FALSE;
+
+	g_return_val_if_fail (PK_IS_PROC (proc), FALSE);
+
+	/* find executable that matches the pattern */
 	for (i=0; filenames[i] != NULL; i++) {
-		for (j=0; j < list_data->len; j++) {
-			data = g_ptr_array_index (list_data, j);
-			if (g_strcmp0 (filenames[i], data->cmdline) == 0) {
-				pk_proc_add_pid (pids, data->pid);
-			}
-		}
+		ret = pk_proc_find_exec (proc, filenames[i]);
+		if (ret)
+			break;
 	}
-out:
-	return pids;
+
+	return ret;
 }
 
 /**
@@ -343,8 +356,7 @@ pk_proc_test (EggTest *test)
 {
 	gboolean ret;
 	PkProc *proc;
-	GPtrArray *pids;
-	gchar *files[] = { "/sbin/udevd", NULL };
+//	gchar *files[] = { "/sbin/udevd", NULL };
 
 	if (!egg_test_start (test, "PkProc"))
 		return;
@@ -359,12 +371,6 @@ pk_proc_test (EggTest *test)
 	ret = pk_proc_refresh (proc);
 	egg_test_assert (test, ret);
 
-	/************************************************************/
-	egg_test_title (test, "get pids for files");
-	pids = pk_proc_get_pids_for_filenames (proc, files);
-	egg_test_assert (test, pids->len > 0);
-	g_ptr_array_unref (pids);
-
 	g_object_unref (proc);
 
 	egg_test_end (test);
diff --git a/src/pk-proc.h b/src/pk-proc.h
index 8d03964..1c1ba59 100644
--- a/src/pk-proc.h
+++ b/src/pk-proc.h
@@ -46,12 +46,16 @@ typedef struct
 	GObjectClass	parent_class;
 } PkProcClass;
 
-GType		 pk_proc_get_type		(void);
-PkProc		*pk_proc_new			(void);
-
-gboolean	 pk_proc_refresh		(PkProc		*proc);
-GPtrArray	*pk_proc_get_pids_for_filenames	(PkProc		*proc,
-						 gchar		**filenames);
+GType		 pk_proc_get_type			(void);
+PkProc		*pk_proc_new				(void);
+
+gboolean	 pk_proc_refresh			(PkProc		*proc);
+gchar		*pk_proc_get_process_for_cmdlines	(PkProc		*proc,
+							 gchar		**filenames);
+gboolean	 pk_proc_find_execs			(PkProc		*proc,
+							 gchar		**filenames);
+gboolean	 pk_proc_find_exec			(PkProc		*proc,
+							 const gchar	*filename);
 
 G_END_DECLS
 
commit c866f2a80eee6757c0b093313b8b54f99c731088
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 15 13:22:28 2009 +0000

    trivial: use g_ptr_array_new_with_free_func() in PkTransactionExtra

diff --git a/src/pk-transaction-extra.c b/src/pk-transaction-extra.c
index 221ebad..8ad69d9 100644
--- a/src/pk-transaction-extra.c
+++ b/src/pk-transaction-extra.c
@@ -1018,7 +1018,6 @@ pk_transaction_extra_check_library_restart_pre (PkTransactionExtra *extra, gchar
 	}
 
 	/* reset */
-	g_ptr_array_foreach (extra->priv->files_list, (GFunc) g_free, NULL);
 	g_ptr_array_set_size (extra->priv->files_list, 0);
 
 	if (extra->priv->pids != NULL) {
@@ -1103,8 +1102,7 @@ pk_transaction_extra_finalize (GObject *object)
 	g_main_loop_unref (extra->priv->loop);
 	sqlite3_close (extra->priv->db);
 	g_hash_table_unref (extra->priv->hash);
-	g_ptr_array_foreach (extra->priv->files_list, (GFunc) g_free, NULL);
-	g_ptr_array_free (extra->priv->files_list, TRUE);
+	g_ptr_array_unref (extra->priv->files_list);
 
 	g_object_unref (extra->priv->backend);
 	g_object_unref (extra->priv->lsof);
@@ -1164,7 +1162,7 @@ pk_transaction_extra_init (PkTransactionExtra *extra)
 	extra->priv->db = NULL;
 	extra->priv->pids = NULL;
 	extra->priv->hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
-	extra->priv->files_list = g_ptr_array_new ();
+	extra->priv->files_list = g_ptr_array_new_with_free_func (g_free);
 
 	extra->priv->finished_id =
 		g_signal_connect (extra->priv->backend, "finished",
commit 4f001b20e5ca2e4f46ad5e6425fc6ccf0a4222a5
Author: troubi51 <troubi51 at fedoraproject.org>
Date:   Tue Dec 15 12:06:36 2009 +0000

    Sending translation for French

diff --git a/po/fr.po b/po/fr.po
index 8e4f5df..208c25a 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,185 +6,200 @@
 # Claude Paroz <claude at 2xlibre.net>, 2008.
 # Pablo Martin-Gomez <pablo.martin-gomez at laposte.net>, 2008.
 # Thomas Canniot <thomas.canniot at mrtomlinux.org>, 2009.
+# Corentin Perard <corentin.perard at gmail.com>, 2009.
 msgid ""
 msgstr ""
 "Project-Id-Version: PackageKit HEAD\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-08-24 11:06+0100\n"
-"PO-Revision-Date: 2009-04-11 17:43+0200\n"
-"Last-Translator: Thomas Canniot <thomas.canniot at mrtomlinux.org>\n"
-"Language-Team: French <fedora-trans-fr at redhat.com>\n"
+"POT-Creation-Date: 2009-12-11 08:34+0000\n"
+"PO-Revision-Date: 2009-12-13 13:28+0100\n"
+"Last-Translator: Corentin Perard <corentin.perard at gmail.com>\n"
+"Language-Team: Français (France) <fedora-trans-fr at redhat.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Lokalize 0.3\n"
+"X-Generator: Lokalize 1.0\n"
+"X-Poedit-Language: French\n"
+"X-Poedit-Country: FRANCE\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:235
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175
+#: ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "Transaction"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:237
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "Heure du système"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:239
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "Réussi"
 
-#. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:239 ../client/pk-console.c:406
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "Vrai"
 
-#: ../client/pk-console.c:239 ../client/pk-console.c:406
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "Faux"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:241 ../src/pk-polkit-action-lookup.c:327
+#: ../client/pk-console.c:181
+#: ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "Rôle"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "Durée"
 
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(secondes)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:250 ../src/pk-polkit-action-lookup.c:341
+#: ../client/pk-console.c:190
+#: ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "Ligne de commande"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ID utilisateur"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:259
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "Nom d'utilisateur"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:263
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "Nom réel"
 
-#: ../client/pk-console.c:271
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "Paquets concernés :"
 
-#: ../client/pk-console.c:273
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "Paquets concernés : aucun"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:298
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "Distribution"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:300
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "Type"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:302 ../client/pk-console.c:325
+#: ../client/pk-console.c:252
+#: ../client/pk-console.c:291
 msgid "Summary"
 msgstr "Résumé"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:314
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "Catégorie"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:316
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:319
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "Parent"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:322
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "Nom"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:328
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "Icône"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "Informations complémentaires à propos de la mise à jour :"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
+#. TRANSLATORS: the package that is not signed by a known key
+#. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:345 ../src/pk-polkit-action-lookup.c:352
-#, fuzzy
+#: ../client/pk-console.c:346
+#: ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "Paquet"
-msgstr[1] "Paquet"
+msgstr[1] "Paquets"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:348
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "Mises à jour"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:352
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "Obsolètes"
 
 #. TRANSLATORS: details about the update, the vendor URLs
-#: ../client/pk-console.c:356
+#. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
+#: ../client/pk-console.c:357
+#: ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "Fournisseur"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:360
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:364
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:368
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "Redémarrage"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:372
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "Informations de mise à jour"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:376
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "Changements"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:380
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "État"
 
@@ -194,1038 +209,824 @@ msgid "Issued"
 msgstr "Distribué"
 
 #. TRANSLATORS: details about the update, date the update was updated
-#: ../client/pk-console.c:390
+#. TRANSLATORS: The action of the package, in past tense
+#: ../client/pk-console.c:389
+#: ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "Mis à jour"
 
-#: ../client/pk-console.c:477 ../client/pk-console.c:479
-msgid "Percentage"
-msgstr "Pourcentage"
+#. TRANSLATORS: if the repo is enabled
+#: ../client/pk-console.c:425
+msgid "Enabled"
+msgstr ""
 
-#: ../client/pk-console.c:479
-msgid "Unknown"
-msgstr "Inconnu"
+#. TRANSLATORS: if the repo is disabled
+#: ../client/pk-console.c:428
+msgid "Disabled"
+msgstr ""
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:521
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "Redémarrage du système requis par :"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:524
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "Redémarrage de la session requis par :"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:527
-#, fuzzy
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
-msgstr "Redémarrage du système requis par :"
+msgstr "Redémarrage du système (sécurité) requis par :"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:530
-#, fuzzy
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
-msgstr "Redémarrage de la session requis par :"
+msgstr "Redémarrage de la session (sécurité) requis :"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:533
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "Redémarrage de l'application requis par :"
 
-#. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:588
-msgid "Please restart the computer to complete the update."
-msgstr "Veuillez redémarrer l'ordinateur pour finir la mise à jour."
-
-#. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:591
-msgid "Please logout and login to complete the update."
-msgstr "Veuillez vous reconnecter pour finir la mise à jour."
-
-#. TRANSLATORS: a package needs to restart the application
-#: ../client/pk-console.c:594
-msgid "Please restart the application as it is being used."
-msgstr "Veuillez redémarrer l'application car elle est en cours d'utilisation"
+#. TRANSLATORS: This a list of details about the package
+#: ../client/pk-console.c:507
+msgid "Package description"
+msgstr "Description du paquet"
 
-#. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:597
-#, fuzzy
-msgid ""
-"Please restart the computer to complete the update as important security "
-"updates have been installed."
-msgstr "Veuillez redémarrer l'ordinateur pour finir la mise à jour."
+#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
+#: ../client/pk-console.c:538
+msgid "Message:"
+msgstr "Message :"
 
-#. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:600
-#, fuzzy
-msgid ""
-"Please logout and login to complete the update as important security updates "
-"have been installed."
-msgstr "Veuillez vous reconnecter pour finir la mise à jour."
+#. TRANSLATORS: This where the package has no files
+#: ../client/pk-console.c:559
+msgid "No files"
+msgstr "Aucun fichier"
 
-#. TRANSLATORS: The package is already installed on the system
-#: ../client/pk-console.c:727
-#, c-format
-msgid "The package %s is already installed"
-msgstr "Le paquet %s est déjà installé"
+#. TRANSLATORS: This a list files contained in the package
+#: ../client/pk-console.c:564
+msgid "Package files"
+msgstr "Fichiers du paquet"
 
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:735
-#, c-format
-msgid "The package %s could not be installed: %s"
-msgstr "Le paquet %s n'a pas pu être installé : %s"
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "Pourcentage"
 
-#. TRANSLATORS: There was a programming error that shouldn't happen. The detailed error follows
-#: ../client/pk-console.c:760 ../client/pk-console.c:783
-#: ../client/pk-console.c:879 ../client/pk-console.c:996
-#: ../client/pk-tools-common.c:62 ../client/pk-tools-common.c:81
-#: ../client/pk-tools-common.c:89
-#, c-format
-msgid "Internal error: %s"
-msgstr "Erreur interne : %s"
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "État"
 
-#. TRANSLATORS: There was an error installing the packages. The detailed error follows
-#: ../client/pk-console.c:768 ../client/pk-console.c:1392
-#, c-format
-msgid "This tool could not install the packages: %s"
-msgstr "Cet outil n'a pas pu installer les paquets : %s"
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr ""
 
-#. TRANSLATORS: There was an error installing the files. The detailed error follows
-#: ../client/pk-console.c:791
-#, c-format
-msgid "This tool could not install the files: %s"
-msgstr "Cet outil n'a pas pu installer les fichiers : %s"
+#. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
+#: ../client/pk-console.c:685
+msgid "Fatal error"
+msgstr "Erreur fatale"
 
-#. TRANSLATORS: The package name was not found in the installed list. The detailed error follows
-#: ../client/pk-console.c:847
-#, c-format
-msgid "This tool could not remove %s: %s"
-msgstr "Cet outil n'a pas pu supprimer %s : %s"
+#. TRANSLATORS: the transaction failed in a way we could not expect
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
+msgid "The transaction failed"
+msgstr "La transaction a échoué"
 
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:870 ../client/pk-console.c:908
-#: ../client/pk-console.c:941
-#, c-format
-msgid "This tool could not remove the packages: %s"
-msgstr "Cet outil n'a pas pu supprimer les paquets : %s"
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "Il n'y a pas de mise à jour disponible pour le moment."
 
-#. TRANSLATORS: When removing, we might have to remove other dependencies
-#: ../client/pk-console.c:920
-msgid "The following packages have to be removed:"
-msgstr "Les paquets suivants vont être désinstallés :"
+#. TRANSLATORS: a package needs to restart their system
+#: ../client/pk-console.c:808
+msgid "Please restart the computer to complete the update."
+msgstr "Veuillez redémarrer l'ordinateur pour finir la mise à jour."
 
-#. TRANSLATORS: We are checking if it's okay to remove a list of packages
-#: ../client/pk-console.c:927
-msgid "Proceed removing additional packages?"
-msgstr "Procéder à la suppression des paquets additionnels ?"
+#. TRANSLATORS: a package needs to restart the session
+#: ../client/pk-console.c:811
+msgid "Please logout and login to complete the update."
+msgstr "Veuillez vous reconnecter pour finir la mise à jour."
 
-#. TRANSLATORS: We did not remove any packages
-#: ../client/pk-console.c:932
-msgid "The package removal was canceled!"
-msgstr "La suppression de paquet a été annulée !"
+#. TRANSLATORS: a package needs to restart their system (due to security)
+#: ../client/pk-console.c:814
+msgid "Please restart the computer to complete the update as important security updates have been installed."
+msgstr "Vous devez redémarrer l'ordinateur pour finir la mise à jour car des mises à jour de sécurité importantes ont été installées."
 
-#. TRANSLATORS: The package name was not found in any software sources
-#: ../client/pk-console.c:973
-#, c-format
-msgid "This tool could not download the package %s as it could not be found"
-msgstr ""
-"Cet outil n'a pas pu télécharger le paquet %s car il n'a pas pu être trouvé"
+#. TRANSLATORS: a package needs to restart the session (due to security)
+#: ../client/pk-console.c:817
+msgid "Please logout and login to complete the update as important security updates have been installed."
+msgstr "Vous devez vous reconnecter pour finir la mise à jour car des mises à jour de sécurité importantes ont été installées."
 
-#. TRANSLATORS: Could not download the packages for some reason. The detailed error follows
-#: ../client/pk-console.c:1004
-#, c-format
-msgid "This tool could not download the packages: %s"
-msgstr "Cet outil n'a pas pu télécharger les paquets : %s"
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
+#: ../client/pk-console.c:840,
+#: c-format
+msgid "This tool could not find any available package: %s"
+msgstr "Cet outil n'a pas pu trouver de paquet disponible : %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1031 ../client/pk-console.c:1040
-#, c-format
-msgid "This tool could not update %s: %s"
-msgstr "Cet outil n'a pas pu mettre à jour %s : %s"
+#: ../client/pk-console.c:868,
+#: c-format
+msgid "This tool could not find the installed package: %s"
+msgstr "Cet outil n'a pas pu trouver le paquet installé : %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1062 ../client/pk-console.c:1070
-#, c-format
-msgid "This tool could not get the requirements for %s: %s"
-msgstr "Cet outil n'a pas pu satisfaire les exigences pour %s : %s"
+#: ../client/pk-console.c:896
+#: ../client/pk-console.c:924,
+#: c-format
+msgid "This tool could not find the package: %s"
+msgstr "Cet outil n'a pas pu trouver le paquet : %s"
 
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
-#: ../client/pk-console.c:1092 ../client/pk-console.c:1100
-#, c-format
-msgid "This tool could not get the dependencies for %s: %s"
-msgstr "Cet outil n'a pas pu satisfaire les dépendances pour %s : %s"
-
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
-#: ../client/pk-console.c:1122 ../client/pk-console.c:1130
-#, c-format
-msgid "This tool could not get package details for %s: %s"
-msgstr ""
-"Cet outil n'a pas pu obtenir les informations complémentaires du paquet %s : "
-"%s"
-
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1152
-#, c-format
-msgid "This tool could not find the files for %s: %s"
-msgstr "Cet outil n'a pas pu trouver les fichiers pour %s : %s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1160
-#, c-format
-msgid "This tool could not get the file list for %s: %s"
-msgstr "Cet outil n'a pas pu obtenir la liste des fichiers pour %s : %s"
-
-#. TRANSLATORS: There was an error getting the list of packages. The filename follows
-#: ../client/pk-console.c:1182
-#, c-format
-msgid "File already exists: %s"
-msgstr "Le fichier existe déjà : %s"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1187 ../client/pk-console.c:1243
-#: ../client/pk-console.c:1318
-msgid "Getting package list"
-msgstr "Récupération de la liste des paquets"
-
-#. TRANSLATORS: There was an error getting the list of packages. The detailed error follows
-#: ../client/pk-console.c:1193 ../client/pk-console.c:1249
-#: ../client/pk-console.c:1324
-#, c-format
-msgid "This tool could not get package list: %s"
-msgstr "Cet outil n'a pas pu récupérer la liste des paquets : %s"
-
-#. TRANSLATORS: There was an error saving the list
-#: ../client/pk-console.c:1204
-#, c-format
-msgid "Failed to save to disk"
-msgstr "Impossible de sauvegarder sur le disque"
-
-#. TRANSLATORS: There was an error getting the list. The filename follows
-#: ../client/pk-console.c:1238 ../client/pk-console.c:1313
-#, c-format
-msgid "File does not exist: %s"
-msgstr "Le fichier n'existe pas : %s"
-
-#. TRANSLATORS: header to a list of packages newly added
-#: ../client/pk-console.c:1270
-msgid "Packages to add"
-msgstr "Paquets à ajouter"
-
-#. TRANSLATORS: header to a list of packages removed
-#: ../client/pk-console.c:1278
-msgid "Packages to remove"
-msgstr "Paquets à supprimer"
-
-#. TRANSLATORS: We didn't find any differences
-#: ../client/pk-console.c:1346
-#, c-format
-msgid "No new packages need to be installed"
-msgstr "Aucun nouveau paquet n'a besoin d'être installé"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1352
-msgid "To install"
-msgstr "À installer"
-
-#. TRANSLATORS: searching takes some time....
-#: ../client/pk-console.c:1364
-msgid "Searching for package: "
-msgstr "Recherche du paquet :"
-
-#. TRANSLATORS: package was not found -- this is the end of a string ended in ...
-#: ../client/pk-console.c:1368
-msgid "not found."
-msgstr "non trouvé."
-
-#. TRANSLATORS: We didn't find any packages to install
-#: ../client/pk-console.c:1379
-#, c-format
-msgid "No packages can be found to install"
-msgstr "Aucun paquet à installer n'a été trouvé"
-
-#. TRANSLATORS: installing new packages from package list
-#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
-#: ../client/pk-console.c:1385
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:886
-#, c-format
-msgid "Installing packages"
-msgstr "Installation des paquets"
-
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1421
-#, c-format
-msgid "This tool could not find the update details for %s: %s"
-msgstr ""
-"Cet outil n'a pas pu trouver les informations de mise à jour pour %s : %s"
-
-#. TRANSLATORS: There was an error getting the details about the update for the package. The detailed error follows
-#: ../client/pk-console.c:1429
-#, c-format
-msgid "This tool could not get the update details for %s: %s"
-msgstr ""
-"Cet outil n'a pas pu obtenir les informations de mise à jour pour %s : %s"
-
-#. TRANSLATORS: This was an unhandled error, and we don't have _any_ context
-#: ../client/pk-console.c:1460
-msgid "Error:"
-msgstr "Erreur :"
-
-#. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:1474
-msgid "Package description"
-msgstr "Description du paquet"
-
-#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:1490
-msgid "Message:"
-msgstr "Message :"
-
-#. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:1518
-msgid "Package files"
-msgstr "Fichiers du paquet"
-
-#. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:1526
-msgid "No files"
-msgstr "Aucun fichier"
-
-#. TRANSLATORS: This a request for a GPG key signature from the backend, which the client will prompt for later
-#: ../client/pk-console.c:1549
-msgid "Repository signature required"
-msgstr "Signature du dépôt nécessaire"
-
-#. TRANSLATORS: This a prompt asking the user to import the security key
-#: ../client/pk-console.c:1559
-msgid "Do you accept this signature?"
-msgstr "Acceptez-vous cette signature ?"
-
-#. TRANSLATORS: This is where the user declined the security key
-#: ../client/pk-console.c:1563
-msgid "The signature was not accepted."
-msgstr "La signature n'a pas été acceptée."
-
-#. TRANSLATORS: This a request for a EULA
-#: ../client/pk-console.c:1597
-msgid "End user license agreement required"
-msgstr "Approbation de la licence de l'utilisateur final nécessaire"
-
-#. TRANSLATORS: This a prompt asking the user to agree to the license
-#: ../client/pk-console.c:1604
-msgid "Do you agree to this license?"
-msgstr "Acceptez-vous cette licence ?"
-
-#. TRANSLATORS: This is where the user declined the license
-#: ../client/pk-console.c:1608
-msgid "The license was refused."
-msgstr "La licence a été refusée."
+#: ../client/pk-console.c:952
+#: ../client/pk-console.c:980
+#: ../client/pk-console.c:1008
+#: ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064,
+#: c-format
+msgid "This tool could not find all the packages: %s"
+msgstr "Cet outil n'a pas pu trouver tous les paquets : %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:1637
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "Le démon a échoué en cours de transaction."
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:1690
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "Interface PackageKit en console"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:1692
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "Sous-commandes :"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:1785 ../client/pk-generate-pack.c:185
-#: ../client/pk-monitor.c:128
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "Affiche des informations de débogage"
+#. TRANSLATORS: we keep a database updated with the time that an action was last executed
+#: ../client/pk-console.c:1208
+msgid "Failed to get the time since this action was last completed"
+msgstr "Impossible de déterminer le moment où cette action a été accomplie pour la dernière fois"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:1788 ../client/pk-monitor.c:130
+#: ../client/pk-console.c:1244
+#: ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "Affiche la version du programme et quitte"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:1791
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "Sélectionne le filtre, par ex. : installé"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:1794
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "Quitte sans attendre que la tâche soit terminée"
 
-#. TRANSLATORS: This is when we could not connect to the system bus, and is fatal
-#: ../client/pk-console.c:1821
-msgid "This tool could not connect to system DBUS."
-msgstr "Cet outil n'a pas pu se connecter au système DBUS."
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr ""
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr ""
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr ""
+
+#. TRANSLATORS: we failed to contact the daemon
+#: ../client/pk-console.c:1281
+msgid "Failed to contact PackageKit"
+msgstr "Impossible de contacter PackageKit"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1911
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "Le filtre indiqué était invalide"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1930
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "Vous devez indiquer un type de recherche, par exemple le nom"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1937 ../client/pk-console.c:1946
-#: ../client/pk-console.c:1955 ../client/pk-console.c:1964
+#: ../client/pk-console.c:1365
+#: ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389
+#: ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "Vous devez indiquer un terme à rechercher"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1971
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "Type de recherche incorrect"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1977
-msgid "A package name or filename to install is required"
-msgstr "Vous devez indiquer un nom de paquet ou de fichier à installer"
+#: ../client/pk-console.c:1417
+msgid "A package name to install is required"
+msgstr "Vous devez indiquer un nom de paquet à installer"
+
+#. TRANSLATORS: the user did not specify what they wanted to install
+#: ../client/pk-console.c:1426
+msgid "A filename to install is required"
+msgstr "Vous devez indiquer un nom de fichier à installer"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1986
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "Vous devez indiquer un type, un key_id et un package_id"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1995
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "Vous devez indiquer un nom de paquet à supprimer"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:2003
-#, fuzzy
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
-msgstr ""
-"Vous devez indiquer le répertoire de destination puis les noms des paquets à "
-"télécharger"
+msgstr "Vous devez indiquer un répertoire de destination ainsi que les noms des paquets à télécharger"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:2010
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "Répertoire non trouvé"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2018
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "Vous devez indiquer un identifiant de licence (eula-id)"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2028
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "Vous devez indiquer un identifiant de transaction (tid)"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:2045
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "Vous devez indiquer un nom de paquet à résoudre"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:2054 ../client/pk-console.c:2063
+#: ../client/pk-console.c:1517
+#: ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "Vous devez indiquer un nom de dépôt"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:2072
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "Vous devez indiquer un nom de dépôt, un paramètre et une valeur"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:2086
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "Vous devez indiquer une action, par exemple « update-system »"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:2093
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "Vous devez indiquer un rôle correct"
 
-#. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:2100
-msgid "Failed to get the time since this action was last completed"
-msgstr ""
-"Impossible de déterminer le moment où cette action a été accomplie pour la "
-"dernière fois"
-
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:2110 ../client/pk-console.c:2122
-#: ../client/pk-console.c:2131 ../client/pk-console.c:2149
-#: ../client/pk-console.c:2158 ../client/pk-generate-pack.c:241
+#: ../client/pk-console.c:1573
+#: ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597
+#: ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626
+#: ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "Vous devez indiquer un nom de paquet"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:2140
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "Vous devez indiquer une chaîne de fourniture de paquet"
 
-#. TRANSLATORS: The user didn't specify a filename to create as a list
-#: ../client/pk-console.c:2167
-msgid "A list file name to create is required"
-msgstr "Vous devez indiquer un nom de fichier à la liste à créer"
-
-#. TRANSLATORS: The user didn't specify a filename to open as a list
-#: ../client/pk-console.c:2177 ../client/pk-console.c:2187
-msgid "A list file to open is required"
-msgstr "Vous devez indiquer un fichier liste à ouvrir"
-
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:2241
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "L'option « %s » n'est pas prise en charge"
 
-#. TRANSLATORS: User does not have permission to do this
-#: ../client/pk-console.c:2254
-msgid "Incorrect privileges for this operation"
-msgstr "Les privilèges dont vous disposez sont incorrects pour cette opération"
-
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:2257
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "La commande a échoué"
 
-#. TRANSLATORS: This is the state of the transaction
-#: ../client/pk-generate-pack.c:101
-msgid "Downloading"
-msgstr "Téléchargement"
-
-#. TRANSLATORS: This is when the main packages are being downloaded
-#: ../client/pk-generate-pack.c:121
-msgid "Downloading packages"
-msgstr "Téléchargement des paquets"
-
-#. TRANSLATORS: This is when the dependency packages are being downloaded
-#: ../client/pk-generate-pack.c:126
-msgid "Downloading dependencies"
-msgstr "Téléchargement des dépendances"
-
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:188
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "Définisez le nom du fichier de dépendances à exclure"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:191
-msgid ""
-"The output file or directory (the current directory is used if ommitted)"
-msgstr ""
-"Le fichier ou le répertoire de sortie (le répertoire courant est utilisé si "
-"omis)"
+#: ../client/pk-generate-pack.c:240
+msgid "The output file or directory (the current directory is used if ommitted)"
+msgstr "Le fichier ou le répertoire de sortie (le répertoire courant est utilisé si omis)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:194
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "Le paquet à intégrer au le service pack"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:197
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "Mettre toutes les mises à jour disponibles dans le service pack"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:225
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "Ni l'option --package ni l'option --updates ont été sélectionnées."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:233
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "Deux options sélectionnées."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:249
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "Vous devez indiquer un répertoire ou un nom de fichier de sortie"
 
+#. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
+#: ../client/pk-generate-pack.c:324
+msgid "The dameon failed to startup"
+msgstr ""
+
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:267 ../client/pk-generate-pack.c:273
+#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "Le gestionnaire de paquets ne peut pas effectuer ce type d'opération."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:280
-msgid ""
-"Service packs cannot be created as PackageKit was not built with libarchive "
-"support."
+#: ../client/pk-generate-pack.c:348
+msgid "Service packs cannot be created as PackageKit was not built with libarchive support."
 msgstr ""
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:291
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
-msgstr ""
-"Si un nom de fichier est précisé, le nom du service pack doit se terminer par"
+msgstr "Si un nom de fichier est précisé, le nom du service pack doit se terminer par"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:307
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "Un pack avec un nom identique existe déjà, voulez-vous le remplacer ?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:310
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "Le pack n'a pas été remplacé."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:323
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "Impossible de créer un répertoire :"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:333
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "Impossible d'ouvrir la liste des paquets."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:344
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "Recherche du nom du paquet."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "Impossible de trouver le paquet « %s » : %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:365
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "Création du service pack..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:372
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "Service pack crée « %s »"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:377
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "Impossible de créer « %s » : %s"
 
+#: ../client/pk-monitor.c:210
+msgid "Failed to get daemon state"
+msgstr "Impossible d'obtenir l'état du service"
+
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:146
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "Contrôleur PackageKit"
 
-#: ../client/pk-monitor.c:183
-msgid "Cannot show the list of transactions"
-msgstr ""
-
-#. TRANSLATORS: The package was not found in any software sources
-#: ../client/pk-tools-common.c:118
-#, c-format
-msgid "The package could not be found"
-msgstr "Le paquet n'a pas pu être trouvé"
-
-#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../client/pk-tools-common.c:130
-msgid "More than one package matches:"
-msgstr "Il y a plusieurs paquets correspondants :"
-
-#. TRANSLATORS: This finds out which package in the list to use
-#: ../client/pk-tools-common.c:137
-msgid "Please choose the correct package: "
-msgstr "Veuillez choisir le paquet correct : "
-
-#: ../client/pk-tools-common.c:162
-#, c-format
-msgid "Please enter a number from 1 to %i: "
-msgstr "Veuillez saisir un nombre entre 1 et %i : "
-
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:466
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "Obtention des informations sur les paquets..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:472
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "Exécuter %s"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:478
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "Version installée"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:486
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "Exécuter la version %s maintenant"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:492
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "Exécuter maintenant"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:498
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "Mettre à jour vers la version %s"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:504
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "Installer %s maintenant"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:507
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "Version"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:512
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "Aucun paquet trouvé pour système"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "Installation..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:349
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr ""
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:353
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr ""
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:357
-#, fuzzy
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
-msgstr "Recherche du nom du paquet."
+msgstr "Attente du verrou du gestionnaire de paquets."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
-#, fuzzy
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
-msgstr "Téléchargement des paquets"
+msgstr "Téléchargement de la liste des paquets."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:420
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "Impossible de rechercher des fichiers"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:557
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "Impossible de lancer :"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "Impossible d'installer les paquets"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "Commande inconnue de PackageKit"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "Commande non trouvée"
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "Commande similaire :"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "Exécuter la commande similaire :"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "Commandes similaires :"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "Veuillez sélectionner une commande à exécuter"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:764
 msgid "The package providing this file is:"
 msgstr "Le paquet fournissant ce fichier est :"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:769
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "Voulez-vous installer le paquet « %s » qui fournit la commande « %s » ?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:793
 msgid "Packages providing this file are:"
 msgstr "Les paquets fournissant ces fichiers sont :"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:803
 msgid "Suitable packages are:"
 msgstr "Les paquets appropriés sont :"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:812
 msgid "Please choose a package to install"
 msgstr "Veuillez choisir un paquet à installer"
 
 #. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:187
-#, fuzzy
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
 msgid "Starting install"
-msgstr "À installer"
+msgstr "Démarrage de l'installation"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:397
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409,
+#: c-format
 msgid "Failed to find the package %s, or already installed: %s"
-msgstr "Le paquet %s est déjà installé"
+msgstr "Impossible de trouver le paquet %s, ou celui-ci est déjà installé : %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:553
-msgid ""
-"Don't actually install any packages, only simulate what would be installed"
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr ""
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr ""
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:559
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr ""
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:577
-#, fuzzy
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
-msgstr "Interface PackageKit en console"
+msgstr "Installateur d'information de débogage PackageKit"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556,
+#: c-format
 msgid "ERROR: Specify package names to install."
-msgstr "Vous devez indiquer un paquet ou un fichier à installer"
+msgstr "ERREUR : Veuillez indiquer les noms des paquets à installer."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:623
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592,
+#: c-format
 msgid "Getting sources list"
-msgstr "Récupération de la liste des paquets"
+msgstr "Récupération de la liste des sources"
+
+#. TRANSLATORS: operation was not successful
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
+msgid "FAILED."
+msgstr ""
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:641
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:681
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:716
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:800
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:844
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:911
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:955
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr ""
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr ""
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:651
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr ""
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:684
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr ""
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:691
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr ""
 
-#. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:785
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:829
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:896
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:940
-msgid "FAILED."
-msgstr ""
-
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:719
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr ""
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:726
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702,
+#: c-format
 msgid "Finding debugging packages"
-msgstr "Recherche du nom du paquet."
+msgstr "Recherche des paquets de débogage"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:738
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714,
+#: c-format
 msgid "Failed to find the package %s: %s"
-msgstr "Impossible de trouver le paquet « %s » : %s"
+msgstr "Impossible de trouver le paquet %s : %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737,
+#: c-format
 msgid "Failed to find the debuginfo package %s: %s"
-msgstr "Impossible de trouver le paquet « %s » : %s"
+msgstr "Impossible de trouver le paquet de débogage %s : %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:789
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765,
+#: c-format
 msgid "Found no packages to install."
-msgstr "Aucun nouveau paquet n'a besoin d'être installé"
+msgstr "Aucun paquet à installer n'a été trouvé."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779,
+#: c-format
 msgid "Found %i packages:"
-msgstr "Téléchargement des paquets"
+msgstr "%i paquets trouvés :"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:819
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr ""
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:832
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808,
+#: c-format
 msgid "Could not find dependant packages: %s"
-msgstr "Impossible de trouver un paquet correspondant"
+msgstr "Impossible de trouver les paquets dépendants : %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr ""
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:852
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
+#, c-format
 msgid "No extra packages required."
-msgstr "Vous devez indiquer un nom de paquet"
+msgstr "Aucun paquet supplémentaire n'est nécessaire."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:861
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837,
+#: c-format
 msgid "Found %i packages to install:"
-msgstr "Aucun nouveau paquet n'a besoin d'être installé"
+msgstr "%i paquets à installer trouvés"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
+#, c-format
 msgid "Not installing packages in simulate mode"
+msgstr "Les paquets ne sont pas installés en mode simulation"
+
+#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
+#. TRANSLATORS: transaction state, installing packages
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#, c-format
+msgid "Installing packages"
 msgstr "Installation des paquets"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:899
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875,
+#: c-format
 msgid "Could not install packages: %s"
-msgstr "Cet outil n'a pas pu installer les paquets : %s"
+msgstr "Impossible d'installer les paquets : %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr ""
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:943
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr ""
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:958
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr ""
 
 #. TRANSLATORS: couldn't open device to write
 #: ../contrib/device-rebind/pk-device-rebind.c:61
-#, fuzzy
 msgid "Failed to open file"
-msgstr "Impossible de rechercher des fichiers"
+msgstr "Impossible d'ouvrir le fichier"
 
 #. TRANSLATORS: could not write to the device
 #: ../contrib/device-rebind/pk-device-rebind.c:70
-#, fuzzy
 msgid "Failed to write to the file"
-msgstr "Impossible de rechercher des fichiers"
+msgstr "Impossible d'écrire dans le fichier"
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:110
 #: ../contrib/device-rebind/pk-device-rebind.c:147
-#, fuzzy
 msgid "Failed to write to device"
-msgstr "Impossible de sauvegarder sur le disque"
+msgstr "Impossible d'écrire sur le périphérique"
 
 #. TRANSLATORS: the device could not be found in sysfs
 #: ../contrib/device-rebind/pk-device-rebind.c:175
-#, fuzzy
 msgid "Device could not be found"
-msgstr "Le paquet n'a pas pu être trouvé"
+msgstr "Le périphérique n'a pas pu être trouvé"
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:202
-#, fuzzy
 msgid "Failed to unregister driver"
-msgstr "Impossible de créer un répertoire :"
+msgstr "Impossible de désinscrire le pilote"
 
 #. TRANSLATORS: we failed to bind the old driver
 #: ../contrib/device-rebind/pk-device-rebind.c:211
-#, fuzzy
 msgid "Failed to register driver"
-msgstr "Impossible de créer un répertoire :"
+msgstr "Impossible d'inscrire le pilote"
 
 #. TRANSLATORS: user did not specify a device sysfs path that exists
 #: ../contrib/device-rebind/pk-device-rebind.c:260
-#, fuzzy
 msgid "Device path not found"
-msgstr "Répertoire non trouvé"
+msgstr "Chemin du périphérique introuvable"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:268
 msgid "Incorrect device path specified"
 msgstr ""
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "Affiche des informations de débogage"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1238,15 +1039,13 @@ msgstr ""
 
 #. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
 #: ../contrib/device-rebind/pk-device-rebind.c:314
-#, fuzzy
 msgid "PackageKit Device Reloader"
-msgstr "Service Pack PackageKit"
+msgstr "Rechargeur de périphérique PackageKit"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:322
-#, fuzzy
 msgid "You need to specify at least one valid device path"
-msgstr "Vous devez indiquer une date"
+msgstr "Vous devez indiquer au moins un chemin valide vers le périphérique"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:332
@@ -1260,9 +1059,8 @@ msgstr ""
 
 #. TRANSLATORS: user did not specify a device sysfs path that exists
 #: ../contrib/device-rebind/pk-device-rebind.c:346
-#, fuzzy
 msgid "Failed to verify device path"
-msgstr "Impossible de rechercher des fichiers"
+msgstr "Impossible de vérifier le chemin du périphérique"
 
 #. TRANSLATORS: we're going to try
 #: ../contrib/device-rebind/pk-device-rebind.c:360
@@ -1271,9 +1069,8 @@ msgstr ""
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:365
-#, fuzzy
 msgid "Failed to rebind device"
-msgstr "Impossible de créer un répertoire :"
+msgstr "Impossible de rattacher le périphérique :"
 
 #: ../data/packagekit-catalog.xml.in.h:1
 msgid "PackageKit Catalog"
@@ -1287,6 +1084,634 @@ msgstr "Liste des paquets de PackageKit"
 msgid "PackageKit Service Pack"
 msgstr "Service Pack PackageKit"
 
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
+#, c-format
+msgid "Please enter a number from 1 to %i: "
+msgstr "Veuillez saisir un nombre entre 1 et %i : "
+
+#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
+msgid "More than one package matches:"
+msgstr "Il y a plusieurs paquets correspondants :"
+
+#. TRANSLATORS: This finds out which package in the list to use
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
+msgid "Please choose the correct package: "
+msgstr "Veuillez choisir le paquet correct : "
+
+#. TRANSLATORS: This is when the transaction status is not known
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
+msgid "Unknown state"
+msgstr "État inconnu"
+
+#. TRANSLATORS: transaction state, the daemon is in the process of starting
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
+msgid "Starting"
+msgstr "Démarrage"
+
+#. TRANSLATORS: transaction state, the transaction is waiting for another to complete
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
+msgid "Waiting in queue"
+msgstr ""
+
+#. TRANSLATORS: transaction state, just started
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
+msgid "Running"
+msgstr ""
+
+#. TRANSLATORS: transaction state, is querying data
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
+msgid "Querying"
+msgstr ""
+
+#. TRANSLATORS: transaction state, getting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
+msgid "Getting information"
+msgstr "Obtention d'informations"
+
+#. TRANSLATORS: transaction state, removing packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
+msgid "Removing packages"
+msgstr "Suppression des paquets"
+
+#. TRANSLATORS: transaction state, downloading package files
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
+msgid "Downloading packages"
+msgstr "Téléchargement des paquets"
+
+#. TRANSLATORS: transaction state, refreshing internal lists
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
+msgid "Refreshing software list"
+msgstr "Mise à jour de la liste des logiciels"
+
+#. TRANSLATORS: transaction state, installing updates
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
+msgid "Installing updates"
+msgstr "Installation des mises à jour"
+
+#. TRANSLATORS: transaction state, removing old packages, and cleaning config files
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
+msgid "Cleaning up packages"
+msgstr "Nettoyage des paquets"
+
+#. TRANSLATORS: transaction state, obsoleting old packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
+msgid "Obsoleting packages"
+msgstr "Marquage des paquets comme obsolètes"
+
+#. TRANSLATORS: transaction state, checking the transaction before we do it
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
+msgid "Resolving dependencies"
+msgstr "Résolution des dépendances"
+
+#. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
+msgid "Checking signatures"
+msgstr ""
+
+#. TRANSLATORS: transaction state, when we return to a previous system state
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
+msgid "Rolling back"
+msgstr ""
+
+#. TRANSLATORS: transaction state, when we're doing a test transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
+msgid "Testing changes"
+msgstr "Test des changements"
+
+#. TRANSLATORS: transaction state, when we're writing to the system package database
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
+msgid "Committing changes"
+msgstr ""
+
+#. TRANSLATORS: transaction state, requesting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
+msgid "Requesting data"
+msgstr ""
+
+#. TRANSLATORS: transaction state, all done!
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
+msgid "Finished"
+msgstr ""
+
+#. TRANSLATORS: transaction state, in the process of cancelling
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
+msgid "Cancelling"
+msgstr "Annulation"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
+msgid "Downloading repository information"
+msgstr ""
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
+msgid "Downloading list of packages"
+msgstr "Téléchargement de la liste des paquets"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
+msgid "Downloading file lists"
+msgstr "Téléchargement des listes de fichiers"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
+msgid "Downloading lists of changes"
+msgstr "Téléchargement des listes de changements"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
+msgid "Downloading groups"
+msgstr "Téléchargement des groupes"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
+msgid "Downloading update information"
+msgstr "Téléchargement des informations de mise à jour"
+
+#. TRANSLATORS: transaction state, repackaging delta files
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
+msgid "Repackaging files"
+msgstr "Ré-empaquetage des fichiers"
+
+#. TRANSLATORS: transaction state, loading databases
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
+msgid "Loading cache"
+msgstr "Chargement du cache"
+
+#. TRANSLATORS: transaction state, scanning for running processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
+msgid "Scanning applications"
+msgstr ""
+
+#. TRANSLATORS: transaction state, generating a list of packages installed on the system
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
+msgid "Generating package lists"
+msgstr "Génération des listes de paquets"
+
+#. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
+msgid "Waiting for package manager lock"
+msgstr "Attente du verrou du gestionnaire de paquets"
+
+#. TRANSLATORS: transaction state, waiting for user to type in a password
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
+msgid "Waiting for authentication"
+msgstr ""
+
+#. TRANSLATORS: transaction state, we are updating the list of processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
+msgid "Updating running applications"
+msgstr ""
+
+#. TRANSLATORS: transaction state, we are checking executable files currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
+msgid "Checking applications in use"
+msgstr ""
+
+#. TRANSLATORS: transaction state, we are checking for libraries currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
+msgid "Checking libraries in use"
+msgstr ""
+
+#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
+msgid "Copying files"
+msgstr "Copie des fichiers"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
+msgid "Trivial"
+msgstr ""
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
+msgid "Normal"
+msgstr ""
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
+msgid "Important"
+msgstr ""
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
+msgid "Security"
+msgstr ""
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
+msgid "Bug fix "
+msgstr ""
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
+msgid "Enhancement"
+msgstr ""
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
+msgid "Blocked"
+msgstr ""
+
+#. TRANSLATORS: The state of a package
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
+msgid "Installed"
+msgstr "Installé"
+
+#. TRANSLATORS: The state of a package, i.e. not installed
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
+msgid "Available"
+msgstr ""
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
+msgid "Downloading"
+msgstr "Téléchargement"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
+msgid "Updating"
+msgstr "Mise à jour"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
+msgid "Installing"
+msgstr "Installation"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
+msgid "Removing"
+msgstr ""
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
+msgid "Cleaning up"
+msgstr ""
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
+msgid "Obsoleting"
+msgstr "Marquage comme obsolète"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
+msgid "Reinstalling"
+msgstr "Réinstallation"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
+msgid "Downloaded"
+msgstr "Téléchargé"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
+msgid "Removed"
+msgstr ""
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
+msgid "Cleaned up"
+msgstr ""
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
+msgid "Obsoleted"
+msgstr "Rendu obsolète"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
+msgid "Reinstalled"
+msgstr "Réinstallé"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
+msgid "Unknown role type"
+msgstr ""
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
+msgid "Getting dependencies"
+msgstr "Obtention des dépendances"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
+msgid "Getting update details"
+msgstr "Obtention des détails de la mise à jour"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
+msgid "Getting details"
+msgstr "Obtention des détails"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#, fuzzy
+msgid "Getting requires"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
+msgid "Getting updates"
+msgstr "Obtention des mises à jour"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
+msgid "Searching by details"
+msgstr ""
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
+msgid "Searching by file"
+msgstr "Recherche par fichier"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#, fuzzy
+msgid "Searching groups"
+msgstr "Recherche du paquet :"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#, fuzzy
+msgid "Searching by name"
+msgstr "Recherche du paquet :"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#, fuzzy
+msgid "Installing files"
+msgstr "Installation des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
+msgid "Refreshing cache"
+msgstr ""
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#, fuzzy
+msgid "Updating packages"
+msgstr "Mettre à jour les paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#, fuzzy
+msgid "Updating system"
+msgstr "Informations de mise à jour"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
+msgid "Canceling"
+msgstr "Annulation"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#, fuzzy
+msgid "Getting repositories"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
+msgid "Enabling repository"
+msgstr ""
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#, fuzzy
+msgid "Setting data"
+msgstr "À installer"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
+msgid "Resolving"
+msgstr ""
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#, fuzzy
+msgid "Getting file list"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#, fuzzy
+msgid "Getting provides"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#, fuzzy
+msgid "Installing signature"
+msgstr "Installation des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#, fuzzy
+msgid "Getting packages"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
+msgid "Accepting EULA"
+msgstr "Validation du Contrat de Licence Utilisateur Final"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
+#, fuzzy
+msgid "Getting upgrades"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
+#, fuzzy
+msgid "Getting categories"
+msgstr "Récupération de la liste des paquets"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#, fuzzy
+msgid "Getting transactions"
+msgstr "Transaction"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
+#, fuzzy
+msgid "Simulating install"
+msgstr "À installer"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
+msgid "Simulating remove"
+msgstr ""
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
+msgid "Simulating update"
+msgstr ""
+
+#. TRANSLATORS: ask the user if they are comfortable installing insecure packages
+#: ../lib/packagekit-glib2/pk-task-text.c:69
+msgid "Do you want to allow installing of unsigned software?"
+msgstr ""
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:74
+#, fuzzy
+msgid "The unsigned software will not be installed."
+msgstr "Le paquet %s n'a pas pu être installé : %s"
+
+#. TRANSLATORS: the package repository is signed by a key that is not recognised
+#: ../lib/packagekit-glib2/pk-task-text.c:123
+#, fuzzy
+msgid "Software source signature required"
+msgstr "Signature du dépôt nécessaire"
+
+#. TRANSLATORS: the package repository name
+#: ../lib/packagekit-glib2/pk-task-text.c:129
+#, fuzzy
+msgid "Software source name"
+msgstr "Modifier les paramètres des dépôts"
+
+#. TRANSLATORS: the key URL
+#: ../lib/packagekit-glib2/pk-task-text.c:132
+msgid "Key URL"
+msgstr ""
+
+#. TRANSLATORS: the username of the key
+#: ../lib/packagekit-glib2/pk-task-text.c:135
+msgid "Key user"
+msgstr ""
+
+#. TRANSLATORS: the key ID, usually a few hex digits
+#: ../lib/packagekit-glib2/pk-task-text.c:138
+msgid "Key ID"
+msgstr "ID de la clé"
+
+#. TRANSLATORS: the key fingerprint, again, yet more hex
+#: ../lib/packagekit-glib2/pk-task-text.c:141
+msgid "Key fingerprint"
+msgstr ""
+
+#. TRANSLATORS: the timestamp (a bit like a machine readable time)
+#: ../lib/packagekit-glib2/pk-task-text.c:144
+msgid "Key Timestamp"
+msgstr ""
+
+#. TRANSLATORS: ask the user if they want to import
+#: ../lib/packagekit-glib2/pk-task-text.c:157
+msgid "Do you accept this signature?"
+msgstr "Acceptez-vous cette signature ?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:162
+msgid "The signature was not accepted."
+msgstr "La signature n'a pas été acceptée."
+
+#. TRANSLATORS: this is another name for a software licence that has to be read before installing
+#: ../lib/packagekit-glib2/pk-task-text.c:205
+msgid "End user licence agreement required"
+msgstr "Contrat de Licence Utilisateur Final nécessaire"
+
+#. TRANSLATORS: the EULA text itself (long and boring)
+#: ../lib/packagekit-glib2/pk-task-text.c:214
+msgid "Agreement"
+msgstr ""
+
+#. TRANSLATORS: ask the user if they've read and accepted the EULA
+#: ../lib/packagekit-glib2/pk-task-text.c:223
+msgid "Do you accept this agreement?"
+msgstr "Acceptez-vous ce contrat ?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:228
+#, fuzzy
+msgid "The agreement was not accepted."
+msgstr "La signature n'a pas été acceptée."
+
+#. TRANSLATORS: the user needs to change media inserted into the computer
+#: ../lib/packagekit-glib2/pk-task-text.c:267
+#, fuzzy
+msgid "Media change required"
+msgstr "Vous devez indiquer un nom de paquet"
+
+#. TRANSLATORS: the type, e.g. DVD, CD, etc
+#: ../lib/packagekit-glib2/pk-task-text.c:270
+msgid "Media type"
+msgstr ""
+
+#. TRANSLATORS: the media label, usually like 'disk-1of3'
+#: ../lib/packagekit-glib2/pk-task-text.c:273
+msgid "Media label"
+msgstr ""
+
+#. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
+#: ../lib/packagekit-glib2/pk-task-text.c:276
+msgid "Text"
+msgstr ""
+
+#. TRANSLATORS: ask the user to insert the media
+#: ../lib/packagekit-glib2/pk-task-text.c:282
+#, fuzzy
+msgid "Please insert the correct media"
+msgstr "Veuillez choisir le paquet correct : "
+
+#. TRANSLATORS: tell the user we've not done anything as they are lazy
+#: ../lib/packagekit-glib2/pk-task-text.c:287
+#, fuzzy
+msgid "The correct media was not inserted."
+msgstr "La signature n'a pas été acceptée."
+
+#. TRANSLATORS: When processing, we might have to remove other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:302
+msgid "The following packages have to be removed:"
+msgstr "Les paquets suivants vont être désinstallés :"
+
+#. TRANSLATORS: When processing, we might have to install other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:307
+#, fuzzy
+msgid "The following packages have to be installed:"
+msgstr "Les paquets suivants vont être désinstallés :"
+
+#. TRANSLATORS: When processing, we might have to update other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:312
+#, fuzzy
+msgid "The following packages have to be updated:"
+msgstr "Les paquets suivants vont être désinstallés :"
+
+#. TRANSLATORS: When processing, we might have to reinstall other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:317
+#, fuzzy
+msgid "The following packages have to be reinstalled:"
+msgstr "Les paquets suivants vont être désinstallés :"
+
+#. TRANSLATORS: When processing, we might have to downgrade other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:322
+#, fuzzy
+msgid "The following packages have to be downgraded:"
+msgstr "Les paquets suivants vont être désinstallés :"
+
+#. TRANSLATORS: ask the user if the proposed changes are okay
+#: ../lib/packagekit-glib2/pk-task-text.c:382
+msgid "Proceed with changes?"
+msgstr ""
+
+#. TRANSLATORS: tell the user we didn't do anything
+#: ../lib/packagekit-glib2/pk-task-text.c:387
+msgid "The transaction did not proceed."
+msgstr ""
+
 #. SECURITY:
 #. - Normal users do not require admin authentication to accept new
 #. licence agreements.
@@ -1302,22 +1727,16 @@ msgid "Authentication is required to accept a EULA"
 msgstr "Authentification requise pour accepter une licence"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:9
-msgid ""
-"Authentication is required to cancel a task that was not started by yourself"
-msgstr ""
-"Authentification requise pour annuler une tâche non initiée par vos soins"
+msgid "Authentication is required to cancel a task that was not started by yourself"
+msgstr "Authentification requise pour annuler une tâche non initiée par vos soins"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:10
 msgid "Authentication is required to change software source parameters"
 msgstr "Authentification requise pour changer les paramètres des dépôts"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:11
-msgid ""
-"Authentication is required to consider a key used for signing packages as "
-"trusted"
-msgstr ""
-"Authentification requise afin de prendre en compte une clé de confiance pour "
-"les paquets signés"
+msgid "Authentication is required to consider a key used for signing packages as trusted"
+msgstr "Authentification requise afin de prendre en compte une clé de confiance pour les paquets signés"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:12
 msgid "Authentication is required to install a signed package"
@@ -1332,9 +1751,8 @@ msgid "Authentication is required to refresh the system sources"
 msgstr "Authentification requise pour mettre à jour la liste des paquets"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:15
-#, fuzzy
 msgid "Authentication is required to reload the device with a new driver"
-msgstr "Authentification requise pour mettre à jour la liste des paquets"
+msgstr "Authentification requise pour redémarrer le périphérique avec un nouveau pilote"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:16
 msgid "Authentication is required to remove packages"
@@ -1345,12 +1763,8 @@ msgid "Authentication is required to rollback a transaction"
 msgstr "Authentification requise pour annuler une transaction"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:18
-msgid ""
-"Authentication is required to set the network proxy used for downloading "
-"packages"
-msgstr ""
-"Authentification requise pour configurer le proxy réseau utilisé pour le "
-"téléchargement des paquets"
+msgid "Authentication is required to set the network proxy used for downloading packages"
+msgstr "Authentification requise pour configurer le proxy réseau utilisé pour le téléchargement des paquets"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:19
 msgid "Authentication is required to update packages"
@@ -1477,151 +1891,229 @@ msgstr "Cela peut s'expliquer pour deux raisons :"
 #. TRANSLATORS: only allowed to be owned by root
 #: ../src/pk-main.c:91
 msgid "The correct user is not launching the executable (usually root)"
-msgstr ""
-"L'utilisateur n'a pas la permission d'exécuter le programme (généralement "
-"« root »)"
+msgstr "L'utilisateur n'a pas la permission d'exécuter le programme (généralement, « root » la possède)"
 
 #. TRANSLATORS: or we are installed in a prefix
 #: ../src/pk-main.c:93
-msgid ""
-"The org.freedesktop.PackageKit.conf file is not installed in the system "
-"directory:"
-msgstr ""
-"Le fichier « org.freedesktop.PackageKit.conf » n'est pas installé dans le "
-"répertoire système :"
+msgid "The org.freedesktop.PackageKit.conf file is not installed in the system directory:"
+msgstr "Le fichier « org.freedesktop.PackageKit.conf » n'est pas installé dans le répertoire système :"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "Moteur du gestionnaire de paquets, par ex. : dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "Crée un démon et se sépare du terminal"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "Désactive la minuterie d'inactivité"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "Affiche la version et quitte"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "Quitte après un court instant"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "Quitte immédiatement après chargement du gestionnaire"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "Service PackageKit"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "Impossible de se connecter au bus système"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "Impossible de démarrer :"
 
-#: ../src/pk-polkit-action-lookup.c:147
-#, fuzzy
+#: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
-msgstr "Aucun nouveau paquet n'a besoin d'être installé"
+msgstr "Pour installer des paquets de débogage, des sources supplémentaires doivent être activées"
 
 #. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:168 ../src/pk-polkit-action-lookup.c:187
+#: ../src/pk-polkit-action-lookup.c:171
+#: ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
 msgstr ""
 
-#: ../src/pk-polkit-action-lookup.c:173
+#: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
 msgstr ""
 
-#: ../src/pk-polkit-action-lookup.c:174
+#: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
 msgstr ""
 
-#: ../src/pk-polkit-action-lookup.c:192
+#: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
 msgstr ""
 
-#: ../src/pk-polkit-action-lookup.c:193
+#: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr ""
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:199
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr ""
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:274
+#: ../src/pk-polkit-action-lookup.c:273
 #, fuzzy
 msgid "Many packages"
 msgstr "Mettre à jour les paquets"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:334
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr ""
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "Afficher les informations de débogage pour tous les fichiers"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr ""
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr ""
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr ""
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr ""
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "Afficher les options de débogage"
+
+#~ msgid "Please restart the application as it is being used."
+#~ msgstr ""
+#~ "Veuillez redémarrer l'application car elle est en cours d'utilisation"
+#~ msgid "The package %s is already installed"
+#~ msgstr "Le paquet %s est déjà installé"
+#~ msgid "This tool could not install the files: %s"
+#~ msgstr "Cet outil n'a pas pu installer les fichiers : %s"
+#~ msgid "This tool could not remove %s: %s"
+#~ msgstr "Cet outil n'a pas pu supprimer %s : %s"
+#~ msgid "This tool could not remove the packages: %s"
+#~ msgstr "Cet outil n'a pas pu supprimer les paquets : %s"
+#~ msgid "Proceed removing additional packages?"
+#~ msgstr "Procéder à la suppression des paquets additionnels ?"
+#~ msgid "The package removal was canceled!"
+#~ msgstr "La suppression de paquet a été annulée !"
+#~ msgid "This tool could not download the package %s as it could not be found"
+#~ msgstr ""
+#~ "Cet outil n'a pas pu télécharger le paquet %s car il n'a pas pu être "
+#~ "trouvé"
+#~ msgid "This tool could not download the packages: %s"
+#~ msgstr "Cet outil n'a pas pu télécharger les paquets : %s"
+#~ msgid "This tool could not update %s: %s"
+#~ msgstr "Cet outil n'a pas pu mettre à jour %s : %s"
+#~ msgid "This tool could not get the requirements for %s: %s"
+#~ msgstr "Cet outil n'a pas pu satisfaire les exigences pour %s : %s"
+#~ msgid "This tool could not get the dependencies for %s: %s"
+#~ msgstr "Cet outil n'a pas pu satisfaire les dépendances pour %s : %s"
+#~ msgid "This tool could not get package details for %s: %s"
+#~ msgstr ""
+#~ "Cet outil n'a pas pu obtenir les informations complémentaires du paquet %"
+#~ "s : %s"
+#~ msgid "This tool could not find the files for %s: %s"
+#~ msgstr "Cet outil n'a pas pu trouver les fichiers pour %s : %s"
+#~ msgid "This tool could not get the file list for %s: %s"
+#~ msgstr "Cet outil n'a pas pu obtenir la liste des fichiers pour %s : %s"
+#~ msgid "File already exists: %s"
+#~ msgstr "Le fichier existe déjà : %s"
+#~ msgid "This tool could not get package list: %s"
+#~ msgstr "Cet outil n'a pas pu récupérer la liste des paquets : %s"
+#~ msgid "Failed to save to disk"
+#~ msgstr "Impossible de sauvegarder sur le disque"
+#~ msgid "File does not exist: %s"
+#~ msgstr "Le fichier n'existe pas : %s"
+#~ msgid "Packages to add"
+#~ msgstr "Paquets à ajouter"
+#~ msgid "Packages to remove"
+#~ msgstr "Paquets à supprimer"
+#~ msgid "No new packages need to be installed"
+#~ msgstr "Aucun nouveau paquet n'a besoin d'être installé"
+#~ msgid "not found."
+#~ msgstr "non trouvé."
+#~ msgid "No packages can be found to install"
+#~ msgstr "Aucun paquet à installer n'a été trouvé"
+#~ msgid "This tool could not find the update details for %s: %s"
+#~ msgstr ""
+#~ "Cet outil n'a pas pu trouver les informations de mise à jour pour %s : %s"
+#~ msgid "This tool could not get the update details for %s: %s"
+#~ msgstr ""
+#~ "Cet outil n'a pas pu obtenir les informations de mise à jour pour %s : %s"
+#~ msgid "Error:"
+#~ msgstr "Erreur :"
+#~ msgid "Do you agree to this license?"
+#~ msgstr "Acceptez-vous cette licence ?"
+#~ msgid "The license was refused."
+#~ msgstr "La licence a été refusée."
+#~ msgid "This tool could not connect to system DBUS."
+#~ msgstr "Cet outil n'a pas pu se connecter au système DBUS."
+#~ msgid "A list file name to create is required"
+#~ msgstr "Vous devez indiquer un nom de fichier à la liste à créer"
+#~ msgid "A list file to open is required"
+#~ msgstr "Vous devez indiquer un fichier liste à ouvrir"
+#~ msgid "Incorrect privileges for this operation"
+#~ msgstr ""
+#~ "Les privilèges dont vous disposez sont incorrects pour cette opération"
+#~ msgid "The package could not be found"
+#~ msgstr "Le paquet n'a pas pu être trouvé"
 #~ msgid "You need to specify a search type, e.g. name"
 #~ msgstr "Vous devez indiquer un type de recherche, par ex. nom"
-
 #~ msgid "You need to specify a search term"
 #~ msgstr "Vous devez indiquer un terme à rechercher"
-
 #~ msgid "You need to specify a package to remove"
 #~ msgstr "Vous devez indiquer un paquet à désinstaller"
-
 #~ msgid "You need to specify a package name to resolve"
 #~ msgstr "Vous devez indiquer un nom de paquet à résoudre"
-
 #~ msgid "You need to specify a repository name"
 #~ msgstr "Vous devez indiquer un nom de dépôt"
-
 #~ msgid "You need to specify a correct role"
 #~ msgstr "Vous devez indiquer un rôle correct"
-
-#~ msgid "Failed to get last time"
-#~ msgstr "Impossible de lire la dernière date"
-
 #~ msgid "You need to specify a package to find the details for"
 #~ msgstr ""
 #~ "Vous devez indiquer un paquet pour lequel il faut chercher des "
 #~ "informations complémentaires"
-
 #~ msgid "You need to specify a package to find the files for"
 #~ msgstr "Vous devez indiquer un paquet pour en lister les fichiers"
 
 #, fuzzy
 #~ msgid "You need to specify a list file to open"
 #~ msgstr "Vous devez indiquer une date"
-
 #~ msgid "This tool could not remove the packages: '%s'"
 #~ msgstr "Cet outil n'a pas pu supprimer les paquets : « %s »"
-
 #~ msgid "Install local file"
 #~ msgstr "Installer un fichier local"
-
 #~ msgid "Okay to import key?"
 #~ msgstr "Acceptez-vous d'importer la clé ?"
-
 #~ msgid "Did not import key"
 #~ msgstr "Clé non importée"
-
 #~ msgid "Do you agree?"
 #~ msgstr "Êtes-vous d'accord ?"
 
@@ -1629,9 +2121,6 @@ msgstr ""
 #~ msgid "Could not find package to remove"
 #~ msgstr "Impossible de trouver un paquet à supprimer portant ce nom"
 
-#~ msgid "Cancelled!"
-#~ msgstr "Annulé !"
-
 #, fuzzy
 #~ msgid "Could not find package to update"
 #~ msgstr "Impossible de trouver un paquet correspondant"
@@ -1647,40 +2136,28 @@ msgstr ""
 #, fuzzy
 #~ msgid "Could not set database readonly"
 #~ msgstr "Impossible d'ouvrir la base de données : %s"
-
 #~ msgid "Could not open database: %s"
 #~ msgstr "Impossible d'ouvrir la base de données : %s"
-
 #~ msgid "You probably need to run this program as the root user"
 #~ msgstr ""
 #~ "Vous devriez exécuter ce programme en tant qu'administrateur « root »"
-
 #~ msgid "Authentication is required to install a local file"
 #~ msgstr "Authentification requise pour installer un fichier local"
-
 #~ msgid "Authentication is required to install a security signature"
 #~ msgstr "Authentification requise pour installer une signature de sécurité"
-
 #~ msgid "Authentication is required to update all packages"
 #~ msgstr "Authentification requise pour mettre à jour tous les paquets"
-
-#~ msgid "Refresh package lists"
-#~ msgstr "Mettre à jour la liste des paquets"
-
 #~ msgid "Update all packages"
 #~ msgstr "Mettre à jour tous les paquets"
-
 #~ msgid ""
 #~ "Could not find a package with that name to install, or package already "
 #~ "installed"
 #~ msgstr ""
 #~ "Aucun paquet à installer avec ce nom, ou le paquet est déjà installé"
-
 #~ msgid "Could not find a package with that name to update"
 #~ msgstr "Impossible de trouver un paquet à mettre à jour portant ce nom"
-
 #~ msgid "Could not find a description for this package"
 #~ msgstr "Impossible de trouver la description de ce paquet"
-
 #~ msgid "You need to specify a package to find the description for"
 #~ msgstr "Vous devez indiquer un paquet dont vous souhaitez la description"
+
commit 8047a940a78d055d7360163d7d51b3fbff53a819
Author: leahliu <leahliu at fedoraproject.org>
Date:   Mon Dec 14 04:52:52 2009 +0000

    Sending translation for Chinese (Simplified)

diff --git a/po/zh_CN.po b/po/zh_CN.po
index 3fec175..6bb8e61 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -1,2172 +1,394 @@
-# translation of packagekit.master.po to Simplified Chinese
-# 简体中文翻译
-# Copyright (C) 2008 THE 'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the  package.
-# Chen Yu <jcomee at gmail.com>, 2008.
-# 甘露(Gan Lu) <rhythm.gan at gmail.com>, 2008.
-# zhou renren <zhourenren at gmail.com>,2009.
+# translation of pavucontrol.master-tx.po to Simplified Chinese
+# 甘露 (Gan Lu) <rhythm.gan at gmail.com>, 2008.msgid "".
 # Leah Liu <lliu at redhat.com>, 2009.
-# CyrusHMH <cyrushmh at vip.qq.com>, 2009.
+# Simplified Chinese Version of pavucontrol.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
 msgid ""
 msgstr ""
-"Project-Id-Version: packagekit.master\n"
+"Project-Id-Version: pavucontrol.master-tx\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-30 20:46+0000\n"
-"PO-Revision-Date: 2009-10-01 13:22+0800\n"
-"Last-Translator: CyrusHMH <cyrushmh at vip.qq.com>\n"
-"Language-Team: cvsl10n\n"
-"Language: zh_CN\n"
+"POT-Creation-Date: 2009-12-07 20:10+0000\n"
+"PO-Revision-Date: 2009-12-09 11:11+1000\n"
+"Last-Translator: Leah Liu <lliu at redhat.com>\n"
+"Language-Team: Simplified Chinese <zh at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Virtaal 0.4.0\n"
-
-#. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
-msgid "Transaction"
-msgstr "处理"
-
-#. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
-msgid "System time"
-msgstr "系统时间"
-
-#. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
-msgid "Succeeded"
-msgstr "成功"
-
-#: ../client/pk-console.c:147
-msgid "True"
-msgstr "是"
-
-#: ../client/pk-console.c:147
-msgid "False"
-msgstr "否"
-
-#. TRANSLATORS: this is the transactions role, e.g. "update-system"
-#. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
-msgid "Role"
-msgstr "操作"
-
-#. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
-msgid "Duration"
-msgstr "持续时间"
-
-#: ../client/pk-console.c:154
-msgid "(seconds)"
-msgstr "秒"
-
-#. TRANSLATORS: this is The command line used to do the action
-#. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
-msgid "Command line"
-msgstr "命令行"
-
-#. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
-msgid "User ID"
-msgstr "用户ID"
-
-#. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
-msgid "Username"
-msgstr "用户名"
-
-#. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
-msgid "Real name"
-msgstr "真实姓名"
-
-#: ../client/pk-console.c:179
-msgid "Affected packages:"
-msgstr "受影响的软件包"
-
-#: ../client/pk-console.c:181
-msgid "Affected packages: None"
-msgstr "受影响的软件包:无"
-
-#. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
-msgid "Distribution"
-msgstr "发布"
-
-#. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
-msgid "Type"
-msgstr "类型"
-
-#. TRANSLATORS: this is any summary text describing the upgrade
-#. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
-msgid "Summary"
-msgstr "摘要"
-
-#. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
-msgid "Category"
-msgstr "分类"
-
-#. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
-msgid "ID"
-msgstr "ID"
-
-#. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
-msgid "Parent"
-msgstr "上一级"
-
-#. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
-msgid "Name"
-msgstr "上一级组名"
-
-#. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
-msgid "Icon"
-msgstr "图标"
-
-#. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
-msgid "Details about the update:"
-msgstr "本次更新详情:"
-
-#. TRANSLATORS: details about the update, package name and version
-#. TRANSLATORS: the package that is not signed by a known key
-#. TRANSLATORS: the package name that was trying to be installed
-#. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:107
-#: ../lib/packagekit-glib2/pk-task-text.c:174
-#: ../src/pk-polkit-action-lookup.c:361
-#, fuzzy
-msgid "Package"
-msgid_plural "Packages"
-msgstr[0] "软件包"
-msgstr[1] "软件包"
-
-#. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
-msgid "Updates"
-msgstr "æ›´æ–°"
-
-#. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
-msgid "Obsoletes"
-msgstr "过时"
-
-#. TRANSLATORS: details about the update, the vendor URLs
-#. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:177
-msgid "Vendor"
-msgstr "厂商"
-
-#. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
-msgid "Bugzilla"
-msgstr "Bugzilla"
-
-#. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
-msgid "CVE"
-msgstr "CVE"
-
-#. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
-msgid "Restart"
-msgstr "重启"
-
-#. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
-msgid "Update text"
-msgstr "更新文档"
-
-#. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
-msgid "Changes"
-msgstr "变化"
-
-#. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
-msgid "State"
-msgstr "状态"
-
-#. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
-msgid "Issued"
-msgstr "发布"
-
-#. TRANSLATORS: details about the update, date the update was updated
-#. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:502
-msgid "Updated"
-msgstr "已更新"
-
-#. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
-msgid "Enabled"
-msgstr "启用"
-
-#. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
-msgid "Disabled"
-msgstr "禁用"
-
-#. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
-msgid "System restart required by:"
-msgstr "要求系统重启的软件包:"
-
-#. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
-msgid "Session restart required:"
-msgstr "要求会话重启的软件包:"
-
-#. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
-#, fuzzy
-msgid "System restart (security) required by:"
-msgstr "要求系统重启的软件包:"
-
-#. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
-#, fuzzy
-msgid "Session restart (security) required:"
-msgstr "要求会话重启的软件包:"
-
-#. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
-msgid "Application restart required by:"
-msgstr "要求应用程序重启的软件包:"
-
-#. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
-msgid "Package description"
-msgstr "软件包描述"
-
-#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
-msgid "Message:"
-msgstr "通知:"
-
-#. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
-msgid "No files"
-msgstr "没有文件"
-
-#. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
-msgid "Package files"
-msgstr "软件包文件"
-
-#. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
-#, fuzzy
-msgid "Fatal error"
-msgstr "内部错误:%s"
-
-#. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:426
-#: ../contrib/command-not-found/pk-command-not-found.c:567
-#, fuzzy
-msgid "The transaction failed"
-msgstr "处理"
-
-#. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
-msgid "Please restart the computer to complete the update."
-msgstr "请重新启动计算机以完成本次更新。"
-
-#. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
-msgid "Please logout and login to complete the update."
-msgstr "请登出并登录以完成本次更新。"
-
-#. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
-#, fuzzy
-msgid ""
-"Please restart the computer to complete the update as important security "
-"updates have been installed."
-msgstr "请重新启动计算机以完成本次更新。"
-
-#. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
-#, fuzzy
-msgid ""
-"Please logout and login to complete the update as important security updates "
-"have been installed."
-msgstr "请登出并登录以完成本次更新。"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
-#, fuzzy, c-format
-msgid "This tool could not find any available package: %s"
-msgstr "该工具无法安装本软件包:%s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
-#, fuzzy, c-format
-msgid "This tool could not find the installed package: %s"
-msgstr "该工具无法安装本软件包:%s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
-#, fuzzy, c-format
-msgid "This tool could not find the package: %s"
-msgstr "该工具无法安装本软件包:%s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
-#. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
-#, fuzzy, c-format
-msgid "This tool could not find all the packages: %s"
-msgstr "该工具无法安装本软件包:%s"
-
-#. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
-msgid "The daemon crashed mid-transaction!"
-msgstr "后台程序在事务处理中期崩溃!"
-
-#. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
-msgid "PackageKit Console Interface"
-msgstr "PackageKit 终端界面"
-
-#. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
-msgid "Subcommands:"
-msgstr "子命令:"
-
-#. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
-msgid "Failed to get the time since this action was last completed"
-msgstr "未获得最后一次操作的时间"
-
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:987 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:281
-#: ../contrib/command-not-found/pk-command-not-found.c:620
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:512
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "显示额外的调试信息"
-
-#. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:990 ../client/pk-monitor.c:283
-msgid "Show the program version and exit"
-msgstr "显示本程序版本并退出"
-
-#. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:993
-msgid "Set the filter, e.g. installed"
-msgstr "设置过滤器,例如已安装的"
-
-#. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:996
-msgid "Exit without waiting for actions to complete"
-msgstr "不等操作完成即退出"
-
-#. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1022
-#, fuzzy
-msgid "Failed to contact PackageKit"
-msgstr "无法打开软件包清单"
-
-#. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1074
-msgid "The filter specified was invalid"
-msgstr "过滤器指定非法"
-
-#. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1093
-msgid "A search type is required, e.g. name"
-msgstr "您需要指定搜索类型,如软件包名"
-
-#. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1100 ../client/pk-console.c:1112
-#: ../client/pk-console.c:1124 ../client/pk-console.c:1136
-msgid "A search term is required"
-msgstr "您需要指定搜索条件"
-
-#. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1146
-msgid "Invalid search type"
-msgstr "无效的搜索类型"
-
-#. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1152
-#, fuzzy
-msgid "A package name to install is required"
-msgstr "您需要为解析指定一个软件包名"
-
-#. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1161
-#, fuzzy
-msgid "A filename to install is required"
-msgstr "您需要为安装指定一个软件包名或文件名"
-
-#. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1173
-msgid "A type, key_id and package_id are required"
-msgstr "需要指定某个类型,证书ID或者软件包ID"
-
-#. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1184
-msgid "A package name to remove is required"
-msgstr "您需要为卸载指定一个软件包名"
-
-#. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1193
-#, fuzzy
-msgid "A destination directory and the package names to download are required"
-msgstr "需要指定目的地目录以及软件包名来下载"
-
-#. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1200
-msgid "Directory not found"
-msgstr "目录没有找到"
-
-#. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1209
-msgid "A licence identifier (eula-id) is required"
-msgstr "需要指定某个许可证鉴别 (eula-id)"
-
-#. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1220
-msgid "A transaction identifier (tid) is required"
-msgstr "需要交易标识符(tid)"
-
-#. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1241
-msgid "A package name to resolve is required"
-msgstr "您需要为解析指定一个软件包名"
-
-#. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1252 ../client/pk-console.c:1263
-msgid "A repository name is required"
-msgstr "要求软件库名"
-
-#. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1274
-msgid "A repo name, parameter and value are required"
-msgstr "您需要指定某个软件库名字,参数或值"
-
-#. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1291
-msgid "An action, e.g. 'update-system' is required"
-msgstr "您需要指定某个行动,例如“更新系统”"
-
-#. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1298
-msgid "A correct role is required"
-msgstr "需要一个正确响应"
-
-#. TRANSLATORS: The user did not provide a package name
-#. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1308 ../client/pk-console.c:1323
-#: ../client/pk-console.c:1332 ../client/pk-console.c:1352
-#: ../client/pk-console.c:1361 ../client/pk-generate-pack.c:287
-msgid "A package name is required"
-msgstr "需要软件包名"
-
-#. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1341
-msgid "A package provide string is required"
-msgstr "您需要指定特定参数"
-
-#. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1421
-#, c-format
-msgid "Option '%s' is not supported"
-msgstr "不支持 '%s' 选项"
-
-#. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1431
-msgid "Command failed"
-msgstr "命令失败"
-
-#. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
-msgid "Set the file name of dependencies to be excluded"
-msgstr "设置将被除外的依赖关系的文件名"
-
-#. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
-msgid ""
-"The output file or directory (the current directory is used if ommitted)"
-msgstr "输出文件或目录(使用当前目录如忘记指定)"
-
-#. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
-msgid "The package to be put into the service pack"
-msgstr "将放入服务包的软件包"
-
-#. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
-msgid "Put all updates available in the service pack"
-msgstr "将所有可获得的更新放入服务包"
-
-#. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
-msgid "Neither --package or --updates option selected."
-msgstr "要么是选定了 --package 选项,要么是选定了 --updates 选项"
-
-#. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
-msgid "Both options selected."
-msgstr "选定了两个选项"
-
-#. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
-msgid "A output directory or file name is required"
-msgstr "您需要指定输出的目录名或文件名"
-
-#. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
-msgid "The dameon failed to startup"
-msgstr "在dameon未能启动"
-
-#. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
-#. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
-msgid "The package manager cannot perform this type of operation."
-msgstr "软件包管理器不能处理当前类型的操作"
-
-#. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
-msgid ""
-"Service packs cannot be created as PackageKit was not built with libarchive "
-"support."
-msgstr "务包不能被创建为PackageKit不符合libarchive支持创建。"
-
-#. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
-msgid "If specifying a file, the service pack name must end with"
-msgstr "如果指定一个文件,文件后缀名必须是"
-
-#. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
-msgid "A pack with the same name already exists, do you want to overwrite it?"
-msgstr "已经有同名软件包存在,您想要覆盖它吗?"
-
-#. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
-msgid "The pack was not overwritten."
-msgstr "该软件包没有被覆盖"
-
-#. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
-msgid "Failed to create directory:"
-msgstr "无法创建目录"
-
-#. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
-msgid "Failed to open package list."
-msgstr "无法打开软件包清单"
-
-#. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
-msgid "Finding package name."
-msgstr "正在寻找软件包名"
-
-#. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
-#, c-format
-msgid "Failed to find package '%s': %s"
-msgstr "无法找到软件包 '%s': %s"
-
-#. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
-msgid "Creating service pack..."
-msgstr "正在创建服务包..."
-
-#. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
-#, c-format
-msgid "Service pack created '%s'"
-msgstr "服务包已创建 '%s'"
-
-#. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
-#, c-format
-msgid "Failed to create '%s': %s"
-msgstr "无法创建 '%s': %s"
-
-#: ../client/pk-monitor.c:211
-#, fuzzy
-msgid "Failed to get daemon state"
-msgstr "无法打开软件包清单"
-
-#. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
-msgid "PackageKit Monitor"
-msgstr "PackageKit 监视器"
-
-#. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
-msgid "Getting package information..."
-msgstr "正在获得软件包信息..."
-
-#. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
-#, c-format
-msgid "Run %s"
-msgstr "运行 %s"
-
-#. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
-msgid "Installed version"
-msgstr "已安装版本"
-
-#. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
-#, c-format
-msgid "Run version %s now"
-msgstr "现在运行版本 %s"
+"X-Generator: KBabel 1.11.4\n"
 
-#. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
-msgid "Run now"
-msgstr "现在运行"
+#: ../src/pavucontrol.desktop.in.h:1
+msgid "Adjust the volume level"
+msgstr "调节音量水平"
 
-#. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
-#, c-format
-msgid "Update to version %s"
-msgstr "更新到版本 %s"
+#: ../src/pavucontrol.desktop.in.h:2 ../src/pavucontrol.cc:476
+msgid "PulseAudio Volume Control"
+msgstr "PulseAudio 音量控制"
 
-#. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
-#, c-format
-msgid "Install %s now"
-msgstr "现在安装 %s "
-
-#. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
-msgid "Version"
-msgstr "版本"
-
-#. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
-msgid "No packages found for your system"
-msgstr "没有为您系统发现软件包"
-
-#. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
-msgid "Installing..."
-msgstr "正在安装..."
-
-#. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
-msgid "Downloading details about the software sources."
-msgstr ""
-"\t\n"
-"下载有关软件来源的详细情况。"
+#: ../src/pavucontrol.desktop.in.h:3 ../src/pavucontrol.glade.h:32
+msgid "Volume Control"
+msgstr "音量控制"
 
-#. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:365
-msgid "Downloading filelists (this may take some time to complete)."
-msgstr ""
+#: ../src/pavucontrol.glade.h:2
+#, no-c-format
+msgid "50%"
+msgstr "50%"
 
-#. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:369
-#, fuzzy
-msgid "Waiting for package manager lock."
-msgstr "正在寻找软件包名"
-
-#. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:373
-#, fuzzy
-msgid "Loading list of packages."
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:417
-msgid "Failed to search for file"
-msgstr "未找到该软件包"
-
-#. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:558
-#, fuzzy
-msgid "Failed to install packages"
-msgstr "该工具无法安装本软件包:%s"
-
-#. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:636
-msgid "PackageKit Command Not Found"
-msgstr "PackageKit 命令没有找到"
-
-#. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:664
-msgid "Command not found."
-msgstr "命令未找到"
-
-#. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:671
-msgid "Similar command is:"
-msgstr "可能命令是:"
-
-#. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:680
-msgid "Run similar command:"
-msgstr "执行可能的命令:"
-
-#. TRANSLATORS: show the user a list of commands that they could have meant
-#. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:692
-#: ../contrib/command-not-found/pk-command-not-found.c:701
-msgid "Similar commands are:"
-msgstr "可能命令是:"
-
-#. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:708
-msgid "Please choose a command to run"
-msgstr "请选择一条命令执行"
-
-#. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:724
-msgid "The package providing this file is:"
-msgstr "提供该命令的软件包是:"
-
-#. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:729
-#, c-format
-msgid "Install package '%s' to provide command '%s'?"
-msgstr "安装包'%s' 提供命令 '%s'"
-
-#. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
-msgid "Packages providing this file are:"
-msgstr "提供该命令的软件包有:"
-
-#. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:757
-msgid "Suitable packages are:"
-msgstr "适合的软件包是:"
-
-#. get selection
-#. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:766
-msgid "Please choose a package to install"
-msgstr "请选择要安装的某个软件包"
-
-#. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
-#, fuzzy
-msgid "Starting install"
-msgstr "安装"
-
-#. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
-#, fuzzy, c-format
-msgid "Failed to find the package %s, or already installed: %s"
-msgstr "该软件包 '%s' 已经安装"
-
-#. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:515
-msgid ""
-"Don't actually install any packages, only simulate what would be installed"
-msgstr ""
-"\t\n"
-"实际上没有安装任何软件包,只是模拟安装什么"
+#: ../src/pavucontrol.glade.h:3
+msgid "<b>Port:</b>"
+msgstr "<b>端口:</b>"
 
-#. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
-msgid "Do not install dependencies of the core packages"
-msgstr ""
-"\t\n"
-"不要安装的核心软件包的依赖关系"
+#: ../src/pavucontrol.glade.h:4
+msgid "<b>Profile:</b>"
+msgstr "<b>侧写:</b>"
 
-#. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
-msgid "Do not display information or progress"
-msgstr "不显示信息或进展"
+#: ../src/pavucontrol.glade.h:5
+msgid "<b>S_how:</b>"
+msgstr "<b>显示(_h):</b>"
 
-#. command line argument, do we ask questions
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
-msgid "Install the packages without asking for confirmation"
-msgstr ""
+#: ../src/pavucontrol.glade.h:6
+msgid "<b>Sho_w:</b>"
+msgstr "<b>显示(_w):</b>"
 
-#. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:539
-#, fuzzy
-msgid "PackageKit Debuginfo Installer"
-msgstr "PackageKit 终端界面"
-
-#. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:554
-#, fuzzy, c-format
-msgid "ERROR: Specify package names to install."
-msgstr "没有新的软件包安装"
-
-#. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:590
-#, fuzzy, c-format
-msgid "Getting sources list"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:600
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:675
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:759
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:870
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:914
-msgid "FAILED."
-msgstr "失败.."
-
-#. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:615
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:655
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:774
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:818
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:885
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:929
-#, c-format
-msgid "OK."
-msgstr "成功.."
+#: ../src/pavucontrol.glade.h:7
+msgid "<b>_Show:</b>"
+msgstr "<b>显示(_S):</b>"
 
-#. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:618
-#, c-format
-msgid "Found %i enabled and %i disabled sources."
-msgstr "找到 %i enabled 和 %i disabled 来源。"
+#: ../src/pavucontrol.glade.h:8
+msgid "<b>left-front</b>"
+msgstr "<b>左-前</b>"
 
-#. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:625
-#, c-format
-msgid "Finding debugging sources"
-msgstr "寻找调试源"
+#: ../src/pavucontrol.glade.h:9
+msgid "<i>No application is currently playing audio.</i>"
+msgstr "<i>没有程序正在播放音频。</i>"
 
-#. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:658
-#, c-format
-msgid "Found %i disabled debuginfo repos."
-msgstr "找到 %i disabled debuginfo repos。"
+#: ../src/pavucontrol.glade.h:10
+msgid "<i>No application is currently recording audio.</i>"
+msgstr "<i>没有程序正在录音。</i>"
 
-#. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:665
-#, c-format
-msgid "Enabling debugging sources"
-msgstr "寻找调试源"
+#: ../src/pavucontrol.glade.h:11
+msgid "<i>No cards available for configuration</i>"
+msgstr "<i>没有可用来配置的声卡</i>"
 
-#. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:693
-#, c-format
-msgid "Enabled %i debugging sources."
-msgstr "启用 %i 调试源"
-
-#. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:700
-#, fuzzy, c-format
-msgid "Finding debugging packages"
-msgstr "正在寻找软件包名"
-
-#. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:712
-#, fuzzy, c-format
-msgid "Failed to find the package %s: %s"
-msgstr "无法找到软件包 '%s': %s"
-
-#. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:735
-#, fuzzy, c-format
-msgid "Failed to find the debuginfo package %s: %s"
-msgstr "无法找到软件包 '%s': %s"
-
-#. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
-#, fuzzy, c-format
-msgid "Found no packages to install."
-msgstr "没有新的软件包安装"
-
-#. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:777
-#, fuzzy, c-format
-msgid "Found %i packages:"
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:793
-#, c-format
-msgid "Finding packages that depend on these packages"
-msgstr "发现这一软件包依赖这些软件包"
-
-#. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:806
-#, fuzzy, c-format
-msgid "Could not find dependant packages: %s"
-msgstr "无法找到软件包 '%s': %s"
+#: ../src/pavucontrol.glade.h:12
+msgid "<i>No input devices available</i>"
+msgstr "<i>没有可用的输入设备</i>"
 
-#. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:822
-#, c-format
-msgid "Found %i extra packages."
-msgstr "找到 %i 额外的软件包。"
-
-#. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:826
-#, fuzzy, c-format
-msgid "No extra packages required."
-msgstr "需要软件包名"
-
-#. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:835
-#, fuzzy, c-format
-msgid "Found %i packages to install:"
-msgstr "没有新的软件包安装"
-
-#. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
-#, fuzzy, c-format
-msgid "Not installing packages in simulate mode"
-msgstr "正在安装软件包..."
-
-#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
-#. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:860
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
-#, c-format
-msgid "Installing packages"
-msgstr "正在安装软件包..."
+#: ../src/pavucontrol.glade.h:13
+msgid "<i>No output devices available</i>"
+msgstr "<i>没有可用的输出设备</i>"
 
-#. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:873
-#, fuzzy, c-format
-msgid "Could not install packages: %s"
-msgstr "该工具无法安装本软件包:%s"
-
-#. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:905
-#, c-format
-msgid "Disabling sources previously enabled"
+#: ../src/pavucontrol.glade.h:14
+msgid ""
+"All Input Devices\n"
+"All Except Monitors\n"
+"Hardware Input Devices\n"
+"Virtual Input Devices\n"
+"Monitors"
 msgstr ""
-"\t\n"
-"禁用源以前启用"
-
-#. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:917
-#, c-format
-msgid "Could not disable the debugging sources: %s"
-msgstr "无法禁用调试来源:%s"
+"全部输入设备\n"
+"全部但不包括监视器\n"
+"硬件输入设备\n"
+"虚拟输入设备\n"
+"监视器"
 
-#. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:932
-#, c-format
-msgid "Disabled %i debugging sources."
-msgstr "启用 %i 调试源"
-
-#. TRANSLATORS: couldn't open device to write
-#: ../contrib/device-rebind/pk-device-rebind.c:61
-#, fuzzy
-msgid "Failed to open file"
-msgstr "未找到该软件包"
-
-#. TRANSLATORS: could not write to the device
-#: ../contrib/device-rebind/pk-device-rebind.c:70
-#, fuzzy
-msgid "Failed to write to the file"
-msgstr "未找到该软件包"
-
-#. TRANSLATORS: we failed to release the current driver
-#: ../contrib/device-rebind/pk-device-rebind.c:110
-#: ../contrib/device-rebind/pk-device-rebind.c:147
-#, fuzzy
-msgid "Failed to write to device"
-msgstr "存盘失败"
-
-#. TRANSLATORS: the device could not be found in sysfs
-#: ../contrib/device-rebind/pk-device-rebind.c:175
-#, fuzzy
-msgid "Device could not be found"
-msgstr "无法找到该软件包"
-
-#. TRANSLATORS: we failed to release the current driver
-#: ../contrib/device-rebind/pk-device-rebind.c:202
-#, fuzzy
-msgid "Failed to unregister driver"
-msgstr "无法创建目录"
-
-#. TRANSLATORS: we failed to bind the old driver
-#: ../contrib/device-rebind/pk-device-rebind.c:211
-#, fuzzy
-msgid "Failed to register driver"
-msgstr "无法创建目录"
-
-#. TRANSLATORS: user did not specify a device sysfs path that exists
-#: ../contrib/device-rebind/pk-device-rebind.c:260
-#, fuzzy
-msgid "Device path not found"
-msgstr "目录没有找到"
-
-#. TRANSLATORS: user did not specify a valid device sysfs path
-#: ../contrib/device-rebind/pk-device-rebind.c:268
-msgid "Incorrect device path specified"
-msgstr "设备指定的路径不正确"
-
-#. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/device-rebind/pk-device-rebind.c:296
-msgid "Don't actually touch the hardware, only simulate what would be done"
-msgstr "实际上没有接触硬件,只有模拟做什么"
-
-#. TRANSLATORS: command line option: a list of files to install
-#: ../contrib/device-rebind/pk-device-rebind.c:299
-msgid "Device paths"
-msgstr ""
-"\t\n"
-"设备路径"
-
-#. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
-#: ../contrib/device-rebind/pk-device-rebind.c:314
-#, fuzzy
-msgid "PackageKit Device Reloader"
-msgstr "PackageKit 服务包"
-
-#. TRANSLATORS: user did not specify a valid device sysfs path
-#: ../contrib/device-rebind/pk-device-rebind.c:322
-msgid "You need to specify at least one valid device path"
+#: ../src/pavucontrol.glade.h:19
+msgid ""
+"All Output Devices\n"
+"Hardware Output Devices\n"
+"Virtual Output Devices"
 msgstr ""
-"\t\n"
-"你需要指定至少一个有效的设备路径"
+"全部输出设备\n"
+"硬件输出设备\n"
+"虚拟输出设备"
 
-#. TRANSLATORS: user did not specify a valid device sysfs path
-#: ../contrib/device-rebind/pk-device-rebind.c:332
-msgid "This script can only be used by the root user"
-msgstr ""
-"\t\n"
-"此脚本只能用于root用户"
-
-#. TRANSLATORS: we're going to verify the path first
-#: ../contrib/device-rebind/pk-device-rebind.c:341
-msgid "Verifying device path"
-msgstr "验证设备路径"
-
-#. TRANSLATORS: user did not specify a device sysfs path that exists
-#: ../contrib/device-rebind/pk-device-rebind.c:346
-#, fuzzy
-msgid "Failed to verify device path"
-msgstr "未找到该软件包"
-
-#. TRANSLATORS: we're going to try
-#: ../contrib/device-rebind/pk-device-rebind.c:360
-msgid "Attempting to rebind device"
+#. Applications All streams
+#: ../src/pavucontrol.glade.h:23
+msgid ""
+"All Streams\n"
+"Applications\n"
+"Virtual Streams"
 msgstr ""
-"\t\n"
-"试图重新绑定设备"
+"所有流媒体\n"
+"程序\n"
+"虚拟流媒体"
 
-#. TRANSLATORS: we failed to release the current driver
-#: ../contrib/device-rebind/pk-device-rebind.c:365
-#, fuzzy
-msgid "Failed to rebind device"
-msgstr "无法创建目录"
+#: ../src/pavucontrol.glade.h:26
+msgid "Card Name"
+msgstr "声卡名称"
 
-#: ../data/packagekit-catalog.xml.in.h:1
-msgid "PackageKit Catalog"
-msgstr "PackageKit 目录"
+#: ../src/pavucontrol.glade.h:27
+msgid "Device"
+msgstr "设备"
 
-#: ../data/packagekit-package-list.xml.in.h:1
-msgid "PackageKit Package List"
-msgstr "PackageKit 软件包清单"
+#: ../src/pavucontrol.glade.h:28
+msgid "Lock channels together"
+msgstr "锁定声道"
 
-#: ../data/packagekit-servicepack.xml.in.h:1
-msgid "PackageKit Service Pack"
-msgstr "PackageKit 服务包"
+#: ../src/pavucontrol.glade.h:29
+msgid "Mute audio"
+msgstr "音频静音"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:59
-#, c-format
-msgid "Please enter a number from 1 to %i: "
-msgstr "请输入从1到 %i 的数字:"
-
-#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:181
-msgid "More than one package matches:"
-msgstr "超过一个软件包符合:"
-
-#. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:190
-msgid "Please choose the correct package: "
-msgstr "请选择正确的软件包:"
-
-#. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
-#, fuzzy
-msgid "Unknown state"
-msgstr "未知"
-
-#. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
-#, fuzzy
-msgid "Starting"
-msgstr "安装"
-
-#. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
-msgid "Waiting in queue"
-msgstr "等待队列"
-
-#. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
-msgid "Running"
-msgstr ""
-"\t\n"
-"运行中"
+#: ../src/pavucontrol.glade.h:30
+msgid "Set as fallback"
+msgstr "设定为回放"
 
-#. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
-msgid "Querying"
-msgstr ""
-"\t\n"
-"查询中"
-
-#. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
-#, fuzzy
-msgid "Getting information"
-msgstr "正在获得软件包信息..."
-
-#. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
-#, fuzzy
-msgid "Removing packages"
-msgstr "删除软件包"
-
-#. TRANSLATORS: transaction state, downloading package files
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
-msgid "Downloading packages"
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
-#, fuzzy
-msgid "Refreshing software list"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
-#, fuzzy
-msgid "Installing updates"
-msgstr "正在安装软件包..."
-
-#. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
-#, fuzzy
-msgid "Cleaning up packages"
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
-#, fuzzy
-msgid "Obsoleting packages"
-msgstr "正在安装软件包..."
-
-#. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
-#, fuzzy
-msgid "Resolving dependencies"
-msgstr "正在下载依赖关系"
-
-#. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
-msgid "Checking signatures"
-msgstr "检查签名"
-
-#. TRANSLATORS: transaction state, when we return to a previous system state
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
-msgid "Rolling back"
-msgstr "回滚"
-
-#. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
-#, fuzzy
-msgid "Testing changes"
-msgstr "正在安装软件包..."
-
-#. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
-msgid "Committing changes"
-msgstr ""
-"\t\n"
-"提交更改"
-
-#. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
-msgid "Requesting data"
-msgstr "请求数据"
-
-#. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
-msgid "Finished"
-msgstr "完成.."
-
-#. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
-msgid "Cancelling"
-msgstr "删除中"
-
-#. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
-msgid "Downloading repository information"
-msgstr ""
-"\t\n"
-"下载资料库"
-
-#. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
-#, fuzzy
-msgid "Downloading list of packages"
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
-#, fuzzy
-msgid "Downloading file lists"
-msgstr "正在下载"
-
-#. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
-#, fuzzy
-msgid "Downloading lists of changes"
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
-#, fuzzy
-msgid "Downloading groups"
-msgstr "正在下载"
-
-#. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
-#, fuzzy
-msgid "Downloading update information"
-msgstr "正在获得软件包信息..."
-
-#. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
-#, fuzzy
-msgid "Repackaging files"
-msgstr "软件包文件"
-
-#. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
-#, fuzzy
-msgid "Loading cache"
-msgstr "正在下载软件包"
-
-#. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
-msgid "Scanning applications"
-msgstr "扫描应用"
-
-#. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
-#, fuzzy
-msgid "Generating package lists"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
-#, fuzzy
-msgid "Waiting for package manager lock"
-msgstr "正在寻找软件包名"
-
-#. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
-msgid "Waiting for authentication"
-msgstr ""
-"\t\n"
-"等待验证"
+#: ../src/pavucontrol.glade.h:31
+msgid "Stream Title"
+msgstr "流媒体标题"
 
-#. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
-msgid "Updating running applications"
-msgstr ""
-"\t\n"
-"更新运行的应用程序"
-
-#. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
-msgid "Checking applications in use"
-msgstr "检查中使用的应用"
-
-#. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
-msgid "Checking libraries in use"
-msgstr "检查使用的库"
-
-#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:386
-#, fuzzy
-msgid "Copying files"
-msgstr "没有文件"
-
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
-msgid "Trivial"
-msgstr "繁琐"
-
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
-msgid "Normal"
-msgstr "正常"
-
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
-msgid "Important"
-msgstr "重要"
-
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
-msgid "Security"
-msgstr "安全性"
-
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
-msgid "Bug fix "
-msgstr ""
-"\t\n"
-"Bug修复 "
+#: ../src/pavucontrol.glade.h:33
+msgid "_Configuration"
+msgstr "配置(_C)"
 
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
-msgid "Enhancement"
-msgstr "增强"
+#: ../src/pavucontrol.glade.h:34
+msgid "_Input Devices"
+msgstr "输入设备(_I)"
 
-#. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:428
-msgid "Blocked"
-msgstr ""
-"\t\n"
-"封锁"
-
-#. TRANSLATORS: The state of a package
-#. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:433
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
-#, fuzzy
-msgid "Installed"
-msgstr "已安装版本"
-
-#. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:438
-msgid "Available"
-msgstr ""
-"\t\n"
-"可用的"
-
-#. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
-msgid "Downloading"
-msgstr "正在下载"
-
-#. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
-#, fuzzy
-msgid "Updating"
-msgstr "æ›´æ–°"
-
-#. TRANSLATORS: The action of the package, in present tense
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
-#, fuzzy
-msgid "Installing"
-msgstr "正在安装..."
-
-#. TRANSLATORS: The action of the package, in present tense
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
-msgid "Removing"
-msgstr "删除中"
-
-#. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
-msgid "Cleaning up"
-msgstr ""
-"\t\n"
-"清理"
-
-#. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
-#, fuzzy
-msgid "Obsoleting"
-msgstr "过时"
-
-#. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:480
-#, fuzzy
-msgid "Reinstalling"
-msgstr "正在安装..."
-
-#. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:498
-#, fuzzy
-msgid "Downloaded"
-msgstr "正在下载"
-
-#. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
-msgid "Removed"
-msgstr "已删除"
-
-#. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
-msgid "Cleaned up"
-msgstr "已清理"
-
-#. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
-#, fuzzy
-msgid "Obsoleted"
-msgstr "过时"
-
-#. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:522
-#, fuzzy
-msgid "Reinstalled"
-msgstr "安装"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
-msgid "Unknown role type"
-msgstr ""
-"\t\n"
-"未知的任务类型"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
-#, fuzzy
-msgid "Getting dependencies"
-msgstr "正在下载依赖关系"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
-#, fuzzy
-msgid "Getting update details"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
-#, fuzzy
-msgid "Getting details"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
-#, fuzzy
-msgid "Getting requires"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
-#, fuzzy
-msgid "Getting updates"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
-msgid "Searching by details"
-msgstr "搜索的详细信息"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
-#, fuzzy
-msgid "Searching by file"
-msgstr "搜索软件包: "
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
-#, fuzzy
-msgid "Searching groups"
-msgstr "搜索软件包: "
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
-#, fuzzy
-msgid "Searching by name"
-msgstr "搜索软件包: "
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
-#, fuzzy
-msgid "Installing files"
-msgstr "正在安装软件包..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
-msgid "Refreshing cache"
-msgstr "刷新缓存"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
-#, fuzzy
-msgid "Updating packages"
-msgstr "更新软件包"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
-#, fuzzy
-msgid "Updating system"
-msgstr "更新文档"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
-msgid "Canceling"
-msgstr "删除中"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
-#, fuzzy
-msgid "Getting repositories"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
-msgid "Enabling repository"
-msgstr "启用库"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
-#, fuzzy
-msgid "Setting data"
-msgstr "安装"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
-msgid "Resolving"
-msgstr ""
-"\t \t\n"
-"解决中"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
-#, fuzzy
-msgid "Getting file list"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
-#, fuzzy
-msgid "Getting provides"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
-#, fuzzy
-msgid "Installing signature"
-msgstr "正在安装软件包..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
-#, fuzzy
-msgid "Getting packages"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
-#, fuzzy
-msgid "Accepting EULA"
-msgstr "接受 EULA"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
-#, fuzzy
-msgid "Getting upgrades"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
-#, fuzzy
-msgid "Getting categories"
-msgstr "正在获得软件包列表..."
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
-#, fuzzy
-msgid "Getting transactions"
-msgstr "处理"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
-#, fuzzy
-msgid "Simulating install"
-msgstr "安装"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
-msgid "Simulating remove"
-msgstr ""
-"\t\n"
-"模拟删除"
-
-#. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:676
-msgid "Simulating update"
-msgstr "模拟升级"
-
-#. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:66
-msgid "Do you want to allow installing of unsigned software?"
-msgstr "你想允许未签名的软件安装?"
-
-#. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:71
-#, fuzzy
-msgid "The unsigned software will not be installed."
-msgstr "该软件包 '%s' 无法安装:%s"
-
-#. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:104
-#, fuzzy
-msgid "Software source signature required"
-msgstr "要求软件库签名"
-
-#. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:110
-#, fuzzy
-msgid "Software source name"
-msgstr "更改软件源参数"
-
-#. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:113
-msgid "Key URL"
-msgstr "关键网址"
-
-#. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:116
-msgid "Key user"
-msgstr "关键用户"
-
-#. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:119
-#, fuzzy
-msgid "Key ID"
-msgstr "用户ID"
-
-#. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:122
-msgid "Key fingerprint"
-msgstr "密钥的指纹"
-
-#. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:125
-msgid "Key Timestamp"
-msgstr ""
-"\t\n"
-"关键时间戳"
-
-#. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:131
-msgid "Do you accept this signature?"
-msgstr "您接受该签名吗?"
-
-#. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:136
-msgid "The signature was not accepted."
-msgstr "没有接受签名。"
-
-#. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:171
-#, fuzzy
-msgid "End user licence agreement required"
-msgstr "需要最终用户许可协议"
-
-#. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:180
-msgid "Agreement"
-msgstr "合意"
-
-#. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:186
-#, fuzzy
-msgid "Do you accept this agreement?"
-msgstr "您接受该签名吗?"
-
-#. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:191
-#, fuzzy
-msgid "The agreement was not accepted."
-msgstr "没有接受签名。"
-
-#. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:221
-#, fuzzy
-msgid "Media change required"
-msgstr "需要软件包名"
-
-#. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:224
-msgid "Media type"
-msgstr "媒体类型"
-
-#. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:227
-msgid "Media label"
-msgstr ""
-"\t\n"
-"媒体标签"
-
-#. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:230
-msgid "Text"
-msgstr "下一步"
-
-#. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:234
-#, fuzzy
-msgid "Please insert the correct media"
-msgstr "请选择正确的软件包:"
-
-#. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:239
-#, fuzzy
-msgid "The correct media was not inserted."
-msgstr "没有接受签名。"
-
-#. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:254
-msgid "The following packages have to be removed:"
-msgstr "下列软件包必须被删除:"
-
-#. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:259
-#, fuzzy
-msgid "The following packages have to be installed:"
-msgstr "下列软件包必须被删除:"
-
-#. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:264
-#, fuzzy
-msgid "The following packages have to be updated:"
-msgstr "下列软件包必须被删除:"
-
-#. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:269
-#, fuzzy
-msgid "The following packages have to be reinstalled:"
-msgstr "下列软件包必须被删除:"
-
-#. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:274
-#, fuzzy
-msgid "The following packages have to be downgraded:"
-msgstr "下列软件包必须被删除:"
-
-#. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:333
-msgid "Proceed with changes?"
-msgstr ""
-"\t \t\n"
-"有变化进行?"
-
-#. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:338
-msgid "The transaction did not proceed."
-msgstr ""
-"\t\n"
-"这项交易没有继续进行。"
-
-#. SECURITY:
-#. - Normal users do not require admin authentication to accept new
-#. licence agreements.
-#. - Change this to 'auth_admin' for environments where users should not
-#. be given the option to make legal decisions.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:7
-msgid "Accept EULA"
-msgstr "接受 EULA"
-
-#: ../policy/org.freedesktop.packagekit.policy.in.h:8
-msgid "Authentication is required to accept a EULA"
-msgstr "需要验证才可接受 EULA"
-
-#: ../policy/org.freedesktop.packagekit.policy.in.h:9
-msgid ""
-"Authentication is required to cancel a task that was not started by yourself"
-msgstr "需要验证才可取消不是您启动的任务"
+#: ../src/pavucontrol.glade.h:35
+msgid "_Output Devices"
+msgstr "输出设备(_O)"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:10
-msgid "Authentication is required to change software source parameters"
-msgstr "需要验证才可更改软件源参数"
+#: ../src/pavucontrol.glade.h:36
+msgid "_Playback"
+msgstr "回放(_P)"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:11
-msgid ""
-"Authentication is required to consider a key used for signing packages as "
-"trusted"
-msgstr "需要验证才可将用于签注软件包的密钥视为可信的"
+#: ../src/pavucontrol.glade.h:37
+msgid "_Recording"
+msgstr "录音(_R)"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:12
-msgid "Authentication is required to install a signed package"
-msgstr "需要验证才可安装签注的软件包"
+#: ../src/pavucontrol.glade.h:38
+msgid "direction"
+msgstr "方位"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:13
-msgid "Authentication is required to install an untrusted package"
-msgstr "需要验证才可安装不可信的软件包"
+#: ../src/pavucontrol.cc:73
+msgid "Card callback failure"
+msgstr "声卡回叫失败"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:14
-msgid "Authentication is required to refresh the system sources"
-msgstr "需要验证才可刷新系统源"
+#: ../src/pavucontrol.cc:92
+msgid "Sink callback failure"
+msgstr "Sink 回叫失败"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:15
-#, fuzzy
-msgid "Authentication is required to reload the device with a new driver"
-msgstr "需要验证才可刷新系统源"
+#: ../src/pavucontrol.cc:111
+msgid "Source callback failure"
+msgstr "源回叫失败"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:16
-msgid "Authentication is required to remove packages"
-msgstr "需要验证才可删除软件包"
+#: ../src/pavucontrol.cc:130
+msgid "Sink input callback failure"
+msgstr "Sink 输入回叫失败"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:17
-msgid "Authentication is required to rollback a transaction"
-msgstr "需要验证才可重新运行交易"
+#: ../src/pavucontrol.cc:149
+msgid "Source output callback failure"
+msgstr "源输出回叫失败"
 
-#: ../policy/org.freedesktop.packagekit.policy.in.h:18
-msgid ""
-"Authentication is required to set the network proxy used for downloading "
-"packages"
-msgstr "需要验证才可设置用于下载软件包的网络代理服务器"
-
-#: ../policy/org.freedesktop.packagekit.policy.in.h:19
-msgid "Authentication is required to update packages"
-msgstr "需要验证才可更新软件包"
-
-#. SECURITY:
-#. - Normal users are allowed to cancel their own task without
-#. authentication, but a different user id needs the admin password
-#. to cancel another users task.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:25
-msgid "Cancel foreign task"
-msgstr "取消外来的任务"
-
-#. SECURITY:
-#. - Normal users require admin authentication to enable or disable
-#. software sources as this can be used to enable new updates or
-#. install different versions of software.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:31
-msgid "Change software source parameters"
-msgstr "更改软件源参数"
-
-#. SECURITY:
-#. - Normal users do not need authentication to install signed packages
-#. from signed repositories, as this cannot exploit a system.
-#. - Paranoid users (or parents!) can change this to 'auth_admin' or
-#. 'auth_admin_keep'.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:38
-msgid "Install signed package"
-msgstr "安装签注的软件包"
-
-#. SECURITY:
-#. - Normal users require admin authentication to install untrusted or
-#. unrecognised packages, as allowing users to do this without a
-#. password would be a massive security hole.
-#. - This is not retained as each package should be authenticated.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:45
-msgid "Install untrusted local file"
-msgstr "安装不可信本地文件"
-
-#. SECURITY:
-#. - Normal users do not require admin authentication to refresh the
-#. cache, as this doesn't actually install or remove software.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:50
-msgid "Refresh system sources"
-msgstr "刷新系统源"
-
-#. SECURITY:
-#. - Normal users require admin authentication to rebind a driver
-#. so that it works after we install firmware.
-#. - This should not be set to 'yes' as unprivileged users could then
-#. try to rebind drivers in use, for instance security authentication
-#. devices.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:58
-msgid "Reload a device"
-msgstr "重新加载装置"
-
-#. SECURITY:
-#. - Normal users require admin authentication to remove packages as
-#. this can make the system unbootable or stop other applications from
-#. working.
-#. - Be sure to close the tool used to remove the packages after the
-#. admin authentication has been obtained, otherwise packages can still
-#. be removed. If this is not possible, change this authentication to
-#. 'auth_admin'.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:68
-msgid "Remove package"
-msgstr "删除软件包"
-
-#. SECURITY:
-#. - Normal users require admin authentication to rollback system state
-#. as this will change a large number of packages, and could expose the
-#. system to previously patched security vulnerabilities.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:74
-msgid "Rollback to a previous transaction"
-msgstr "重新运行前一个交易"
-
-#. SECURITY:
-#. - Normal users do not require admin authentication to set the proxy
-#. used for downloading packages.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:79
-msgid "Set network proxy"
-msgstr "设置网络代理服务器"
-
-#. SECURITY:
-#. - Normal users require admin authentication to add signing keys.
-#. - This implies adding an explicit trust, and should not be granted
-#. without a secure authentication.
-#. - This is not kept as each package should be authenticated.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:86
-msgid "Trust a key used for signing packages"
-msgstr "相信用来签注软件包的密钥"
-
-#. SECURITY:
-#. - Normal users do not require admin authentication to update the
-#. system as the packages will be signed, and the action is required
-#. to update the system when unattended.
-#. - Changing this to anything other than 'yes' will break unattended
-#. updates.
-#.
-#: ../policy/org.freedesktop.packagekit.policy.in.h:94
-msgid "Update packages"
-msgstr "更新软件包"
-
-#. TRANSLATORS: failed due to DBus security
-#: ../src/pk-main.c:87
-msgid "Startup failed due to security policies on this machine."
-msgstr "由于本机的安全策略导致启动失败"
-
-#. TRANSLATORS: only two ways this can fail...
-#: ../src/pk-main.c:89
-msgid "This can happen for two reasons:"
-msgstr "发生这个可能有两个原因:"
-
-#. TRANSLATORS: only allowed to be owned by root
-#: ../src/pk-main.c:91
-msgid "The correct user is not launching the executable (usually root)"
-msgstr "用户正确但无法启动可执行程序(通常作为根用户)"
-
-#. TRANSLATORS: or we are installed in a prefix
-#: ../src/pk-main.c:93
-msgid ""
-"The org.freedesktop.PackageKit.conf file is not installed in the system "
-"directory:"
-msgstr "org.freedesktop.PackageKit.conf 没有安装到系统目录中:"
+#: ../src/pavucontrol.cc:183
+msgid "Client callback failure"
+msgstr "客户端回叫失败"
 
-#. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
-msgid "Packaging backend to use, e.g. dummy"
-msgstr "使用的打包后端,例如“伪”后端"
+#: ../src/pavucontrol.cc:199
+msgid "Server info callback failure"
+msgstr "服务器信息回叫失败"
 
-#. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
-msgid "Daemonize and detach from the terminal"
-msgstr "后台化并从终端中分离"
-
-#. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
-msgid "Disable the idle timer"
-msgstr "禁止计时器"
-
-#. TRANSLATORS: show version
-#: ../src/pk-main.c:217
-msgid "Show version and exit"
-msgstr "显示版本并退出"
+#: ../src/pavucontrol.cc:217 ../src/pavucontrol.cc:430
+#, c-format
+msgid "Failed to initialize stream_restore extension: %s"
+msgstr "初始化 stream_restore 扩展失败:%s"
 
-#. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
-msgid "Exit after a small delay"
-msgstr "稍稍延迟后退出"
+#: ../src/pavucontrol.cc:235
+msgid "pa_ext_stream_restore_read() failed"
+msgstr "pa_ext_stream_restore_read() 失败"
 
-#. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
-msgid "Exit after the engine has loaded"
-msgstr "引擎载入后退出"
+#: ../src/pavucontrol.cc:252
+msgid "pa_context_get_sink_info_by_index() failed"
+msgstr "pa_context_get_sink_info_by_index() 失败"
 
-#. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
-msgid "PackageKit service"
-msgstr "PackageKit 服务"
+#: ../src/pavucontrol.cc:265
+msgid "pa_context_get_source_info_by_index() failed"
+msgstr "pa_context_get_source_info_by_index() 失败"
 
-#. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
-msgid "Cannot connect to the system bus"
-msgstr "无法连接到系统总线"
+#: ../src/pavucontrol.cc:278 ../src/pavucontrol.cc:291
+msgid "pa_context_get_sink_input_info() failed"
+msgstr "pa_context_get_sink_input_info() 失败"
 
-#. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
-msgid "Error trying to start:"
-msgstr "尝试启动时出错:"
+#: ../src/pavucontrol.cc:304
+msgid "pa_context_get_client_info() failed"
+msgstr "pa_context_get_client_info() 失败"
 
-#: ../src/pk-polkit-action-lookup.c:150
-#, fuzzy
-msgid "To install debugging packages, extra sources need to be enabled"
-msgstr "没有新的软件包安装"
+#: ../src/pavucontrol.cc:314 ../src/pavucontrol.cc:371
+msgid "pa_context_get_server_info() failed"
+msgstr "pa_context_get_server_info() 失败"
 
-#. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
-msgid "The software is not from a trusted source."
-msgstr "该软件是不是来自可靠来源。"
+#: ../src/pavucontrol.cc:327
+msgid "pa_context_get_card_info_by_index() failed"
+msgstr "pa_context_get_card_info_by_index() 失败"
 
-#: ../src/pk-polkit-action-lookup.c:176
-msgid "Do not update this package unless you are sure it is safe to do so."
-msgstr "不更新这个包,除非您确信它是安全的这样做。"
+#: ../src/pavucontrol.cc:362
+msgid "pa_context_subscribe() failed"
+msgstr "pa_context_subscribe() 失败"
 
-#: ../src/pk-polkit-action-lookup.c:177
-msgid "Do not update these packages unless you are sure it is safe to do so."
-msgstr "不更新这些程序包,除非你确定它是安全的这样做。"
+#: ../src/pavucontrol.cc:378
+msgid "pa_context_client_info_list() failed"
+msgstr "pa_context_client_info_list() 失败"
 
-#: ../src/pk-polkit-action-lookup.c:195
-msgid "Do not install this package unless you are sure it is safe to do so."
-msgstr "不要安装此包,除非您确信它是安全的这样做。"
+#: ../src/pavucontrol.cc:385
+msgid "pa_context_get_card_info_list() failed"
+msgstr "pa_context_get_card_info_list() 失败"
 
-#: ../src/pk-polkit-action-lookup.c:196
-msgid "Do not install these packages unless you are sure it is safe to do so."
-msgstr "不要安装这些程序包,除非你确定它是安全的这样做。"
+#: ../src/pavucontrol.cc:392
+msgid "pa_context_get_sink_info_list() failed"
+msgstr "pa_context_get_sink_info_list() 失败"
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "恶意软件可能会损害您的计算机或造成其他伤害。"
+#: ../src/pavucontrol.cc:399
+msgid "pa_context_get_source_info_list() failed"
+msgstr "pa_context_get_source_info_list() 失败"
 
-#. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
-#, fuzzy
-msgid "Many packages"
-msgstr "更新软件包"
+#: ../src/pavucontrol.cc:406
+msgid "pa_context_get_sink_input_info_list() failed"
+msgstr "pa_context_get_sink_input_info_list() 失败"
 
-#. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
-msgid "Only trusted"
-msgstr "只有受信任"
+#: ../src/pavucontrol.cc:413
+msgid "pa_context_get_source_output_info_list() failed"
+msgstr "pa_context_get_source_output_info_list() 失败"
 
-#~ msgid "Percentage"
-#~ msgstr "百分比"
+#: ../src/pavucontrol.cc:437
+msgid "Connection failed"
+msgstr "连接失败"
 
-#~ msgid "Please restart the application as it is being used."
-#~ msgstr "请重新启动正在使用中的程序。"
+#: ../src/cardwidget.cc:87
+msgid "pa_context_set_card_profile_by_index() failed"
+msgstr "pa_context_set_card_profile_by_index() failed"
 
-#~ msgid "The package %s is already installed"
-#~ msgstr "该软件包 '%s' 已经安装"
+#: ../src/channelwidget.cc:104
+msgid "<small>Silence</small>"
+msgstr "<small>静音</small>"
 
-#~ msgid "This tool could not install the files: %s"
-#~ msgstr "本工具无法安装文件:%s"
+#: ../src/channelwidget.cc:104
+msgid "<small>Min</small>"
+msgstr "<small>最小</small>"
 
-#~ msgid "This tool could not remove %s: %s"
-#~ msgstr "该工具无法删除 %s:%s"
+#: ../src/channelwidget.cc:105
+msgid "<small>Max</small>"
+msgstr "<small>最大</small>"
 
-#~ msgid "This tool could not remove the packages: %s"
-#~ msgstr "该工具无法删除本软件包:%s"
+#: ../src/channelwidget.cc:109
+msgid "<small><i>Base</i></small>"
+msgstr "<small><i>低音</i></small>"
 
-#~ msgid "Proceed removing additional packages?"
-#~ msgstr "开始进行删除额外的软件包吗?"
+#: ../src/mainwindow.cc:269
+msgid "Failed to read data from stream"
+msgstr "无法从流媒体中读取数据"
 
-#~ msgid "The package removal was canceled!"
-#~ msgstr "已取消删除本软件包!"
+#: ../src/mainwindow.cc:304 ../src/mainwindow.cc:341
+msgid "Peak detect"
+msgstr "尖峰探测"
 
-#~ msgid "This tool could not download the package %s as it could not be found"
-#~ msgstr "本工具无法下载软件包 '%s' (无法找到)"
+#: ../src/mainwindow.cc:305 ../src/mainwindow.cc:342
+msgid "Failed to create monitoring stream"
+msgstr "无法常见监视流媒体"
 
-#~ msgid "This tool could not download the packages: %s"
-#~ msgstr "本工具无法下载该软件包:%s"
+#: ../src/mainwindow.cc:313 ../src/mainwindow.cc:351
+msgid "Failed to connect monitoring stream"
+msgstr "无法连接到监视流媒体"
 
-#~ msgid "This tool could not update %s: %s"
-#~ msgstr "该工具无法更新 %s:%s"
+#: ../src/mainwindow.cc:466
+msgid ""
+"Ignoring sink-input due to it being designated as an event and thus handled "
+"by the Event widget"
+msgstr "忽略漏输入,因为已将其指定为一个事件,所以由事件程序处理。"
 
-#~ msgid "This tool could not get the requirements for %s: %s"
-#~ msgstr "本工具无法得到 %s 的需求:%s "
+#: ../src/mainwindow.cc:618
+msgid "System Sounds"
+msgstr "系统声音"
 
-#~ msgid "This tool could not get the dependencies for %s: %s"
-#~ msgstr "本工具无法得到 %s 的依赖关系:%s"
+#: ../src/rolewidget.cc:71
+msgid "pa_ext_stream_restore_write() failed"
+msgstr "pa_ext_stream_restore_write() 失败"
 
-#~ msgid "This tool could not get package details for %s: %s"
-#~ msgstr "该工具无法得到 %s 的软件包详情:%s"
+#: ../src/sinkinputwidget.cc:35
+msgid "on"
+msgstr "打开"
 
-#~ msgid "This tool could not find the files for %s: %s"
-#~ msgstr "该工具无法找到 %s 的文件:%s"
+#: ../src/sinkinputwidget.cc:38
+msgid "Terminate Playback"
+msgstr "终止回放"
 
-#~ msgid "This tool could not get the file list for %s: %s"
-#~ msgstr "该工具无法得到 %s 的文件清单:%s"
+#: ../src/sinkinputwidget.cc:61
+msgid "Unknown output"
+msgstr "未知输出"
 
-#~ msgid "File already exists: %s"
-#~ msgstr "文件已存在: %s"
+#: ../src/sinkinputwidget.cc:72
+msgid "pa_context_set_sink_input_volume() failed"
+msgstr "pa_context_set_sink_input_volume() 失败"
 
-#~ msgid "This tool could not get package list: %s"
-#~ msgstr "该工具无法得到软件表列表:%s"
+#: ../src/sinkinputwidget.cc:87
+msgid "pa_context_set_sink_input_mute() failed"
+msgstr "pa_context_set_sink_input_mute() 失败"
 
-#~ msgid "Failed to save to disk"
-#~ msgstr "存盘失败"
+#: ../src/sinkinputwidget.cc:97
+msgid "pa_context_kill_sink_input() failed"
+msgstr "pa_context_kill_sink_input() 失败"
 
-#~ msgid "File does not exist: %s"
-#~ msgstr "文件不存在 : %s"
+#: ../src/sinkinputwidget.cc:133
+msgid "pa_context_move_sink_input_by_index() failed"
+msgstr "pa_context_move_sink_input_by_index() 失败"
 
-#~ msgid "Packages to add"
-#~ msgstr "添加软件包"
+#: ../src/sinkwidget.cc:48
+msgid "pa_context_set_sink_volume_by_index() failed"
+msgstr "pa_context_set_sink_volume_by_index() 失败"
 
-#~ msgid "Packages to remove"
-#~ msgstr "删除软件包"
+#: ../src/sinkwidget.cc:63
+msgid "Volume Control Feedback Sound"
+msgstr "音量控制反馈声音"
 
-#~ msgid "No new packages need to be installed"
-#~ msgstr "没有新的软件包安装"
+#: ../src/sinkwidget.cc:80
+msgid "pa_context_set_sink_mute_by_index() failed"
+msgstr "pa_context_set_sink_mute_by_index() 失败"
 
-#~ msgid "not found."
-#~ msgstr "没有找到"
+#: ../src/sinkwidget.cc:94
+msgid "pa_context_set_default_sink() failed"
+msgstr "pa_context_set_default_sink() 失败"
 
-#~ msgid "No packages can be found to install"
-#~ msgstr "找不到软件包安装"
+#: ../src/sinkwidget.cc:114
+msgid "pa_context_set_sink_port_by_index() failed"
+msgstr "pa_context_set_sink_port_by_index() 失败"
 
-#~ msgid "This tool could not find the update details for %s: %s"
-#~ msgstr "该工具无法找到 %s 的更新详情:%s"
+#: ../src/sourceoutputwidget.cc:35
+msgid "from"
+msgstr "来自"
 
-#~ msgid "This tool could not get the update details for %s: %s"
-#~ msgstr "该工具无法得到 %s 的更新详情:%s"
+#: ../src/sourceoutputwidget.cc:38
+msgid "Terminate Recording"
+msgstr "终止录制"
 
-#~ msgid "Error:"
-#~ msgstr "错误:"
+#: ../src/sourceoutputwidget.cc:61
+msgid "Unknown input"
+msgstr "未知输入"
 
-#~ msgid "Do you agree to this license?"
-#~ msgstr "您同意本许可吗?"
+#: ../src/sourceoutputwidget.cc:71
+msgid "pa_context_kill_source_output() failed"
+msgstr "pa_context_kill_source_output() 失败"
 
-#~ msgid "The license was refused."
-#~ msgstr "拒绝该许可。"
+#: ../src/sourceoutputwidget.cc:108
+msgid "pa_context_move_source_output_by_index() failed"
+msgstr "pa_context_move_source_output_by_index() 失败"
 
-#~ msgid "This tool could not connect to system DBUS."
-#~ msgstr "该工具无法连接到系统 DBUS。"
+#: ../src/sourcewidget.cc:44
+msgid "pa_context_set_source_volume_by_index() failed"
+msgstr "pa_context_set_source_volume_by_index() 失败"
 
-#~ msgid "A list file name to create is required"
-#~ msgstr "需要建立一个文件列表"
+#: ../src/sourcewidget.cc:59
+msgid "pa_context_set_source_mute_by_index() failed"
+msgstr "pa_context_set_source_mute_by_index() 失败"
 
-#~ msgid "A list file to open is required"
-#~ msgstr "需要打开一个文件列表"
+#: ../src/sourcewidget.cc:73
+msgid "pa_context_set_default_source() failed"
+msgstr "pa_context_set_default_source() 失败"
 
-#~ msgid "Incorrect privileges for this operation"
-#~ msgstr "您没有本次操作需要的必要权限"
+#: ../src/sourcewidget.cc:95
+msgid "pa_context_set_source_port_by_index() failed"
+msgstr "pa_context_set_source_port_by_index() 失败"
 
-#~ msgid "The package could not be found"
-#~ msgstr "无法找到该软件包"
+#: ../src/streamwidget.cc:45
+msgid "Terminate"
+msgstr "终止"
 
-#~ msgid "Failed to launch:"
-#~ msgstr "无法执行"
commit ddf8a1545a494671e99c36c3be13abdd282a06e2
Author: Richard Hughes <richard at hughsie.com>
Date:   Fri Dec 11 15:03:41 2009 +0000

    Add a new error enum 'failed-due-to-running-process' for future code

diff --git a/lib/packagekit-glib2/pk-enum.c b/lib/packagekit-glib2/pk-enum.c
index bd4e453..c7aad97 100644
--- a/lib/packagekit-glib2/pk-enum.c
+++ b/lib/packagekit-glib2/pk-enum.c
@@ -191,6 +191,7 @@ static const PkEnumMatch enum_error[] = {
 	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_BUILD, "package-failed-to-build"},
 	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_INSTALL, "package-failed-to-install"},
 	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_REMOVE, "package-failed-to-remove"},
+	{PK_ERROR_ENUM_UPDATE_FAILED_DUE_TO_RUNNING_PROCESS, "failed-due-to-running-process"},
 	{0, NULL}
 };
 
diff --git a/lib/packagekit-glib2/pk-enum.h b/lib/packagekit-glib2/pk-enum.h
index e2591a4..80778b1 100644
--- a/lib/packagekit-glib2/pk-enum.h
+++ b/lib/packagekit-glib2/pk-enum.h
@@ -320,6 +320,7 @@ typedef enum {
 	PK_ERROR_ENUM_PACKAGE_FAILED_TO_BUILD,
 	PK_ERROR_ENUM_PACKAGE_FAILED_TO_INSTALL,
 	PK_ERROR_ENUM_PACKAGE_FAILED_TO_REMOVE,
+	PK_ERROR_ENUM_UPDATE_FAILED_DUE_TO_RUNNING_PROCESS,
 	PK_ERROR_ENUM_LAST
 } PkErrorEnum;
 
commit 43f80a9b26dad6b2db105e86925c39e640cdf5ec
Author: Richard Hughes <richard at hughsie.com>
Date:   Fri Dec 11 11:29:19 2009 +0000

    Add PkProc, to monitor the running applications on the system for future functionality

diff --git a/src/Makefile.am b/src/Makefile.am
index a7782e0..f893abb 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -51,6 +51,8 @@ shared_SOURCES =					\
 	pk-marshal.h					\
 	pk-lsof.c					\
 	pk-lsof.h					\
+	pk-proc.c					\
+	pk-proc.h					\
 	pk-dbus.c					\
 	pk-dbus.h					\
 	pk-transaction.c				\
diff --git a/src/pk-proc.c b/src/pk-proc.c
new file mode 100644
index 0000000..b68e5cc
--- /dev/null
+++ b/src/pk-proc.c
@@ -0,0 +1,373 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
+ *
+ * Copyright (C) 2009 Richard Hughes <richard at hughsie.com>
+ *
+ * Licensed under the GNU General Public License Version 2
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <string.h>
+#include <stdlib.h>
+#include <glib.h>
+
+#include "egg-debug.h"
+#include "egg-string.h"
+
+#include "pk-proc.h"
+
+#define PK_PROC_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_PROC, PkProcPrivate))
+
+struct PkProcPrivate
+{
+	GPtrArray		*list_data;
+};
+
+G_DEFINE_TYPE (PkProc, pk_proc, G_TYPE_OBJECT)
+
+typedef struct {
+	guint			 pid;
+	gchar			*cmdline;
+} PkProcData;
+
+/**
+ * pk_proc_add_pid:
+ **/
+static gboolean
+pk_proc_add_pid (GPtrArray *array, guint pid)
+{
+	guint i;
+	guint pid_tmp;
+	gboolean found = FALSE;
+
+	/* search already list */
+	for (i=0; i<array->len; i++) {
+		pid_tmp = GPOINTER_TO_INT (g_ptr_array_index (array, i));
+		if (pid_tmp == pid) {
+			found = TRUE;
+			break;
+		}
+	}
+
+	/* not found, so add */
+	if (!found)
+		g_ptr_array_add (array, GINT_TO_POINTER (pid));
+
+	return !found;
+}
+
+/**
+ * pk_proc_data_free:
+ **/
+static void
+pk_proc_data_free (PkProcData *proc)
+{
+	g_free (proc->cmdline);
+	g_free (proc);
+}
+
+/**
+ * pk_proc_data_new:
+ **/
+static PkProcData *
+pk_proc_data_new (guint pid, const gchar *cmdline)
+{
+	PkProcData *data;
+	data = g_new0 (PkProcData, 1);
+	data->pid = pid;
+	data->cmdline = g_strdup (cmdline);
+	return data;
+}
+
+
+
+/**
+ * pk_proc_refresh_find_file:
+ **/
+static gchar *
+pk_proc_refresh_find_file (const gchar *filename)
+{
+	gchar *path;
+	gboolean ret;
+	guint i;
+	const gchar *paths[] = { "/usr/bin", "/usr/sbin", "/bin", "/sbin", "/usr/libexec", "/usr/lib/vte/", NULL };
+
+	/* try each one */
+	for (i=0; paths[i] != NULL; i++) {
+		path = g_build_filename (paths[i], filename, NULL);
+		ret = g_file_test (path, G_FILE_TEST_IS_REGULAR);
+		if (ret)
+			goto out;
+		g_free (path);
+	}
+
+	/* we failed */
+	path = NULL;
+out:
+	return path;
+}
+
+/**
+ * pk_proc_refresh_add_file:
+ **/
+static gboolean
+pk_proc_refresh_add_file (PkProc *proc, const gchar *pid_text, const gchar *path)
+{
+	gboolean ret = FALSE;
+	GError *error = NULL;
+	gchar *cmdline = NULL;
+	gint pid = -1;
+	PkProcData *data;
+	gchar *cmdline_full = NULL;
+
+	/* get cmdline */
+	ret = g_file_get_contents (path, &cmdline, NULL, &error);
+	if (!ret) {
+		egg_warning ("failed to get cmdline: %s", error->message);
+		g_error_free (error);
+		goto out;
+	}
+
+	/* remove added junk */
+	g_strdelimit (cmdline, " \t:;", '\0');
+
+	/* do we have anything left? */
+	if (cmdline[0] == '\0') {
+		ret = FALSE;
+		goto out;
+	}
+
+	/* prepend path if it does not already exist */
+	if (cmdline[0] == '/') {
+		cmdline_full = g_strdup (cmdline);
+	} else {
+		cmdline_full = pk_proc_refresh_find_file (cmdline);
+		if (cmdline_full == NULL) {
+			egg_warning ("cannot find in any bin dir: %s", cmdline);
+			ret = FALSE;
+			goto out;
+		}
+	}
+
+	/* check if path exists */
+	ret = g_file_test (cmdline_full, G_FILE_TEST_IS_REGULAR);
+	if (!ret) {
+		egg_warning ("cmdline does not exist: %s", cmdline_full);
+		goto out;
+	}
+
+	/* parse PID */
+	ret = egg_strtoint (pid_text, &pid);
+	if (!ret) {
+		egg_warning ("failed to parse pid: '%s'", pid_text);
+		goto out;
+	}
+
+	/* add data to array */
+	data = pk_proc_data_new (pid, cmdline_full);
+	g_ptr_array_add (proc->priv->list_data, data);
+	egg_debug ("adding %s (%i)", data->cmdline, data->pid);
+out:
+	g_free (cmdline_full);
+	g_free (cmdline);
+	return ret;
+}
+
+/**
+ * pk_proc_refresh:
+ **/
+gboolean
+pk_proc_refresh (PkProc *proc)
+{
+	gboolean ret = FALSE;
+	GError *error = NULL;
+	GDir *dir;
+	const gchar *filename;
+	gchar *path;
+
+	g_return_val_if_fail (PK_IS_PROC (proc), FALSE);
+
+	/* open directory */
+	dir = g_dir_open ("/proc", 0, &error);
+	if (dir == NULL) {
+		egg_warning ("failed to open directory: %s", error->message);
+		g_error_free (error);
+		goto out;
+	}
+
+	/* clear */
+	g_ptr_array_set_size (proc->priv->list_data, 0);
+
+	/* find all files */
+	filename = g_dir_read_name (dir);
+	while (filename != NULL) {
+		/* this is Linux specific, but #ifdef code welcome */
+		path = g_build_filename ("/proc", filename, "cmdline", NULL);
+
+		/* only process files that exist */
+		ret = g_file_test (path, G_FILE_TEST_IS_REGULAR);
+		if (ret)
+			pk_proc_refresh_add_file (proc, filename, path);
+
+		/* get next entry */
+		filename = g_dir_read_name (dir);
+		g_free (path);
+	}
+
+	/* success */
+	ret = TRUE;
+
+out:
+	if (dir != NULL)
+		g_dir_close (dir);
+	return ret;
+}
+
+/**
+ * pk_proc_get_pids_for_cmdlines:
+ **/
+GPtrArray *
+pk_proc_get_pids_for_filenames (PkProc *proc, gchar **filenames)
+{
+	guint i;
+	guint j;
+	gboolean ret;
+	GPtrArray *list_data;
+	GPtrArray *pids = NULL;
+	const PkProcData *data;
+
+	g_return_val_if_fail (PK_IS_PROC (proc), NULL);
+
+	/* might not have been refreshed ever */
+	list_data = proc->priv->list_data;
+	if (list_data->len == 0) {
+		ret = pk_proc_refresh (proc);
+		if (!ret) {
+			egg_warning ("failed to refresh");
+			goto out;
+		}
+	}
+
+	/* create array of pids that are using this library */
+	pids = g_ptr_array_new ();
+	for (i=0; filenames[i] != NULL; i++) {
+		for (j=0; j < list_data->len; j++) {
+			data = g_ptr_array_index (list_data, j);
+			if (g_strcmp0 (filenames[i], data->cmdline) == 0) {
+				pk_proc_add_pid (pids, data->pid);
+			}
+		}
+	}
+out:
+	return pids;
+}
+
+/**
+ * pk_proc_finalize:
+ **/
+static void
+pk_proc_finalize (GObject *object)
+{
+	PkProc *proc;
+
+	g_return_if_fail (object != NULL);
+	g_return_if_fail (PK_IS_PROC (object));
+	proc = PK_PROC (object);
+
+	g_ptr_array_unref (proc->priv->list_data);
+
+	G_OBJECT_CLASS (pk_proc_parent_class)->finalize (object);
+}
+
+/**
+ * pk_proc_class_init:
+ **/
+static void
+pk_proc_class_init (PkProcClass *klass)
+{
+	GObjectClass *object_class = G_OBJECT_CLASS (klass);
+	object_class->finalize = pk_proc_finalize;
+	g_type_class_add_private (klass, sizeof (PkProcPrivate));
+}
+
+/**
+ * pk_proc_init:
+ *
+ * initializes the proc class. NOTE: We expect proc objects
+ * to *NOT* be removed or added during the session.
+ * We only control the first proc object if there are more than one.
+ **/
+static void
+pk_proc_init (PkProc *proc)
+{
+	proc->priv = PK_PROC_GET_PRIVATE (proc);
+	proc->priv->list_data = g_ptr_array_new_with_free_func ((GDestroyNotify) pk_proc_data_free);
+}
+
+/**
+ * pk_proc_new:
+ * Return value: A new proc class instance.
+ **/
+PkProc *
+pk_proc_new (void)
+{
+	PkProc *proc;
+	proc = g_object_new (PK_TYPE_PROC, NULL);
+	return PK_PROC (proc);
+}
+
+/***************************************************************************
+ ***                          MAKE CHECK TESTS                           ***
+ ***************************************************************************/
+#ifdef EGG_TEST
+#include "egg-test.h"
+
+void
+pk_proc_test (EggTest *test)
+{
+	gboolean ret;
+	PkProc *proc;
+	GPtrArray *pids;
+	gchar *files[] = { "/sbin/udevd", NULL };
+
+	if (!egg_test_start (test, "PkProc"))
+		return;
+
+	/************************************************************/
+	egg_test_title (test, "get an instance");
+	proc = pk_proc_new ();
+	egg_test_assert (test, proc != NULL);
+
+	/************************************************************/
+	egg_test_title (test, "refresh proc data");
+	ret = pk_proc_refresh (proc);
+	egg_test_assert (test, ret);
+
+	/************************************************************/
+	egg_test_title (test, "get pids for files");
+	pids = pk_proc_get_pids_for_filenames (proc, files);
+	egg_test_assert (test, pids->len > 0);
+	g_ptr_array_unref (pids);
+
+	g_object_unref (proc);
+
+	egg_test_end (test);
+}
+#endif
+
diff --git a/src/pk-proc.h b/src/pk-proc.h
new file mode 100644
index 0000000..8d03964
--- /dev/null
+++ b/src/pk-proc.h
@@ -0,0 +1,59 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
+ *
+ * Copyright (C) 2009 Richard Hughes <richard at hughsie.com>
+ *
+ * Licensed under the GNU General Public License Version 2
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+#ifndef __PK_PROC_H
+#define __PK_PROC_H
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define PK_TYPE_PROC		(pk_proc_get_type ())
+#define PK_PROC(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_PROC, PkProc))
+#define PK_PROC_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_PROC, PkProcClass))
+#define PK_IS_PROC(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_PROC))
+#define PK_IS_PROC_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_PROC))
+#define PK_PROC_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_PROC, PkProcClass))
+
+typedef struct PkProcPrivate PkProcPrivate;
+
+typedef struct
+{
+	GObject		 parent;
+	PkProcPrivate	*priv;
+} PkProc;
+
+typedef struct
+{
+	GObjectClass	parent_class;
+} PkProcClass;
+
+GType		 pk_proc_get_type		(void);
+PkProc		*pk_proc_new			(void);
+
+gboolean	 pk_proc_refresh		(PkProc		*proc);
+GPtrArray	*pk_proc_get_pids_for_filenames	(PkProc		*proc,
+						 gchar		**filenames);
+
+G_END_DECLS
+
+#endif /* __PK_PROC_H */
+
diff --git a/src/pk-self-test.c b/src/pk-self-test.c
index 5ab6e96..57c8f74 100644
--- a/src/pk-self-test.c
+++ b/src/pk-self-test.c
@@ -27,6 +27,7 @@
 /* prototypes */
 void egg_string_test (EggTest *test);
 void pk_lsof_test (EggTest *test);
+void pk_proc_test (EggTest *test);
 void pk_conf_test (EggTest *test);
 void pk_store_test (EggTest *test);
 void pk_inhibit_test (EggTest *test);
@@ -54,6 +55,7 @@ main (int argc, char **argv)
 	egg_string_test (test);
 
 	/* components */
+	pk_proc_test (test);
 	pk_lsof_test (test);
 	pk_file_monitor_test (test);
 	pk_time_test (test);
commit 9f2645de4b58c37b11165a0f03d8f9f6acb25c0d
Author: Richard Hughes <richard at hughsie.com>
Date:   Fri Dec 11 11:27:20 2009 +0000

    trivial: correct a warning message in PkTransactionExtra

diff --git a/src/pk-transaction-extra.c b/src/pk-transaction-extra.c
index 0bf6b54..221ebad 100644
--- a/src/pk-transaction-extra.c
+++ b/src/pk-transaction-extra.c
@@ -877,7 +877,7 @@ pk_transaction_extra_get_uid (PkTransactionExtra *extra, guint pid)
 	filename = g_strdup_printf ("/proc/%i/loginuid", pid);
 	ret = g_file_get_contents (filename, &uid_text, NULL, &error);
 	if (!ret) {
-		egg_warning ("failed to get cmdline: %s", error->message);
+		egg_warning ("failed to get loginuid: %s", error->message);
 		g_error_free (error);
 		goto out;
 	}
commit 58e91563952e853ac64b2c555fa3a43376229677
Author: Richard Hughes <richard at hughsie.com>
Date:   Fri Dec 11 11:26:41 2009 +0000

    trivial: use g_ptr_array_unref() in PkLsof

diff --git a/src/pk-lsof.c b/src/pk-lsof.c
index fea94d6..3a9efc7 100644
--- a/src/pk-lsof.c
+++ b/src/pk-lsof.c
@@ -161,7 +161,6 @@ pk_lsof_refresh (PkLsof *lsof)
 	}
 
 	/* clear */
-	g_ptr_array_foreach (lsof->priv->list_data, (GFunc) pk_lsof_data_free, NULL);
 	g_ptr_array_set_size (lsof->priv->list_data, 0);
 
 	/* split into lines */
@@ -252,6 +251,7 @@ pk_lsof_get_pids_for_filenames (PkLsof *lsof, gchar **filenames)
 	for (i=0; filenames[i] != NULL; i++) {
 		for (j=0; j < list_data->len; j++) {
 			data = g_ptr_array_index (list_data, j);
+			egg_debug ("got %s", data->filename);
 			if (g_strcmp0 (filenames[i], data->filename) == 0) {
 				pk_lsof_add_pid (pids, data->pid);
 			}
@@ -273,8 +273,7 @@ pk_lsof_finalize (GObject *object)
 	g_return_if_fail (PK_IS_LSOF (object));
 	lsof = PK_LSOF (object);
 
-	g_ptr_array_foreach (lsof->priv->list_data, (GFunc) pk_lsof_data_free, NULL);
-	g_ptr_array_free (lsof->priv->list_data, TRUE);
+	g_ptr_array_unref (lsof->priv->list_data);
 
 	G_OBJECT_CLASS (pk_lsof_parent_class)->finalize (object);
 }
@@ -301,7 +300,7 @@ static void
 pk_lsof_init (PkLsof *lsof)
 {
 	lsof->priv = PK_LSOF_GET_PRIVATE (lsof);
-	lsof->priv->list_data = g_ptr_array_new ();
+	lsof->priv->list_data = g_ptr_array_new_with_free_func ((GDestroyNotify) pk_lsof_data_free);
 }
 
 /**
@@ -347,7 +346,7 @@ pk_lsof_test (EggTest *test)
 	egg_test_title (test, "get pids for files");
 	pids = pk_lsof_get_pids_for_filenames (lsof, files);
 	egg_test_assert (test, pids->len > 0);
-	g_ptr_array_free (pids, TRUE);
+	g_ptr_array_unref (pids);
 
 	g_object_unref (lsof);
 
commit de5b58b5bbe1b956892ad657c78131131ae8109a
Author: Richard Hughes <richard at hughsie.com>
Date:   Wed Dec 9 11:37:04 2009 +0000

    trivial: fix a warning when building pk-device-rebind

diff --git a/contrib/device-rebind/pk-device-rebind.c b/contrib/device-rebind/pk-device-rebind.c
index b3ef15e..54d7458 100644
--- a/contrib/device-rebind/pk-device-rebind.c
+++ b/contrib/device-rebind/pk-device-rebind.c
@@ -30,6 +30,7 @@
 #include <glib-object.h>
 #include <glib/gi18n.h>
 #include <gudev/gudev.h>
+#include <locale.h>
 
 #define PK_DEVICE_REBIND_EXIT_CODE_SUCCESS			0
 #define PK_DEVICE_REBIND_EXIT_CODE_FAILED			1
commit 4635f723ea9be747f6fcc23d64ba7f1d992cdae1
Author: amitakhya <amitakhya at fedoraproject.org>
Date:   Fri Dec 11 12:02:23 2009 +0000

    Sending translation for Assamese

diff --git a/po/as.po b/po/as.po
index 38f8230..002e803 100644
--- a/po/as.po
+++ b/po/as.po
@@ -6,9 +6,9 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.PackageKit.as\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-06 08:29+0000\n"
-"PO-Revision-Date: 2009-09-08 11:49+0530\n"
-"Last-Translator: Amitakhya Phukan <aphukan at fedoraproject.org>\n"
+"POT-Creation-Date: 2009-12-07 08:29+0000\n"
+"PO-Revision-Date: 2009-12-11 14:41+0530\n"
+"Last-Translator: \n"
 "Language-Team: Assamese <>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -17,1341 +17,954 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:238 ../client/pk-console-test.c:147
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
-msgstr "লেন-দেন"
+msgstr "লেন দেন"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:240 ../client/pk-console-test.c:149
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "ব্যৱস্থাপ্ৰণালীৰ সময়"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:242 ../client/pk-console-test.c:151
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "সফল হ'ল"
 
-#: ../client/pk-console.c:242 ../client/pk-console-test.c:151
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "True"
 
-#: ../client/pk-console.c:242 ../client/pk-console-test.c:151
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "False"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:244 ../client/pk-console-test.c:153
-#: ../src/pk-polkit-action-lookup.c:327
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:336
 msgid "Role"
 msgstr "ভূমিকা"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:249 ../client/pk-console-test.c:158
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "কালাৱধি"
 
-#: ../client/pk-console.c:249 ../client/pk-console-test.c:158
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(ছেকেণ্ড)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:253 ../client/pk-console-test.c:162
-#: ../src/pk-polkit-action-lookup.c:341
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:350
 msgid "Command line"
 msgstr "আদেশ শাৰী"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:255 ../client/pk-console-test.c:164
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ব্যৱহাৰকৰ্তাৰ ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:262 ../client/pk-console-test.c:171
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "ব্যৱহাৰকৰ্তাৰ নাম"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:266 ../client/pk-console-test.c:175
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "প্ৰকৃত নাম"
 
-#: ../client/pk-console.c:274 ../client/pk-console-test.c:183
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "প্ৰভাৱিত সৰঞ্জাম:"
 
-#: ../client/pk-console.c:276 ../client/pk-console-test.c:185
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "প্ৰভাৱিত সৰঞ্জাম: কোনো নাই"
 
-#. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../client/pk-console.c:337 ../client/pk-task-text.c:220
-msgid "The following packages have to be removed:"
-msgstr "তলৰ সৰঞ্জামসমূহ আঁতৰাব লাগিব:"
-
-#. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../client/pk-console.c:340 ../client/pk-task-text.c:225
-msgid "The following packages have to be installed:"
-msgstr "তলৰ সৰঞ্জামসমূহ সংস্থাপন কৰিব লাগিব:"
-
-#. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../client/pk-console.c:343 ../client/pk-task-text.c:230
-msgid "The following packages have to be updated:"
-msgstr "তলৰ সৰঞ্জামসমূহ উন্নত কৰিব লাগিব:"
-
-#. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../client/pk-console.c:346 ../client/pk-task-text.c:235
-msgid "The following packages have to be reinstalled:"
-msgstr "তলৰ সৰঞ্জামসমূহক পুনঃ সংস্থাপন কৰিব লাগিব:"
-
-#. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../client/pk-console.c:349 ../client/pk-task-text.c:240
-msgid "The following packages have to be downgraded:"
-msgstr "নিম্নলিখিত সৰঞ্জামসমূহ ডাউনগ্ৰেড কৰা আৱশ্যক:"
-
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:363 ../client/pk-console-test.c:205
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "বিতৰণ "
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:365 ../client/pk-console-test.c:207
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "ধৰণ"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#. TRANSLATORS: this is any summary text describing the upgrade
-#. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:367 ../client/pk-console.c:390
-#: ../client/pk-console-test.c:209 ../client/pk-console-test.c:230
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "সাৰাংশ"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:379 ../client/pk-console-test.c:219
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "বিভাগ"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:381 ../client/pk-console-test.c:221
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:384 ../client/pk-console-test.c:224
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "পেৰেন্ট"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:387 ../client/pk-console-test.c:227
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "নাম"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:393 ../client/pk-console-test.c:233
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "আইকন"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:408 ../client/pk-console-test.c:247
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "উন্নয়নৰ বিৱৰণ:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
+#. TRANSLATORS: the package that is not signed by a known key
+#. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:410 ../client/pk-console-test.c:253
-#: ../client/pk-task-text.c:101 ../client/pk-task-text.c:153
-#: ../src/pk-polkit-action-lookup.c:352
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:361
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "সৰঞ্জাম"
 msgstr[1] "সৰঞ্জামসমূহ"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:413 ../client/pk-console-test.c:256
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "ব্যৱস্থাপ্ৰণালী বৰ্ত্তমানলৈ অনা তথ্য"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:417 ../client/pk-console-test.c:260
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "অপ্ৰচলিত"
 
 #. TRANSLATORS: details about the update, the vendor URLs
-#: ../client/pk-console.c:421 ../client/pk-console-test.c:264
-#: ../client/pk-task-text.c:154
+#. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "বিক্ৰেতা"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:425 ../client/pk-console-test.c:268
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:429 ../client/pk-console-test.c:272
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:433 ../client/pk-console-test.c:276
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "পুনৰাৰম্ভ"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:437 ../client/pk-console-test.c:280
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "টেক্সট উন্নত কৰক"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:441 ../client/pk-console-test.c:284
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "সলনিবোৰ"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:445 ../client/pk-console-test.c:288
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "অৱস্থা"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:450 ../client/pk-console-test.c:293
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "প্ৰদান কৰা হ'ল"
 
 #. TRANSLATORS: details about the update, date the update was updated
-#: ../client/pk-console.c:455 ../client/pk-console-test.c:298
+#. TRANSLATORS: The action of the package, in past tense
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "উন্নত কৰা হ'ল"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:475 ../client/pk-console-test.c:316
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "সক্ৰিয়"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:478 ../client/pk-console-test.c:319
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "নিষ্ক্ৰিয়"
 
-#: ../client/pk-console.c:555 ../client/pk-console.c:557
-msgid "Percentage"
-msgstr "শতাংশ"
-
-#: ../client/pk-console.c:557
-msgid "Unknown"
-msgstr "অজ্ঞাত"
-
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:599 ../client/pk-console-test.c:341
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
-msgstr "-ৰ দ্বাৰা ব্যৱস্থাপ্ৰণালীৰ পুনৰাৰম্ভৰ প্ৰয়োজন:"
+msgstr " ৰ দ্বাৰা ব্যৱস্থাপ্ৰণালীৰ পুনৰাৰম্ভৰ প্ৰয়োজন:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:602 ../client/pk-console-test.c:344
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "অধিবেশনৰ পুনৰাৰম্ভৰ প্ৰয়োজন:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:605 ../client/pk-console-test.c:347
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "চিহ্নিত সৰঞ্জামৰ ক্ষেত্ৰত প্ৰণালী পুনৰাৰম্ভ (সুৰক্ষা) কৰা আৱশ্যক:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:608 ../client/pk-console-test.c:350
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "অধিবেশন পুনৰাৰম্ভ (সুৰক্ষা) কৰা আৱশ্যক:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:611 ../client/pk-console-test.c:353
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
-msgstr "-ৰ দ্বাৰা অনুপ্ৰয়োগৰ পুনৰাৰম্ভৰ প্ৰয়োজন: "
+msgstr " ৰ দ্বাৰা অনুপ্ৰয়োগৰ পুনৰাৰম্ভৰ প্ৰয়োজন: "
+
+#. TRANSLATORS: This a list of details about the package
+#: ../client/pk-console.c:507
+msgid "Package description"
+msgstr "সৰঞ্জামৰ বিৱৰণ"
+
+#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
+#: ../client/pk-console.c:538
+msgid "Message:"
+msgstr "বাৰ্তা:"
+
+#. TRANSLATORS: This where the package has no files
+#: ../client/pk-console.c:559
+msgid "No files"
+msgstr "কোনো নথিপত্ৰ নাই"
+
+#. TRANSLATORS: This a list files contained in the package
+#: ../client/pk-console.c:564
+msgid "Package files"
+msgstr "সৰঞ্জামৰ নথিপত্ৰ"
+
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "শতাংশ"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "অৱস্থা"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "ফলাফল:"
+
+#. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
+#: ../client/pk-console.c:685
+msgid "Fatal error"
+msgstr "গুৰুতৰ সমস্যা"
+
+#. TRANSLATORS: the transaction failed in a way we could not expect
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
+msgid "The transaction failed"
+msgstr "লেন দেন বিফল হৈছে"
+
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "এই মুহূৰ্তে কোনো উন্নয়ন উপলব্ধ নাই ।"
 
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:666 ../client/pk-console-test.c:704
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "উন্নয়ন সম্পূৰ্ণ কৰিবলৈ অনুগ্ৰহ কৰি কম্পিউটাৰ পুনৰাৰম্ভ কৰক ।"
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:669 ../client/pk-console-test.c:707
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "উন্নয়ন সম্পূৰ্ণ কৰিবলৈ প্ৰস্থান কৰি প্ৰৱেশ কৰক ।"
 
-#. TRANSLATORS: a package needs to restart the application
-#: ../client/pk-console.c:672
-msgid "Please restart the application as it is being used."
-msgstr "ব্যৱহাৰ কৰাৰ সময়ত অনুপ্ৰয়োগ পুনৰাৰম্ভ কৰক ।"
-
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:675 ../client/pk-console-test.c:710
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
 msgstr ""
-"সুৰক্ষা বিষয়ক গুৰুত্বপূৰ্ণ উন্নয়ন সংস্থাপন কৰা হৈছে । উন্নয়ন সম্পূৰ্ণ কৰাৰ বাবে অনুগ্ৰহ কৰি কম্পিউটাৰ পুনৰাৰম্ভ "
-"কৰক ।"
+"সুৰক্ষা বিষয়ক গুৰুত্বপূৰ্ণ উন্নয়ন সংস্থাপন কৰা হৈছে । উন্নয়ন সম্পূৰ্ণ কৰাৰ বাবে অনুগ্ৰহ কৰি "
+"কম্পিউটাৰ পুনৰাৰম্ভ কৰক ।"
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:678 ../client/pk-console-test.c:713
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
 msgstr ""
-"সুৰক্ষা বিষয়ক গুৰুত্বপূৰ্ণ উন্নয়ন সংস্থাপন কৰা হৈছে । উন্নয়ন সম্পন্ন কৰাৰ বাবে অনুগ্ৰহ "
-"কৰি প্ৰস্থান কৰি পুনঃ প্ৰৱেশ কৰক ।"
-
-#. TRANSLATORS: The package is already installed on the system
-#: ../client/pk-console.c:810
-#, c-format
-msgid "The package %s is already installed"
-msgstr "%s সৰঞ্জাম ইতিমধ্যে সংস্থাপিত"
-
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:818
-#, c-format
-msgid "The package %s could not be installed: %s"
-msgstr "%s সৰঞ্জাম সংস্থাপন কৰিব নোৱাৰি: %s"
-
-#. TRANSLATORS: There was a programming error that shouldn't happen. The detailed error follows
-#: ../client/pk-console.c:844 ../client/pk-console.c:892
-#: ../client/pk-console.c:916 ../client/pk-console.c:964
-#: ../client/pk-console.c:1060 ../client/pk-console.c:1173
-#: ../client/pk-console.c:1234 ../client/pk-tools-common.c:63
-#: ../client/pk-tools-common.c:82 ../client/pk-tools-common.c:90
-#, c-format
-msgid "Internal error: %s"
-msgstr "অভ্যন্তৰীণ ত্ৰুটি: %s"
-
-#. TRANSLATORS: We are checking if it's okay to remove a list of packages
-#. ask the user
-#: ../client/pk-console.c:876 ../client/pk-console.c:948
-#: ../client/pk-console.c:1266 ../client/pk-task-text.c:299
-msgid "Proceed with changes?"
-msgstr "পৰিবৰ্তনসমূহ প্ৰয়োগ কৰা হ'ব নেকি ?"
+"সুৰক্ষা বিষয়ক গুৰুত্বপূৰ্ণ উন্নয়ন সংস্থাপন কৰা হৈছে । উন্নয়ন সম্পন্ন কৰাৰ বাবে অনুগ্ৰহ কৰি "
+"প্ৰস্থান কৰি পুনঃ প্ৰৱেশ কৰক ।"
 
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:881 ../client/pk-console.c:953
-msgid "The package install was canceled!"
-msgstr "সৰঞ্জাম সংস্থাপনৰ কাম বাতিল কৰা হৈছে!"
-
-#. TRANSLATORS: There was an error installing the packages. The detailed error follows
-#: ../client/pk-console.c:900 ../client/pk-console.c:1634
-#, c-format
-msgid "This tool could not install the packages: %s"
-msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ সংস্থাপন কৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: There was an error installing the files. The detailed error follows
-#: ../client/pk-console.c:972
-#, c-format
-msgid "This tool could not install the files: %s"
-msgstr "এই সৰঞ্জামে নথিপত্ৰসমূহ সংস্থাপন কৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: The package name was not found in the installed list. The detailed error follows
-#: ../client/pk-console.c:1028
-#, c-format
-msgid "This tool could not remove %s: %s"
-msgstr "এই সৰঞ্জামে %s ক আঁতৰাব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:1051 ../client/pk-console.c:1089
-#: ../client/pk-console.c:1118
-#, c-format
-msgid "This tool could not remove the packages: %s"
-msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ আঁতৰাব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: We are checking if it's okay to remove a list of packages
-#: ../client/pk-console.c:1104
-msgid "Proceed with additional packages?"
-msgstr "অতিৰিক্ত সৰঞ্জাম অপসাৰণ কৰা হ'ব নেকি ?"
-
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:1109
-msgid "The package removal was canceled!"
-msgstr "সৰঞ্জামৰ আঁতৰুৱা বাতিল কৰা হ'ল!"
-
-#. TRANSLATORS: The package name was not found in any software sources
-#: ../client/pk-console.c:1150
-#, c-format
-msgid "This tool could not download the package %s as it could not be found"
-msgstr "এই সৰঞ্জামে %s সৰঞ্জাম ডাউন্‌লোড কৰিব নোৱাৰিলে কাৰণ তাক পোৱা ন'গ'ল"
-
-#. TRANSLATORS: Could not download the packages for some reason. The detailed error follows
-#: ../client/pk-console.c:1181
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
+#: ../client/pk-console.c:840
 #, c-format
-msgid "This tool could not download the packages: %s"
-msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ ডাউন্‌লোড কৰিব নোৱাৰিলে: %s"
+msgid "This tool could not find any available package: %s"
+msgstr "উপলব্ধ কোনো সৰঞ্জাম এই সামগ্ৰী দ্বাৰা পোৱা নাযায়: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1213 ../client/pk-console.c:1225
-#: ../client/pk-console.c:1280
+#: ../client/pk-console.c:868
 #, c-format
-msgid "This tool could not update %s: %s"
-msgstr "এই সৰঞ্জামে %s উন্নত কৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:1271
-msgid "The package update was canceled!"
-msgstr "সৰঞ্জাম উন্নয়নৰ কাম বাতিল কৰা হৈছে!"
+msgid "This tool could not find the installed package: %s"
+msgstr "এই সৰঞ্জামে সংস্থাপিত সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1304 ../client/pk-console.c:1312
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
-msgid "This tool could not get the requirements for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ প্ৰয়োজনতা নাপালে: %s"
+msgid "This tool could not find the package: %s"
+msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
 
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
-#: ../client/pk-console.c:1334 ../client/pk-console.c:1342
-#, c-format
-msgid "This tool could not get the dependencies for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ নিৰ্ভৰতা নাপালে: %s"
-
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
-#: ../client/pk-console.c:1364 ../client/pk-console.c:1372
-#, c-format
-msgid "This tool could not get package details for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ কাৰণে সৰঞ্জামৰ বিৱৰণ নাপালে: %s"
-
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1394
-#, c-format
-msgid "This tool could not find the files for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ কাৰণে নথিপত্ৰ বিচাৰি নাপালে: %s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1402
-#, c-format
-msgid "This tool could not get the file list for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ কাৰণে নথিপত্ৰৰ তালিকা বিচাৰি নাপালে: %s"
-
-#. TRANSLATORS: There was an error getting the list of packages. The filename follows
-#: ../client/pk-console.c:1424
-#, c-format
-msgid "File already exists: %s"
-msgstr "নথিপত্ৰ ইতিমধ্যে আছে: %s"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1429 ../client/pk-console.c:1485
-#: ../client/pk-console.c:1560
-msgid "Getting package list"
-msgstr "সৰঞ্জামৰ তালিকা প্ৰাপ্ত কৰা হৈছে"
-
-#. TRANSLATORS: There was an error getting the list of packages. The detailed error follows
-#: ../client/pk-console.c:1435 ../client/pk-console.c:1491
-#: ../client/pk-console.c:1566
-#, c-format
-msgid "This tool could not get package list: %s"
-msgstr "এই সৰঞ্জামে সৰঞ্জামৰ তালিকা নাপালে: %s"
-
-#. TRANSLATORS: There was an error saving the list
-#: ../client/pk-console.c:1446
-#, c-format
-msgid "Failed to save to disk"
-msgstr "ডিষ্কলৈ ৰক্ষা কৰিব নোৱাৰি"
-
-#. TRANSLATORS: There was an error getting the list. The filename follows
-#: ../client/pk-console.c:1480 ../client/pk-console.c:1555
-#, c-format
-msgid "File does not exist: %s"
-msgstr "নথিপত্ৰ নাই: %s"
-
-#. TRANSLATORS: header to a list of packages newly added
-#: ../client/pk-console.c:1512
-msgid "Packages to add"
-msgstr "যোগ কৰিব লগা সৰঞ্জাম"
-
-#. TRANSLATORS: header to a list of packages removed
-#: ../client/pk-console.c:1520
-msgid "Packages to remove"
-msgstr "আঁতৰাব লগা সৰঞ্জাম"
-
-#. TRANSLATORS: We didn't find any differences
-#: ../client/pk-console.c:1588
-#, c-format
-msgid "No new packages need to be installed"
-msgstr "নতুন সৰঞ্জাম সংস্থাপন কৰাৰ প্ৰয়োজন নাই"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1594
-msgid "To install"
-msgstr "সংস্থাপন কৰিব লগা"
-
-#. TRANSLATORS: searching takes some time....
-#: ../client/pk-console.c:1606
-msgid "Searching for package: "
-msgstr "সৰঞ্জাম বিচৰা হৈছে: "
-
-#. TRANSLATORS: package was not found -- this is the end of a string ended in ...
-#: ../client/pk-console.c:1610
-msgid "not found."
-msgstr "পোৱা নাযায় ।"
-
-#. TRANSLATORS: We didn't find any packages to install
-#: ../client/pk-console.c:1621
-#, c-format
-msgid "No packages can be found to install"
-msgstr "সংস্থাপন কৰিবলৈ একো সৰঞ্জাম পোৱা নাযায়"
-
-#. TRANSLATORS: installing new packages from package list
-#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
-#: ../client/pk-console.c:1627
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:885
-#, c-format
-msgid "Installing packages"
-msgstr "সৰঞ্জাম সংস্থাপন কৰা হৈছে"
-
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1663
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
-msgid "This tool could not find the update details for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ উন্নয়নৰ বিৱৰণ নাপালে: %s"
-
-#. TRANSLATORS: There was an error getting the details about the update for the package. The detailed error follows
-#: ../client/pk-console.c:1671
-#, c-format
-msgid "This tool could not get the update details for %s: %s"
-msgstr "এই সৰঞ্জামে %s ৰ উন্নয়নৰ বিৱৰণ নাপালে: %s"
-
-#. TRANSLATORS: This was an unhandled error, and we don't have _any_ context
-#: ../client/pk-console.c:1702
-msgid "Error:"
-msgstr "ত্ৰুটি"
-
-#. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:1716 ../client/pk-console-test.c:370
-msgid "Package description"
-msgstr "সৰঞ্জামৰ বিৱৰণ"
-
-#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:1732 ../client/pk-console-test.c:388
-msgid "Message:"
-msgstr "বাৰ্তা:"
-
-#. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:1760 ../client/pk-console-test.c:407
-msgid "Package files"
-msgstr "সৰঞ্জামৰ নথিপত্ৰ"
-
-#. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:1768 ../client/pk-console-test.c:402
-msgid "No files"
-msgstr "কোনো নথিপত্ৰ নাই"
-
-#. TRANSLATORS: This a request for a GPG key signature from the backend, which the client will prompt for later
-#: ../client/pk-console.c:1791
-msgid "Repository signature required"
-msgstr "কোনো নথিপত্ৰ নাই"
-
-#. TRANSLATORS: This a prompt asking the user to import the security key
-#. ask the user
-#: ../client/pk-console.c:1801 ../client/pk-task-text.c:113
-msgid "Do you accept this signature?"
-msgstr "ভঁৰালৰ চহিৰ প্ৰয়োজন"
-
-#. TRANSLATORS: This is where the user declined the security key
-#: ../client/pk-console.c:1805 ../client/pk-task-text.c:117
-msgid "The signature was not accepted."
-msgstr "চহি গ্ৰহণ কৰা ন'হ'ল ।"
-
-#. TRANSLATORS: This a request for a EULA
-#: ../client/pk-console.c:1839
-msgid "End user license agreement required"
-msgstr "ব্যৱহাৰকৰ্তাৰ অনুজ্ঞাপত্ৰৰ চুক্তিৰ প্ৰয়োজন"
-
-#. TRANSLATORS: This a prompt asking the user to agree to the license
-#: ../client/pk-console.c:1846
-msgid "Do you agree to this license?"
-msgstr "আপুনি এই অনুজ্ঞাপত্ৰ মানি লয় নে ?"
-
-#. TRANSLATORS: This is where the user declined the license
-#: ../client/pk-console.c:1850
-msgid "The license was refused."
-msgstr "অনুজ্ঞাপত্ৰ অগ্ৰাহ্য কৰা হয় ।"
+msgid "This tool could not find all the packages: %s"
+msgstr "এই সৰঞ্জামে সকলো সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:1879 ../client/pk-console-test.c:972
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
-msgstr "লেন-দেনৰ মাজতে ডেমন ক্ৰেশ্ব হ'ল!"
+msgstr "লেন দেনৰ মাজতে ডেমন ক্ৰেশ্ব হ'ল!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:1932 ../client/pk-console-test.c:1006
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit ক'ন্সোল সংযোগমাধ্যম"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:1934 ../client/pk-console-test.c:1008
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
-msgstr "উপ-আদেশ:"
-
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:2027 ../client/pk-console-test.c:1099
-#: ../client/pk-generate-pack.c:187 ../client/pk-monitor.c:128
-#: ../client/pk-monitor-test.c:282
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:549
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "অতিৰিক্ত ডিবাগ তথ্য প্ৰদৰ্শন কৰা হ'ব"
+msgstr "উপ আদেশ:"
+
+#. TRANSLATORS: we keep a database updated with the time that an action was last executed
+#: ../client/pk-console.c:1208
+msgid "Failed to get the time since this action was last completed"
+msgstr "যোৱাবাৰৰ কাম শেষ হোৱাৰ সময় পাবলৈ বিফল"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:2030 ../client/pk-console-test.c:1102
-#: ../client/pk-monitor.c:130 ../client/pk-monitor-test.c:284
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "অনুপ্ৰয়োগৰ সংস্কৰণ দেখুৱাই প্ৰস্থান কৰক"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:2033 ../client/pk-console-test.c:1105
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "ফিল্টাৰ নিৰ্ধাৰণ কৰক, যেনে সংস্থাপিত"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:2036 ../client/pk-console-test.c:1108
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "কাম সম্পূৰ্ণ নকৰাকে প্ৰস্থান কৰক"
 
-#. TRANSLATORS: This is when we could not connect to the system bus, and is fatal
-#: ../client/pk-console.c:2063
-msgid "This tool could not connect to system DBUS."
-msgstr "এই সৰঞ্জামে ব্যৱস্থাপ্ৰণালীৰ DBUS লৈ সংযোগ কৰিব নোৱাৰিলে ।"
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "নিশ্চিত কৰিবলৈ প্ৰশ্ন নকৰিয়েই সৰঞ্জামসমূহ সংস্থাপন কৰক"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "নিষ্কৰ্ম নে'টৱৰ্ক বেণ্ডৱিথ আৰু কম শক্তি ব্যৱহাৰ কৰি আদেশ চলাওক"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "এনিমেটেড ৱিজেটৰ সলনি, পৰ্দ্দাত এটা যন্ত্ৰই পঢ়িব পৰা নিৰ্গম হিচাপে লিখক"
+
+#. TRANSLATORS: we failed to contact the daemon
+#: ../client/pk-console.c:1281
+msgid "Failed to contact PackageKit"
+msgstr "PackageKit ৰ সৈতে সংযোগ স্থাপন কৰিবলৈ ব্যৰ্থ ।"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:2153 ../client/pk-console-test.c:1183
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "নিৰ্ধাৰিত ফিল্টাৰ অবৈধ"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:2172 ../client/pk-console-test.c:1202
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "বিচৰাৰ ধৰণৰ প্ৰয়োজন, যেনে নাম"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:2179 ../client/pk-console.c:2188
-#: ../client/pk-console.c:2197 ../client/pk-console.c:2206
-#: ../client/pk-console-test.c:1209 ../client/pk-console-test.c:1221
-#: ../client/pk-console-test.c:1233 ../client/pk-console-test.c:1245
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "বিচাৰিবলৈ শব্দৰ প্ৰয়োজন"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:2213 ../client/pk-console-test.c:1255
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "অবৈধ বিচৰাৰ ধৰণ"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:2219
-msgid "A package name or filename to install is required"
-msgstr "সংস্থাপন কৰিবলৈ সৰঞ্জামৰ নাম বা নথিপত্ৰৰ নামৰ প্ৰয়োজন"
+#: ../client/pk-console.c:1417
+msgid "A package name to install is required"
+msgstr "সংস্থাপন কৰিবলৈ সৰঞ্জামৰ নামৰ প্ৰয়োজন"
+
+#. TRANSLATORS: the user did not specify what they wanted to install
+#: ../client/pk-console.c:1426
+msgid "A filename to install is required"
+msgstr "সংস্থাপন কৰিবলৈ নথিপত্ৰৰ নামৰ প্ৰয়োজন"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2228 ../client/pk-console-test.c:1282
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "এটা ধৰণ, key_id আৰু package_id ৰ প্ৰয়োজন"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:2237 ../client/pk-console-test.c:1293
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "আঁতৰাবলৈ এটা সৰঞ্জামৰ নামৰ প্ৰয়োজন"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:2245 ../client/pk-console-test.c:1302
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "গন্তব্য পঞ্জিকা আৰু ডাউনলোড কৰাৰ উদ্দেশ্যে সৰঞ্জামৰ নাম উল্লেখ কৰা আৱশ্যক"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:2252 ../client/pk-console-test.c:1309
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "পঞ্জিকা পোৱা ন'গ'ল"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2260 ../client/pk-console-test.c:1318
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
-msgstr "অনুজ্ঞাপত্ৰৰ চিনাকি এটাৰ (eula-id) প্ৰয়োজন"
+msgstr "অনুজ্ঞাপত্ৰৰ চিনাকি এটাৰ (eula id) প্ৰয়োজন"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2270 ../client/pk-console-test.c:1329
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
-msgstr "লেন-দেনৰ চিনাকি এটাৰ (tid) প্ৰয়োজন"
+msgstr "লেন দেনৰ চিনাকি এটাৰ (tid) প্ৰয়োজন"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:2287 ../client/pk-console-test.c:1350
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "বিশ্লেষণ কৰিবলৈ এটা সৰঞ্জামৰ নামৰ প্ৰয়োজন"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:2296 ../client/pk-console.c:2305
-#: ../client/pk-console-test.c:1361 ../client/pk-console-test.c:1372
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "এটা ভঁৰালৰ নামৰ প্ৰয়োজন"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:2314 ../client/pk-console-test.c:1383
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "এটা ভঁৰালৰ নাম, স্থিতিমাপ আৰু মানৰ প্ৰয়োজন"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:2328 ../client/pk-console-test.c:1401
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
-msgstr "এটা কাৰ্য্য, যেনে 'update-system' ৰ প্ৰয়োজন"
+msgstr "এটা কাৰ্য্য, যেনে 'update system' ৰ প্ৰয়োজন"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:2335 ../client/pk-console-test.c:1408
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "এটা শুদ্ধ ভূমিকাৰ প্ৰয়োজন"
 
-#. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:2342 ../client/pk-console-test.c:1415
-msgid "Failed to get the time since this action was last completed"
-msgstr "যোৱাবাৰৰ কাম শেষ হোৱাৰ সময় পাবলৈ বিফল"
-
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:2352 ../client/pk-console.c:2364
-#: ../client/pk-console.c:2373 ../client/pk-console.c:2391
-#: ../client/pk-console.c:2400 ../client/pk-console-test.c:1425
-#: ../client/pk-console-test.c:1440 ../client/pk-console-test.c:1449
-#: ../client/pk-console-test.c:1469 ../client/pk-console-test.c:1478
-#: ../client/pk-generate-pack.c:243
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "এটা সৰঞ্জামৰ নামৰ প্ৰয়োজন"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:2382 ../client/pk-console-test.c:1458
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "এটা সৰঞ্জাম দিওঁতাৰ শব্দৰ প্ৰয়োজন"
 
-#. TRANSLATORS: The user didn't specify a filename to create as a list
-#: ../client/pk-console.c:2409
-msgid "A list file name to create is required"
-msgstr "সৃষ্টি কৰিব লগা এটা তালিকাৰ নথিপত্ৰৰ নামৰ প্ৰয়োজন"
-
-#. TRANSLATORS: The user didn't specify a filename to open as a list
-#: ../client/pk-console.c:2419 ../client/pk-console.c:2429
-msgid "A list file to open is required"
-msgstr "খুলিব লগা এটা তালিকাৰ নথিপত্ৰৰ প্ৰয়োজন"
-
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:2483 ../client/pk-console-test.c:1538
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "'%s' বিকল্প অসমৰ্থিত"
 
-#. TRANSLATORS: User does not have permission to do this
-#: ../client/pk-console.c:2496
-msgid "Incorrect privileges for this operation"
-msgstr "এই কাৰ্য্যৰ বাবে অশুদ্ধ সুবিধা"
-
-#. TRANSLATORS: Generic failure of what they asked to do
-#. /* TRANSLATORS: User does not have permission to do this */
-#. g_print ("%s\n", _("Incorrect privileges for this operation"));
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:2499 ../client/pk-console-test.c:1550
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "আদেশ বিফল"
 
-#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../client/pk-console-test.c:523 ../client/pk-tools-common.c:131
-msgid "More than one package matches:"
-msgstr "একাধিক সৰঞ্জামৰ সৈতে মিল:"
-
-#. TRANSLATORS: This finds out which package in the list to use
-#: ../client/pk-console-test.c:532 ../client/pk-tools-common.c:138
-msgid "Please choose the correct package: "
-msgstr "অনুগ্ৰহ কৰি শুদ্ধ সৰঞ্জাম নিৰ্ব্বাচন কৰক:"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console-test.c:734
-#, c-format
-msgid "This tool could not find the available package: %s"
-msgstr "এই সৰঞ্জামে উপলব্ধ সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console-test.c:762
-#, c-format
-msgid "This tool could not find the installed package: %s"
-msgstr "এই সৰঞ্জামে সংস্থাপিত সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console-test.c:790 ../client/pk-console-test.c:818
-#, c-format
-msgid "This tool could not find the package: %s"
-msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
-#. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console-test.c:846 ../client/pk-console-test.c:872
-#: ../client/pk-console-test.c:898 ../client/pk-console-test.c:924
-#: ../client/pk-console-test.c:950
-#, c-format
-msgid "This tool could not find all the packages: %s"
-msgstr "এই সৰঞ্জামে সকলো সৰঞ্জামসমূহ বিচাৰিব নোৱাৰিলে: %s"
-
-#. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console-test.c:1261
-msgid "A package name to install is required"
-msgstr "সংস্থাপন কৰিবলৈ সৰঞ্জামৰ নামৰ প্ৰয়োজন"
-
-#. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console-test.c:1270
-msgid "A filename to install is required"
-msgstr "সংস্থাপন কৰিবলৈ নথিপত্ৰৰ নামৰ প্ৰয়োজন"
-
-#. TRANSLATORS: This is the state of the transaction
-#: ../client/pk-generate-pack.c:103
-msgid "Downloading"
-msgstr "ডাউন্‌লোড কৰা হৈছে"
-
-#. TRANSLATORS: This is when the main packages are being downloaded
-#: ../client/pk-generate-pack.c:123
-msgid "Downloading packages"
-msgstr "সৰঞ্জাম ডাউন্‌লোড কৰা হৈছে"
-
-#. TRANSLATORS: This is when the dependency packages are being downloaded
-#: ../client/pk-generate-pack.c:128
-msgid "Downloading dependencies"
-msgstr "নিৰ্ভৰতা ডাউন্‌লোড কৰা হৈছে"
-
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:190
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "আওকাণ কৰিব লগা নিৰ্ভৰতাৰ নথিপত্ৰৰ নাম নিৰ্ধাৰণ কৰক"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:193
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "নিৰ্গমৰ নথিপত্ৰ বা পঞ্জিকা (একো নিদিলে বৰ্ত্তমানৰ পঞ্জিকা ব্যৱহাৰ কৰা হ'ব)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:196
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "2    "
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:199
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "সেৱাৰ গোটত পোৱা সকলো উন্নয়ন ৰাখক"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:227
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
-msgstr "--package বা --updates বিকল্পৰ এটাকো নিৰ্ব্বাচন কৰা হোৱা নাই ।"
+msgstr "  package বা   updates বিকল্পৰ এটাকো নিৰ্ব্বাচন কৰা হোৱা নাই ।"
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "দুয়োটা বিকল্পই নিৰ্বাচিত ।"
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:251
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "নিৰ্গম পঞ্জিকা বা নথিপত্ৰৰ নামৰ প্ৰয়োজন"
 
+#. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
+#: ../client/pk-generate-pack.c:324
+msgid "The dameon failed to startup"
+msgstr "ডেমন আৰম্ভ কৰিবলৈ ব্যৰ্থ"
+
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:269 ../client/pk-generate-pack.c:275
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "সৰঞ্জামৰ পৰিচালকে এনে ধৰণৰ কাম কৰিব নোৱাৰে ।"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:282
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
-msgstr "libarchive সমৰ্থন সহ PackageKit নিৰ্মিত নোহোৱাৰ ফলত সেৱা গোট সৃষ্টি কৰা সম্ভৱ নহয় ।"
+msgstr ""
+"libarchive সমৰ্থন সহ PackageKit নিৰ্মিত নোহোৱাৰ ফলত সেৱা গোট সৃষ্টি কৰা সম্ভৱ নহয় "
+" ।"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:293
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "নথিপত্ৰ নিৰ্ধাৰণ কৰিলে, সেৱাৰ গোটৰ নাম এইটোৰে অন্ত হ'ব লাগিব"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:309
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "একে নামৰ গোট আছেই, আপুনি তাৰ ওপৰতে লিখিব বিচাৰে নেকি ?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:312
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "গোটৰ ওপৰত পুনঃ লিখা ন'গ'ল ।"
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:325
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "পঞ্জিকা সৃষ্টি কৰিবলৈ বিফল:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "সৰঞ্জামৰ তালিকা খুলিবলৈ বিফল ।"
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:346
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "সৰঞ্জামৰ নাম বিচৰা হৈছে ।"
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:350
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "'%s' সৰঞ্জাম বিচাৰি পোৱা ন'গ'ল: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "সেৱাৰ গোট সৃষ্টি কৰা হৈছে..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:374
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "'%s' সেৱাৰ গোট সৃষ্টি কৰা হ'ল"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:379
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' সৃষ্টি কৰিবলৈ বিফল: %s"
 
-#. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:146 ../client/pk-monitor-test.c:299
-msgid "PackageKit Monitor"
-msgstr "PackageKit Monitor"
-
-#: ../client/pk-monitor.c:183
-msgid "Cannot show the list of transactions"
-msgstr "লেন-দেনৰ তালিকা প্ৰদৰ্শন কৰিবলৈ ব্যৰ্থ"
-
-#: ../client/pk-monitor-test.c:204
-msgid "Failed to get transaction list"
-msgstr "লেন-দেনৰ তালিকা পাবলৈ ব্যৰ্থ"
-
-#: ../client/pk-monitor-test.c:235
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "ডেমনৰ অৱস্থা পাবলৈ ব্যৰ্থ"
 
-#. ask the user
-#: ../client/pk-task-text.c:64
-msgid "Do you want to allow installing of unsigned software?"
-msgstr "আপুনি স্বাক্ষৰ নকৰা চালনাজ্ঞান সংস্থাপন কৰাৰ অনুমতি দিব খোজে নে ?"
-
-#: ../client/pk-task-text.c:68
-msgid "The unsigned software will not be installed."
-msgstr "অস্বাক্ষৰিত সৰঞ্জাম সংস্থাপন কৰিব নোৱাৰি ।"
-
-#: ../client/pk-task-text.c:100
-msgid "Software source signature required"
-msgstr "চালনাজ্ঞান উৎসৰ চহিৰ প্ৰয়োজন"
-
-#: ../client/pk-task-text.c:102
-msgid "Software source name"
-msgstr "চালনাজ্ঞানৰ উৎসৰ নাম"
-
-#: ../client/pk-task-text.c:103
-msgid "Key URL"
-msgstr "চাবিৰ URL"
-
-#: ../client/pk-task-text.c:104
-msgid "Key user"
-msgstr "চাবিৰ ব্যৱহাৰকৰ্তা"
-
-#: ../client/pk-task-text.c:105
-msgid "Key ID"
-msgstr "চাবিৰ ID"
-
-#: ../client/pk-task-text.c:106
-msgid "Key fingerprint"
-msgstr "চাবিৰ fingerprint"
-
-#: ../client/pk-task-text.c:107
-msgid "Key Timestamp"
-msgstr "চাবিৰ Timestamp"
-
-#: ../client/pk-task-text.c:151
-msgid "End user licence agreement required"
-msgstr "ব্যৱহাৰকৰ্তাৰ অনুজ্ঞাপত্ৰৰ চুক্তিৰ প্ৰয়োজন"
-
-#: ../client/pk-task-text.c:152
-msgid "EULA ID"
-msgstr "EULA ID"
-
-#: ../client/pk-task-text.c:155
-msgid "Agreement"
-msgstr "অনুজ্ঞাপত্ৰ"
-
-#. ask the user
-#: ../client/pk-task-text.c:161
-msgid "Do you accept this agreement?"
-msgstr "আপুনি এই অনুজ্ঞাপত্ৰ স্বীকাৰ কৰেনে ?"
-
-#: ../client/pk-task-text.c:165
-msgid "The agreement was not accepted."
-msgstr "অনুজ্ঞাচুক্তি গ্ৰহণ কৰা ন'হ'ল ।"
-
-#: ../client/pk-task-text.c:194
-msgid "Media change required"
-msgstr "মিডিয়া সলনি কৰাৰ প্ৰয়োজন"
-
-#: ../client/pk-task-text.c:195
-msgid "Media type"
-msgstr "মিডিয়া ধৰন"
-
-#: ../client/pk-task-text.c:196
-msgid "Media ID"
-msgstr "মিডিয়া ID"
-
-#: ../client/pk-task-text.c:197
-msgid "Text"
-msgstr "টেক্সট"
-
-#. ask the user
-#: ../client/pk-task-text.c:201
-msgid "Please insert the correct media"
-msgstr "অনুগ্ৰহ কৰি শুদ্ধ মিডিয়া ভৰাওক"
-
-#: ../client/pk-task-text.c:205
-msgid "The correct media was not inserted."
-msgstr "শুদ্ধ মিডিয়া দিয়া হোৱা নাছিল ।"
-
-#: ../client/pk-task-text.c:303
-msgid "The transaction did not proceed."
-msgstr "লেন-দেন আগ নাবাঢ়িলে ।"
-
-#: ../client/pk-text.c:50
-#, c-format
-msgid "Please enter a number from 1 to %i: "
-msgstr "১ ৰ পৰা %i লৈ এটা সংখ্যা দিয়ক: "
-
-#. TRANSLATORS: The package was not found in any software sources
-#: ../client/pk-tools-common.c:119
-#, c-format
-msgid "The package could not be found"
-msgstr "সৰঞ্জাম পোৱা ন'গ'ল"
+#. TRANSLATORS: this is a program that monitors PackageKit
+#: ../client/pk-monitor.c:296
+msgid "PackageKit Monitor"
+msgstr "PackageKit Monitor"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:466
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "সৰঞ্জামৰ তথ্য পোৱা হৈছে..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:472
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s চলাওক"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:478
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "সংস্থাপিত সংস্কৰণ"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:486
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "সংস্কৰণ %s এতিয়া চলাওক"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:492
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "এতিয়া চলাওক"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:498
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "%s সংস্কৰণলৈ উন্নত কৰক"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:504
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "এতিয়া %s সংস্থাপন কৰক"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:507
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "সংস্কৰণ"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:512
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "আপোনাৰ ব্যৱস্থাপ্ৰণালীৰ বাবে সৰঞ্জাম পোৱা ন'গ'ল"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "সংস্থাপন কৰা হৈছে..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:349
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "চালনাজ্ঞানৰ উৎসস্থল সম্পৰ্কে বিৱৰণ ডাউনলোড কৰা হৈছে ।"
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:353
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "নথিপত্ৰৰ তালিকা ডাউনলোড কৰা হৈছে (এই কামত কিছু সময় ব্যয় হোৱাৰ সম্ভাৱনা আছে) ।"
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:357
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "সৰঞ্জাম পৰিচালন ব্যৱস্থাৰ লক প্ৰাপ্ত কৰাৰ অপেক্ষা চলিছে ।"
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "সৰঞ্জামৰ তালিকা লোড কৰা হৈছে ।"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:420
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "নথিপত্ৰ বিচাৰিব পৰা ন'গ'ল"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:557
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "আৰম্ভ কৰিবলৈ বিফল:"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "সৰঞ্জাম সংস্থাপন কৰা নাযায়: %s"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit আদেশ পোৱা ন'গ'ল"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "আদেশ পোৱা নাযায় ।"
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "একে ধৰণৰ আদেশ হ'ল:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "একে ধৰণৰ আদেশ চলাওক:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "একে ধৰণৰ আদেশ হ'ল:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "চলাবলৈ এটা আদেশ বাচি লওক"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "এই নথিপত্ৰ দিয়া সৰঞ্জাম হ'ল:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "'%s' সৰঞ্জাম সংস্থাপন কৰা যাওক যি '%s' আদেশ দিয়ে ?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "এই নথিপত্ৰ দিয়া সৰঞ্জামসমূহ হ'ল:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "উপযুক্ত সৰঞ্জাম হ'ল:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "সংস্থাপন কৰিবলৈ এটা সৰঞ্জাম নিৰ্ব্বাচন কৰক"
 
 #. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:187
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
 msgid "Starting install"
 msgstr "সংস্থাপন আৰম্ভ কৰা হৈছে"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:397
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
 #, c-format
 msgid "Failed to find the package %s, or already installed: %s"
 msgstr "%s সৰঞ্জামটি পোৱা নাযায়, বা আগতেই সংস্থাপন কৰা হৈছে: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:552
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "কোনো সৰঞ্জাম সংস্থাপন কৰা ন'হ'ব, অকল নিৰ্ধাৰিত সংস্থাপনৰ অনুকৰণ কৰা হ'ব"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:555
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "মূল সৰঞ্জামৰ নিৰ্ভৰতাৰ সৰঞ্জামসমূহ সংস্থাপন কৰা ন'হ'ব"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:558
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "তথ্য বা প্ৰগতি প্ৰদৰ্শন কৰা ন'হ'ব"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:576
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Debuginfo সংস্থাপক"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:588
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "ERROR: সংস্থাপনৰ বাবে সৰঞ্জামৰ নাম নিৰ্ধাৰণ কৰক ।"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:622
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "উৎসৰ তালিকা প্ৰাপ্ত কৰা হৈছে"
 
+#. TRANSLATORS: operation was not successful
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
+msgid "FAILED."
+msgstr "ব্যৰ্থ ।"
+
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:640
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:680
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:715
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:799
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:843
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:910
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:954
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ঠিক আছে ।"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:643
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i সক্ৰিয় আৰু %i নিষ্ক্ৰিয় উৎসস্থল পোৱা গৈছে ।"
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:650
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "ডিবাগ কৰিবলৈ ব্যৱহাৰযোগ্য উৎসস্থল অনুসন্ধান কৰা হৈছে"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:683
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i নিষ্ক্ৰিয় debuginfo উৎসস্থল পোৱা গৈছে ।"
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "ডিবাগ কৰিবলৈ ব্যৱহাৰযোগ্য উৎসস্থল সক্ৰিয় কৰা হৈছে"
 
-#. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:700
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:784
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:895
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:939
-msgid "FAILED."
-msgstr "ব্যৰ্থ ।"
-
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:718
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "ডিবাগৰ বাবে %i উৎসস্থল সক্ৰিয় কৰা হৈছে ।"
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:725
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "ডিবাগৰ বাবে সৰঞ্জাম অনুসন্ধান কৰা হৈছে"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "%s সৰঞ্জাম পোৱা নাযায়: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:760
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "%s debuginfo সৰঞ্জাম পোৱা নাযায়: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:788
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "সংস্থাপন কৰাৰ বাবে কোনো সৰঞ্জাম পোৱা নাযায় ।"
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:802
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i সৰঞ্জাম পোৱা নাযায়:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:818
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "এই সৰঞ্জামসমূহৰ ওপৰত নিৰ্ভৰশীল সৰঞ্জাম অনুসন্ধান কৰা হৈছে"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:831
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "নিৰ্ভৰশীল সৰঞ্জাম পোৱা নাযায়: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:847
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i অতিৰিক্ত সৰঞ্জাম পোৱা গৈছে ।"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:851
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "অতিৰিক্ত কোনো সৰঞ্জামৰ প্ৰয়োজন নাই ।"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:860
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "সংস্থাপন কৰাৰ যোগ্য %i সৰঞ্জাম পোৱা গৈছে:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:873
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "অনুকৰণৰ মোডত কোনো সৰঞ্জাম সংস্থাপন কৰা হোৱা নাই"
 
+#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
+#. TRANSLATORS: transaction state, installing packages
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#, c-format
+msgid "Installing packages"
+msgstr "সৰঞ্জাম সংস্থাপন কৰা হৈছে"
+
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:898
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "সৰঞ্জাম সংস্থাপন কৰা নাযায়: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:930
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "পূৰ্বে সক্ৰিয় কৰা উৎসস্থল নিষ্ক্ৰিয় কৰা হৈছে"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:942
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "ডিবাগৰ বাবে ব্যৱহাৰযোগ্য উৎসস্থল নিষ্ক্ৰিয় কৰা নাযায়: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:957
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "ডিবাগৰ বাবে ব্যৱহাৰযোগ্য %i উৎসস্থল নিষ্ক্ৰিয় কৰা হৈছে ।"
@@ -1397,6 +1010,10 @@ msgstr "যন্ত্ৰৰ পাথ পোৱা নাযায়"
 msgid "Incorrect device path specified"
 msgstr "যন্ত্ৰৰ ভুল পাথ নিৰ্ধাৰিত হৈছে"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "অতিৰিক্ত ডিবাগ তথ্য প্ৰদৰ্শন কৰা হ'ব"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1410,7 +1027,7 @@ msgstr "যন্ত্ৰৰ পাথ"
 #. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
 #: ../contrib/device-rebind/pk-device-rebind.c:314
 msgid "PackageKit Device Reloader"
-msgstr "PackageKit যন্ত্ৰ ৰি-লোডাৰ"
+msgstr "PackageKit যন্ত্ৰ ৰি লোডাৰ"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:322
@@ -1454,6 +1071,607 @@ msgstr "PackageKit সৰঞ্জামৰ তালিকা"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit সেৱাৰ গোট"
 
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
+#, c-format
+msgid "Please enter a number from 1 to %i: "
+msgstr "১ ৰ পৰা %i লৈ এটা সংখ্যা দিয়ক: "
+
+#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
+msgid "More than one package matches:"
+msgstr "একাধিক সৰঞ্জামৰ সৈতে মিল:"
+
+#. TRANSLATORS: This finds out which package in the list to use
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
+msgid "Please choose the correct package: "
+msgstr "অনুগ্ৰহ কৰি শুদ্ধ সৰঞ্জাম নিৰ্ব্বাচন কৰক:"
+
+#. TRANSLATORS: This is when the transaction status is not known
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
+msgid "Unknown state"
+msgstr "অজ্ঞাত অৱস্থা"
+
+#. TRANSLATORS: transaction state, the daemon is in the process of starting
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
+msgid "Starting"
+msgstr "সংস্থাপন আৰম্ভ কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, the transaction is waiting for another to complete
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
+msgid "Waiting in queue"
+msgstr "শাৰীত অপেক্ষাৰত"
+
+#. TRANSLATORS: transaction state, just started
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
+msgid "Running"
+msgstr "চলি থকা"
+
+#. TRANSLATORS: transaction state, is querying data
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
+msgid "Querying"
+msgstr "অনুসন্ধান কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, getting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
+msgid "Getting information"
+msgstr "তথ্য প্ৰাপ্ত কৰা হৈছে..."
+
+#. TRANSLATORS: transaction state, removing packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
+msgid "Removing packages"
+msgstr "সৰঞ্জাম আঁতৰুৱা হৈছে"
+
+#. TRANSLATORS: transaction state, downloading package files
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
+msgid "Downloading packages"
+msgstr "সৰঞ্জাম ডাউন্‌লোড কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, refreshing internal lists
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
+msgid "Refreshing software list"
+msgstr "চালনাজ্ঞানৰ তালিকা নতুনকৈ নিৰ্মাণ কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, installing updates
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
+msgid "Installing updates"
+msgstr "উন্নয়ন সংস্থাপন কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, removing old packages, and cleaning config files
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
+msgid "Cleaning up packages"
+msgstr "সৰঞ্জাম পৰিশ্ৰুত কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, obsoleting old packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
+msgid "Obsoleting packages"
+msgstr "সৰঞ্জাম অবচিত কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, checking the transaction before we do it
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
+msgid "Resolving dependencies"
+msgstr "নিৰ্ভৰতাৰ মীমাংসা কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
+msgid "Checking signatures"
+msgstr "স্বাক্ষৰ পৰীক্ষা কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, when we return to a previous system state
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
+msgid "Rolling back"
+msgstr "পূৰ্বাৱস্থালৈ প্ৰত্যাবৰ্তন কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, when we're doing a test transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
+msgid "Testing changes"
+msgstr "পৰিবৰ্তনসমূহ পৰীক্ষা কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, when we're writing to the system package database
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
+msgid "Committing changes"
+msgstr "পৰিবৰ্তনসমূহ সংৰক্ষণ কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, requesting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
+msgid "Requesting data"
+msgstr "তথ্য প্ৰাপ্তিৰ অনুৰোধ কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, all done!
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
+msgid "Finished"
+msgstr "সমাপ্ত"
+
+#. TRANSLATORS: transaction state, in the process of cancelling
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
+msgid "Cancelling"
+msgstr "বাতিল কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
+msgid "Downloading repository information"
+msgstr "সংগ্ৰহস্থল সংক্ৰান্ত তথ্য ডাউনলোড কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
+msgid "Downloading list of packages"
+msgstr "সৰঞ্জামৰ তালিকা ডাউনলোড কৰা হৈছে ।"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
+msgid "Downloading file lists"
+msgstr "নথিপত্ৰৰ তালিকা ডাউনলোড কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
+msgid "Downloading lists of changes"
+msgstr "পৰিবৰ্তনৰ তালিকা ডাউনলোড কৰা হৈছে ।"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
+msgid "Downloading groups"
+msgstr "দলৰ তথ্য ডাউনলোড কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
+msgid "Downloading update information"
+msgstr "উন্নয়ন সংক্ৰান্ত তথ্য ডাউনলোড কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, repackaging delta files
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
+msgid "Repackaging files"
+msgstr "নথিপত্ৰক পুনঃ সৰঞ্জামৰ গোটত ভৰোৱা হৈছে"
+
+#. TRANSLATORS: transaction state, loading databases
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
+msgid "Loading cache"
+msgstr "কেশ্বে লোড কৰা হৈছে‌"
+
+#. TRANSLATORS: transaction state, scanning for running processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
+msgid "Scanning applications"
+msgstr "অনুপ্ৰয়োগ অনুসন্ধান কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, generating a list of packages installed on the system
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
+msgid "Generating package lists"
+msgstr "সৰঞ্জামৰ তালিকা নিৰ্মাণ কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
+msgid "Waiting for package manager lock"
+msgstr "সৰঞ্জাম পৰিচালন ব্যৱস্থাৰ লক প্ৰাপ্ত কৰাৰ অপেক্ষা কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, waiting for user to type in a password
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
+msgid "Waiting for authentication"
+msgstr "প্ৰমাণীকৰণৰ অপেক্ষাৰত"
+
+#. TRANSLATORS: transaction state, we are updating the list of processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
+msgid "Updating running applications"
+msgstr "চলমান অনুপ্ৰয়োগৰ তালিকা উন্নয়ন কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, we are checking executable files currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
+msgid "Checking applications in use"
+msgstr "ব্যৱহৃত অনুপ্ৰয়োগ পৰীক্ষা কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, we are checking for libraries currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
+msgid "Checking libraries in use"
+msgstr "ব্যৱহৃত লাইব্ৰৰিসমূহ পৰীক্ষা কৰা হৈছে"
+
+#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
+msgid "Copying files"
+msgstr "নথিপত্ৰ নকল কৰা হৈছে"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
+msgid "Trivial"
+msgstr "সামান্য"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
+msgid "Normal"
+msgstr "সাধাৰণ"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
+msgid "Important"
+msgstr "গুৰুত্বপূৰ্ণ"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
+msgid "Security"
+msgstr "নিৰাপত্তা বিষয়ক"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
+msgid "Bug fix "
+msgstr "বাগ সংশোধন"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
+msgid "Enhancement"
+msgstr "উন্নত বৈশিষ্ট্য"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
+msgid "Blocked"
+msgstr "ব্লক কৰা"
+
+#. TRANSLATORS: The state of a package
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
+msgid "Installed"
+msgstr "সংস্থাপন কৰা হ'ল"
+
+#. TRANSLATORS: The state of a package, i.e. not installed
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
+msgid "Available"
+msgstr "উপলব্ধ"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
+msgid "Downloading"
+msgstr "ডাউন্‌লোড কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
+msgid "Updating"
+msgstr "উন্নয়ন কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
+msgid "Installing"
+msgstr "সংস্থাপন কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
+msgid "Removing"
+msgstr "আঁতৰুৱা হৈছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
+msgid "Cleaning up"
+msgstr "পৰিশ্ৰুত কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
+msgid "Obsoleting"
+msgstr "অবচিত কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
+msgid "Reinstalling"
+msgstr "পুনঃ সংস্থাপন কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
+msgid "Downloaded"
+msgstr "ডাউনলোড কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
+msgid "Removed"
+msgstr "অপশাৰীত"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
+msgid "Cleaned up"
+msgstr "পৰিশ্ৰুত কৰা হৈছে"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
+msgid "Obsoleted"
+msgstr "অবচিত"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
+msgid "Reinstalled"
+msgstr "পুনঃ সংস্থাপন কৰা হ'ল"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
+msgid "Unknown role type"
+msgstr "অজ্ঞাত ধৰনৰ ভূমিকা"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
+msgid "Getting dependencies"
+msgstr "নিৰ্ভৰতাসমূহ প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
+msgid "Getting update details"
+msgstr "উন্নয়নৰ বিৱৰণ প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
+msgid "Getting details"
+msgstr "বিৱৰণ প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
+msgid "Getting requires"
+msgstr "প্ৰয়োজনীয় সামগ্ৰীৰ তালিকা প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
+msgid "Getting updates"
+msgstr "উন্নয়ন প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
+msgid "Searching by details"
+msgstr "বিৱৰণ অনুযায়ী অনুসন্ধান কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
+msgid "Searching by file"
+msgstr "নথিপত্ৰ অনুযায়ী অনুসন্ধান কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
+msgid "Searching groups"
+msgstr "দলৰ অনুযায়ী অনুসন্ধান কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
+msgid "Searching by name"
+msgstr "নাম অনুযায়ী অনুসন্ধান কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
+msgid "Installing files"
+msgstr "নথিপত্ৰ সংস্থাপন কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
+msgid "Refreshing cache"
+msgstr "কেশ্বে নতুনকৈ নিৰ্মাণ কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
+msgid "Updating packages"
+msgstr "সৰঞ্জাম উন্নয়ন কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
+msgid "Updating system"
+msgstr "প্ৰণালী উন্নত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
+msgid "Canceling"
+msgstr "বাতিল কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
+msgid "Getting repositories"
+msgstr "সংগ্ৰহস্থলৰ তালিকা প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
+msgid "Enabling repository"
+msgstr "সংগ্ৰহস্থল সক্ৰিয় কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
+msgid "Setting data"
+msgstr "তথ্য নিৰ্ধাৰণ কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
+msgid "Resolving"
+msgstr "মীমাংসা কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
+msgid "Getting file list"
+msgstr "নথিপত্ৰৰ তালিকা প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
+msgid "Getting provides"
+msgstr "উপলব্ধকাৰী সামগ্ৰীৰ তালিকা প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
+msgid "Installing signature"
+msgstr "স্বাক্ষৰ সংস্থাপন কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
+msgid "Getting packages"
+msgstr "সৰঞ্জাম প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
+msgid "Accepting EULA"
+msgstr "EULA ৰ চৰ্ত্তসমূহ গ্ৰহণ কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
+msgid "Getting upgrades"
+msgstr "আপগ্ৰেড প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
+msgid "Getting categories"
+msgstr "বিভাগ পৰীক্ষা কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
+msgid "Getting transactions"
+msgstr "লেন দেন প্ৰাপ্ত কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
+msgid "Simulating install"
+msgstr "সংস্থাপনৰ অনুকৰণ কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
+msgid "Simulating remove"
+msgstr "অপসাৰণৰ অনুকৰণ কৰা হৈছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
+msgid "Simulating update"
+msgstr "উন্নয়নৰ অনুকৰণ কৰা হৈছে"
+
+#. TRANSLATORS: ask the user if they are comfortable installing insecure packages
+#: ../lib/packagekit-glib2/pk-task-text.c:69
+msgid "Do you want to allow installing of unsigned software?"
+msgstr "আপুনি স্বাক্ষৰ নকৰা চালনাজ্ঞান সংস্থাপন কৰাৰ অনুমতি দিব খোজে নে ?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:74
+msgid "The unsigned software will not be installed."
+msgstr "অস্বাক্ষৰিত সৰঞ্জাম সংস্থাপন কৰিব নোৱাৰি ।"
+
+#. TRANSLATORS: the package repository is signed by a key that is not recognised
+#: ../lib/packagekit-glib2/pk-task-text.c:123
+msgid "Software source signature required"
+msgstr "চালনাজ্ঞান উৎসৰ চহিৰ প্ৰয়োজন"
+
+#. TRANSLATORS: the package repository name
+#: ../lib/packagekit-glib2/pk-task-text.c:129
+msgid "Software source name"
+msgstr "চালনাজ্ঞানৰ উৎসৰ নাম"
+
+#. TRANSLATORS: the key URL
+#: ../lib/packagekit-glib2/pk-task-text.c:132
+msgid "Key URL"
+msgstr "চাবিৰ URL"
+
+#. TRANSLATORS: the username of the key
+#: ../lib/packagekit-glib2/pk-task-text.c:135
+msgid "Key user"
+msgstr "চাবিৰ ব্যৱহাৰকৰ্তা"
+
+#. TRANSLATORS: the key ID, usually a few hex digits
+#: ../lib/packagekit-glib2/pk-task-text.c:138
+msgid "Key ID"
+msgstr "চাবিৰ ID"
+
+#. TRANSLATORS: the key fingerprint, again, yet more hex
+#: ../lib/packagekit-glib2/pk-task-text.c:141
+msgid "Key fingerprint"
+msgstr "চাবিৰ fingerprint"
+
+#. TRANSLATORS: the timestamp (a bit like a machine readable time)
+#: ../lib/packagekit-glib2/pk-task-text.c:144
+msgid "Key Timestamp"
+msgstr "চাবিৰ Timestamp"
+
+#. TRANSLATORS: ask the user if they want to import
+#: ../lib/packagekit-glib2/pk-task-text.c:157
+msgid "Do you accept this signature?"
+msgstr "ভঁৰালৰ চহিৰ প্ৰয়োজন"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:162
+msgid "The signature was not accepted."
+msgstr "চহি গ্ৰহণ কৰা ন'হ'ল ।"
+
+#. TRANSLATORS: this is another name for a software licence that has to be read before installing
+#: ../lib/packagekit-glib2/pk-task-text.c:205
+msgid "End user licence agreement required"
+msgstr "ব্যৱহাৰকৰ্তাৰ অনুজ্ঞাপত্ৰৰ চুক্তিৰ প্ৰয়োজন"
+
+#. TRANSLATORS: the EULA text itself (long and boring)
+#: ../lib/packagekit-glib2/pk-task-text.c:214
+msgid "Agreement"
+msgstr "অনুজ্ঞাপত্ৰ"
+
+#. TRANSLATORS: ask the user if they've read and accepted the EULA
+#: ../lib/packagekit-glib2/pk-task-text.c:223
+msgid "Do you accept this agreement?"
+msgstr "আপুনি এই অনুজ্ঞাপত্ৰ স্বীকাৰ কৰিনে ?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:228
+msgid "The agreement was not accepted."
+msgstr "অনুজ্ঞাচুক্তি গ্ৰহণ কৰা ন'হ'ল ।"
+
+#. TRANSLATORS: the user needs to change media inserted into the computer
+#: ../lib/packagekit-glib2/pk-task-text.c:267
+msgid "Media change required"
+msgstr "মিডিয়া সলনি কৰাৰ প্ৰয়োজন"
+
+#. TRANSLATORS: the type, e.g. DVD, CD, etc
+#: ../lib/packagekit-glib2/pk-task-text.c:270
+msgid "Media type"
+msgstr "মিডিয়া ধৰন"
+
+#. TRANSLATORS: the media label, usually like 'disk-1of3'
+#: ../lib/packagekit-glib2/pk-task-text.c:273
+msgid "Media label"
+msgstr "মিডিয়াৰ লেবেল"
+
+#. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
+#: ../lib/packagekit-glib2/pk-task-text.c:276
+msgid "Text"
+msgstr "টেক্সট"
+
+#. TRANSLATORS: ask the user to insert the media
+#: ../lib/packagekit-glib2/pk-task-text.c:282
+msgid "Please insert the correct media"
+msgstr "অনুগ্ৰহ কৰি শুদ্ধ মিডিয়া ভৰাওক"
+
+#. TRANSLATORS: tell the user we've not done anything as they are lazy
+#: ../lib/packagekit-glib2/pk-task-text.c:287
+msgid "The correct media was not inserted."
+msgstr "শুদ্ধ মিডিয়া দিয়া হোৱা নাছিল ।"
+
+#. TRANSLATORS: When processing, we might have to remove other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:302
+msgid "The following packages have to be removed:"
+msgstr "তলৰ সৰঞ্জামসমূহ আঁতৰাব লাগিব:"
+
+#. TRANSLATORS: When processing, we might have to install other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:307
+msgid "The following packages have to be installed:"
+msgstr "তলৰ সৰঞ্জামসমূহ সংস্থাপন কৰিব লাগিব:"
+
+#. TRANSLATORS: When processing, we might have to update other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:312
+msgid "The following packages have to be updated:"
+msgstr "তলৰ সৰঞ্জামসমূহ উন্নত কৰিব লাগিব:"
+
+#. TRANSLATORS: When processing, we might have to reinstall other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:317
+msgid "The following packages have to be reinstalled:"
+msgstr "তলৰ সৰঞ্জামসমূহক পুনঃ সংস্থাপন কৰিব লাগিব:"
+
+#. TRANSLATORS: When processing, we might have to downgrade other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:322
+msgid "The following packages have to be downgraded:"
+msgstr "নিম্নলিখিত সৰঞ্জামসমূহ ডাউনগ্ৰেড কৰা আৱশ্যক:"
+
+#. TRANSLATORS: ask the user if the proposed changes are okay
+#: ../lib/packagekit-glib2/pk-task-text.c:382
+msgid "Proceed with changes?"
+msgstr "পৰিবৰ্তনসমূহ প্ৰয়োগ কৰা হ'ব নেকি ?"
+
+#. TRANSLATORS: tell the user we didn't do anything
+#: ../lib/packagekit-glib2/pk-task-text.c:387
+msgid "The transaction did not proceed."
+msgstr "লেন দেন আগ নাবাঢ়িলে ।"
+
 #. SECURITY:
 #. - Normal users do not require admin authentication to accept new
 #. licence agreements.
@@ -1506,7 +1724,7 @@ msgstr "সৰঞ্জাম আঁতৰাবলৈ প্ৰমাণীকà
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:17
 msgid "Authentication is required to rollback a transaction"
-msgstr "এটা লেন-দেন নোহোৱা কৰিবলৈ প্ৰমাণীকৰণৰ প্ৰয়োজন"
+msgstr "এটা লেন দেন নোহোৱা কৰিবলৈ প্ৰমাণীকৰণৰ প্ৰয়োজন"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:18
 msgid ""
@@ -1595,7 +1813,7 @@ msgstr "সৰঞ্জাম আঁতৰাওঁক"
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:74
 msgid "Rollback to a previous transaction"
-msgstr "আগৰ লেন-দেনলৈ ঘূৰি যাওক"
+msgstr "আগৰ লেন দেনলৈ ঘূৰি যাওক"
 
 #. SECURITY:
 #. - Normal users do not require admin authentication to set the proxy
@@ -1649,95 +1867,254 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf নথিপত্ৰ ব্যৱস্থাপ্ৰণালীৰ পঞ্জিকাত সংস্থাপিত নহয়:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
-msgstr "ব্যৱহাৰ কৰিব লগা গোট সৃষ্টি কৰাৰ বেক-এণ্ড, যেনে dummy"
+msgstr "ব্যৱহাৰ কৰিব লগা গোট সৃষ্টি কৰাৰ বেক এণ্ড, যেনে dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "ডেমন কৰি তাৰ টাৰ্মিনেলৰ পৰা বিচ্ছিন্ন কৰক"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "idle timer নিষ্ক্ৰিয় কৰক"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "সংস্কৰণ দেখুৱাই প্ৰস্থান কৰক"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "কিছু সময়ৰ পিছত বাহিৰ হওক"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "কলঘৰ তুলি লোৱাৰ পিছত বাহিৰ হওক"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit সেৱা"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "ব্যৱস্থাপ্ৰণালীৰ বাছৰ সৈতে সংযোগ স্থাপনত ব্যৰ্থ"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "আৰম্ভ কৰিবলৈ চেষ্টা কৰোঁতে ভুল:"
 
-#: ../src/pk-polkit-action-lookup.c:147
+#: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
-msgstr "ডিবাগৰ বাবে ব্যৱহাৰযোগ্য সৰঞ্জাম সংস্থাপন কৰাৰ বাবে অতিৰিক্ত উৎসস্থল সক্ৰিয় কৰা আৱশ্যক"
+msgstr ""
+"ডিবাগৰ বাবে ব্যৱহাৰযোগ্য সৰঞ্জাম সংস্থাপন কৰাৰ বাবে অতিৰিক্ত উৎসস্থল সক্ৰিয় কৰা "
+"আৱশ্যক"
 
 #. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:168 ../src/pk-polkit-action-lookup.c:187
+#: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
 msgstr "বিশ্বস্ত উৎসস্থলৰ পৰা চালনাজ্ঞান প্ৰাপ্ত কৰা নহয় ।"
 
-#: ../src/pk-polkit-action-lookup.c:173
+#: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
 msgstr "সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জাম উন্নয়ন নকৰা উচিত ।"
 
-#: ../src/pk-polkit-action-lookup.c:174
+#: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
-msgstr ""
-"সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জামসমূহ উন্নয়ন নকৰা "
-"উচিত ।"
+msgstr "সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জামসমূহ উন্নয়ন নকৰা উচিত ।"
 
-#: ../src/pk-polkit-action-lookup.c:192
+#: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
-msgstr ""
-"সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জাম সংস্থাপন নকৰা "
-"উচিত ।"
+msgstr "সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জাম সংস্থাপন নকৰা উচিত ।"
 
-#: ../src/pk-polkit-action-lookup.c:193
+#: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
-msgstr ""
-"সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জাম উন্নয়ন নকৰা "
-"উচিত ।"
+msgstr "সৰঞ্জামৰ সুৰক্ষা সম্পৰ্কে সম্পূৰ্ণৰূপে নিশ্চিত ন'হ'লে এই সৰঞ্জাম উন্নয়ন নকৰা উচিত ।"
 
 #. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:199
+#: ../src/pk-polkit-action-lookup.c:202
 msgid "Malicious software can damage your computer or cause other harm."
 msgstr ""
 "ক্ষতিকাৰণ চালনাজ্ঞানৰ ফলত কম্পিউটাৰত সমস্যা দেখা দিব পাৰে আৰু অন্যান্য বিপদৰ আশঙ্কা "
 "আছে ।"
 
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:274
+#: ../src/pk-polkit-action-lookup.c:277
 msgid "Many packages"
 msgstr "অত্যাধিক সৰঞ্জাম"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:334
+#: ../src/pk-polkit-action-lookup.c:343
 msgid "Only trusted"
 msgstr "অকল বিশ্বস্ত"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "সকলো নথিপত্ৰৰ বাবে ডিবাগ সংক্ৰান্ত তথ্য প্ৰদৰ্শন কৰা হ'ব"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "সুনিৰ্দিষ্ট অংশসমূহ ডিবাগ কৰক"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "সুনিৰ্দিষ্ট আপেক্ষকসমূহ ডিবাগ কৰক"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "ডিবাগ সংক্ৰান্ত তথ্য এটা নথিপত্ৰত লগ কৰা হ'ব"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "ডিবাগ সংক্ৰান্ত বিকল্প"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "ডিবাগৰ বিকল্পসমূহ দেখুৱাওক"
+
+#~ msgid "Please restart the application as it is being used."
+#~ msgstr "ব্যৱহাৰ কৰাৰ সময়ত অনুপ্ৰয়োগ পুনৰাৰম্ভ কৰক ।"
+
+#~ msgid "The package %s is already installed"
+#~ msgstr "%s সৰঞ্জাম ইতিমধ্যে সংস্থাপিত"
+
+#~ msgid "The package %s could not be installed: %s"
+#~ msgstr "%s সৰঞ্জাম সংস্থাপন কৰিব নোৱাৰি: %s"
+
+#~ msgid "The package install was canceled!"
+#~ msgstr "সৰঞ্জাম সংস্থাপনৰ কাম বাতিল কৰা হৈছে!"
+
+#~ msgid "This tool could not install the packages: %s"
+#~ msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ সংস্থাপন কৰিব নোৱাৰিলে: %s"
+
+#~ msgid "This tool could not install the files: %s"
+#~ msgstr "এই সৰঞ্জামে নথিপত্ৰসমূহ সংস্থাপন কৰিব নোৱাৰিলে: %s"
+
+#~ msgid "This tool could not remove %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ক আঁতৰাব নোৱাৰিলে: %s"
+
+#~ msgid "This tool could not remove the packages: %s"
+#~ msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ আঁতৰাব নোৱাৰিলে: %s"
+
+#~ msgid "Proceed with additional packages?"
+#~ msgstr "অতিৰিক্ত সৰঞ্জাম অপসাৰণ কৰা হ'ব নেকি ?"
+
+#~ msgid "The package removal was canceled!"
+#~ msgstr "সৰঞ্জামৰ আঁতৰুৱা বাতিল কৰা হ'ল!"
+
+#~ msgid "This tool could not download the package %s as it could not be found"
+#~ msgstr "এই সৰঞ্জামে %s সৰঞ্জাম ডাউন্‌লোড কৰিব নোৱাৰিলে কাৰণ তাক পোৱা ন'গ'ল"
+
+#~ msgid "This tool could not download the packages: %s"
+#~ msgstr "এই সৰঞ্জামে সৰঞ্জামসমূহ ডাউন্‌লোড কৰিব নোৱাৰিলে: %s"
+
+#~ msgid "This tool could not update %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s উন্নত কৰিব নোৱাৰিলে: %s"
+
+#~ msgid "The package update was canceled!"
+#~ msgstr "সৰঞ্জাম উন্নয়নৰ কাম বাতিল কৰা হৈছে!"
+
+#~ msgid "This tool could not get the requirements for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ প্ৰয়োজনতা নাপালে: %s"
+
+#~ msgid "This tool could not get the dependencies for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ নিৰ্ভৰতা নাপালে: %s"
+
+#~ msgid "This tool could not get package details for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ কাৰণে সৰঞ্জামৰ বিৱৰণ নাপালে: %s"
+
+#~ msgid "This tool could not find the files for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ কাৰণে নথিপত্ৰ বিচাৰি নাপালে: %s"
+
+#~ msgid "This tool could not get the file list for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ কাৰণে নথিপত্ৰৰ তালিকা বিচাৰি নাপালে: %s"
+
+#~ msgid "File already exists: %s"
+#~ msgstr "নথিপত্ৰ ইতিমধ্যে আছে: %s"
+
+#~ msgid "This tool could not get package list: %s"
+#~ msgstr "এই সৰঞ্জামে সৰঞ্জামৰ তালিকা নাপালে: %s"
+
+#~ msgid "Failed to save to disk"
+#~ msgstr "ডিষ্কলৈ ৰক্ষা কৰিব নোৱাৰি"
+
+#~ msgid "File does not exist: %s"
+#~ msgstr "নথিপত্ৰ নাই: %s"
+
+#~ msgid "Packages to add"
+#~ msgstr "যোগ কৰিব লগা সৰঞ্জাম"
+
+#~ msgid "Packages to remove"
+#~ msgstr "আঁতৰাব লগা সৰঞ্জাম"
+
+#~ msgid "No new packages need to be installed"
+#~ msgstr "নতুন সৰঞ্জাম সংস্থাপন কৰাৰ প্ৰয়োজন নাই"
+
+#~ msgid "not found."
+#~ msgstr "পোৱা নাযায় ।"
+
+#~ msgid "No packages can be found to install"
+#~ msgstr "সংস্থাপন কৰিবলৈ একো সৰঞ্জাম পোৱা নাযায়"
+
+#~ msgid "This tool could not find the update details for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ উন্নয়নৰ বিৱৰণ নাপালে: %s"
+
+#~ msgid "This tool could not get the update details for %s: %s"
+#~ msgstr "এই সৰঞ্জামে %s ৰ উন্নয়নৰ বিৱৰণ নাপালে: %s"
+
+#~ msgid "Error:"
+#~ msgstr "ত্ৰুটি"
+
+#~ msgid "Repository signature required"
+#~ msgstr "কোনো নথিপত্ৰ নাই"
+
+#~ msgid "End user license agreement required"
+#~ msgstr "ব্যৱহাৰকৰ্তাৰ অনুজ্ঞাপত্ৰৰ চুক্তিৰ প্ৰয়োজন"
+
+#~ msgid "Do you agree to this license?"
+#~ msgstr "আপুনি এই অনুজ্ঞাপত্ৰ মানি লয় নে ?"
+
+#~ msgid "The license was refused."
+#~ msgstr "অনুজ্ঞাপত্ৰ অগ্ৰাহ্য কৰা হয় ।"
+
+#~ msgid "This tool could not connect to system DBUS."
+#~ msgstr "এই সৰঞ্জামে ব্যৱস্থাপ্ৰণালীৰ DBUS লৈ সংযোগ কৰিব নোৱাৰিলে ।"
+
+#~ msgid "A package name or filename to install is required"
+#~ msgstr "সংস্থাপন কৰিবলৈ সৰঞ্জামৰ নাম বা নথিপত্ৰৰ নামৰ প্ৰয়োজন"
+
+#~ msgid "A list file name to create is required"
+#~ msgstr "সৃষ্টি কৰিব লগা এটা তালিকাৰ নথিপত্ৰৰ নামৰ প্ৰয়োজন"
+
+#~ msgid "A list file to open is required"
+#~ msgstr "খুলিব লগা এটা তালিকাৰ নথিপত্ৰৰ প্ৰয়োজন"
+
+#~ msgid "Incorrect privileges for this operation"
+#~ msgstr "এই কাৰ্য্যৰ বাবে অশুদ্ধ সুবিধা"
+
+#~ msgid "Cannot show the list of transactions"
+#~ msgstr "লেন-দেনৰ তালিকা প্ৰদৰ্শন কৰিবলৈ ব্যৰ্থ"
+
+#~ msgid "Failed to get transaction list"
+#~ msgstr "লেন-দেনৰ তালিকা পাবলৈ ব্যৰ্থ"
+
+#~ msgid "EULA ID"
+#~ msgstr "EULA ID"
+
+#~ msgid "Media ID"
+#~ msgstr "মিডিয়া ID"
+
+#~ msgid "The package could not be found"
+#~ msgstr "সৰঞ্জাম পোৱা ন'গ'ল"
+
commit a798c28cb1c9e829e15ad1ed9d241baf6e99699c
Author: shanky <shanky at fedoraproject.org>
Date:   Thu Dec 10 12:08:09 2009 +0000

    Sending translation for Kannada

diff --git a/po/kn.po b/po/kn.po
index 0694281..926a06f 100644
--- a/po/kn.po
+++ b/po/kn.po
@@ -7,135 +7,138 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.kn\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-21 08:36+0000\n"
-"PO-Revision-Date: 2009-09-22 15:59+0530\n"
+"POT-Creation-Date: 2009-12-07 02:38+0000\n"
+"PO-Revision-Date: 2009-12-08 11:37+0530\n"
 "Last-Translator: Shankar Prasad <svenkate at redhat.com>\n"
-"Language-Team: Kannada <en at li.org>\n"
+"Language-Team: Kannada <kde-l10n-kn at kde.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms:  nplurals=2; plural=(n != 1);\n"
-"X-Generator: KBabel 1.11.4\n"
+"X-Generator: Lokalize 1.0\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:142
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "ವ್ಯವಹಾರ"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:144
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "ಗಣಕದ ಸಮಯ"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:146
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "ಯಶಸ್ವಿಯಾಗಿದೆ"
 
-#: ../client/pk-console.c:146
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "ಸತ್ಯ"
 
-#: ../client/pk-console.c:146
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "ಅಸತ್ಯ"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:148 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:336
 msgid "Role"
 msgstr "ಪಾತ್ರ"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:153
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "ಕಾಲಾವಧಿ"
 
-#: ../client/pk-console.c:153
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(ಸೆಕೆಂಡುಗಳು)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:157 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:350
 msgid "Command line"
 msgstr "ಆಜ್ಞಾ ಸಾಲು"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:159
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ಬಳಕೆದಾರ ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:166
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "ಬಳಕೆದಾರ ಹೆಸರು"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:170
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "ನಿಜವಾದ ಹೆಸರು"
 
-#: ../client/pk-console.c:178
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "ಪರಿಣಾಮ ಬೀರಲ್ಪಡುವ ಪ್ಯಾಕೇಜಿಗಳು:"
 
-#: ../client/pk-console.c:180
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "ಪರಿಣಾಮ ಬೀರಲ್ಪಡುವ ಪ್ಯಾಕೇಜಿಗಳು: ಯಾವುದೂ ಇಲ್ಲ"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:200
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "ವಿತರಣೆ"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:202
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "ಬಗೆ"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:204 ../client/pk-console.c:225
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "ಸಾರಾಂಶ"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:214
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "ವರ್ಗ"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:216
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:219
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "ಮೂಲ"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:222
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "ಹೆಸರು"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:228
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "ಚಿಹ್ನೆ"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:242
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "ಅಪ್‌ಡೇಟ್‌ ಬಗೆಗಿನ ವಿವರಣೆಗಳು:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:248 ../lib/packagekit-glib2/pk-task-text.c:105
-#: ../lib/packagekit-glib2/pk-task-text.c:172
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
 #: ../src/pk-polkit-action-lookup.c:361
 msgid "Package"
 msgid_plural "Packages"
@@ -143,144 +146,161 @@ msgstr[0] "ಪ್ಯಾಕೇಜ್"
 msgstr[1] "ಪ್ಯಾಕೇಜ್"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:251
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "ಅಪ್‍ಡೇಟ್‍ಗಳು"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:255
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "ಪ್ರಚಲಿತವಿಲ್ಲದವು"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:259 ../lib/packagekit-glib2/pk-task-text.c:175
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "ಒದಗಿಸಿದವರು"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:263
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "ಬಗ್‌ಝಿಲ್ಲಾ"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:267
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:271
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "ಪುನರಾರಂಭಿಸು"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:275
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "ಪಠ್ಯವನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಿ"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:279
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "ಬದಲಾವಣೆಗಳು"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:283
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "ಸ್ಥಿತಿ"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:288
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "ಒದಗಿಸಲಾದವರು"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:293 ../lib/packagekit-glib2/pk-console-shared.c:494
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲಾಗಿದ್ದು"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:311
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "ಸಕ್ರಿಯಗೊಂಡ"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:314
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "ಅಶಕ್ತಗೊಂಡ"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:336
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "ಇದಕ್ಕಾಗಿ ಗಣಕವನ್ನು ಮರಳಿ ಆರಂಭಿಸುವ ಅಗತ್ಯವಿದೆ:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:339
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "ಇದಕ್ಕಾಗಿ ಅಧಿವೇಶವನವನ್ನು ಮರಳಿ ಆರಂಭಿಸುವ ಅಗತ್ಯವಿದೆ:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:342
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "ಇದಕ್ಕಾಗಿ ಗಣಕವನ್ನು ಮರಳಿ ಆರಂಭಿಸುವ (ಸುರಕ್ಷತೆ) ಅಗತ್ಯವಿದೆ:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:345
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "ಇದಕ್ಕಾಗಿ ಅಧಿವೇಶವನವನ್ನು ಮರಳಿ ಆರಂಭಿಸುವ(ಸುರಕ್ಷತೆ) ಅಗತ್ಯವಿದೆ:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:348
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "ಇದಕ್ಕಾಗಿ ಅನ್ವಯವನ್ನು ಮರಳಿ ಆರಂಭಿಸುವ ಅಗತ್ಯವಿದೆ:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:365
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "ಪ್ಯಾಕೇಜ್ ವಿವರಣೆ"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:383
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "ಸಂದೇಶ:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:397
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "ಯಾವುದೆ ಕಡತಗಳಿಲ್ಲ"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:402
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "ಪ್ಯಾಕೇಜ್ ಕಡತಗಳು"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "ಪ್ರತಿಶತ"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "ಸ್ಥಿತಿ"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "ಫಲಿತಾಂಶಗಳು:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "ಮಾರಕ ದೋಷ"
 
-#. TRANSLATORS: we failed, but there was no error set
-#: ../client/pk-console.c:488
-msgid "Transaction failed with no error"
-msgstr "ವ್ಯವಹಾರವು ಯಾವುದೆ ದೋಷಗಳಲ್ಲಿದ ವಿಫಲಗೊಂಡಿದೆ"
-
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:493
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "ವ್ಯವಹಾರವು ವಿಫಲಗೊಂಡಿದೆ"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "ಪ್ರಸಕ್ತ ಯಾವುದೆ ಅಪ್‌ಡೇಟುಗಳು ಲಭ್ಯವಿಲ್ಲ."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:567
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "ಅಪ್‌ಡೇಟ್ ಅನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ದಯವಿಟ್ಟು ಗಣಕವನ್ನು ಮರಳಿ ಆರಂಭಿಸಿ."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:570
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "ಅಪ್‌ಡೇಟ್ ಅನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ದಯವಿಟ್ಟು ನಿರ್ಗಮಿಸಿ ನಂತರ ಮರಳಿ ಪ್ರವೇಶಿಸಿ."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:573
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -289,7 +309,7 @@ msgstr ""
 "ದಯವಿಟ್ಟು ಗಣಕವನ್ನು ಮರಳಿ ಆರಂಭಿಸಿ."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:576
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -298,19 +318,19 @@ msgstr ""
 "ದಯವಿಟ್ಟು ನಿರ್ಗಮಿಸಿ ನಂತರ ಮರಳಿ ಪ್ರವೇಶಿಸಿ."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:597
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "ಲಭ್ಯವಿರುವ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಉಪಕರಣವು ಪತ್ತೆ ಮಾಡಿಲ್ಲ: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:625
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲಾದ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಈ ಉಪಕರಣದಿಂದ ಪತ್ತೆ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:653 ../client/pk-console.c:681
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "ಈ ಉಪಕರಣದಿಂದ ಪ್ಯಾಕೇಜನ್ನು ಪತ್ತೆ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ: %s"
@@ -319,221 +339,230 @@ msgstr "ಈ ಉಪಕರಣದಿಂದ ಪ್ಯಾಕೇಜನ್ನು ಪತ
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:709 ../client/pk-console.c:737
-#: ../client/pk-console.c:765 ../client/pk-console.c:793
-#: ../client/pk-console.c:821
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "ಈ ಉಪಕರಣದಿಂದ ಎಲ್ಲಾ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಪತ್ತೆ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:850
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "ವ್ಯವಹಾರದ ಮಧ್ಯದಲ್ಲಿ ಡೀಮನ್ ಕುಸಿದು ಹೋಗಿದೆ!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:884
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit ಕನ್ಸೋಲ್ ಸಂಪರ್ಕಸಾಧನ"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:886
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "ಉಪಆಜ್ಞೆಗಳು:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:965
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "ಈ ಕಾರ್ಯವನ್ನು ಕೊನೆಯ ಬಾರಿಗೆ ಪೂರ್ಣಗೊಳಿಸದ ನಂತರ ಸಮಯವನ್ನು ಪಡೆದುಕೊಳ್ಳುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:1000 ../client/pk-generate-pack.c:222
-#: ../client/pk-monitor.c:249
-#: ../contrib/command-not-found/pk-command-not-found.c:614
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:504
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "ಹೆಚ್ಚಿನ ದೋಷ ನಿವಾರಣಾ ಮಾಹಿತಿಯನ್ನು ತೋರಿಸು"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:1003 ../client/pk-monitor.c:251
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "ಪ್ರೊಗ್ರಾಂ ಆವೃತ್ತಿಯನ್ನು ತೋರಿಸಿ ನಿರ್ಗಮಿಸು"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:1006
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "ಫಿಲ್ಟರನ್ನು ಸಿದ್ಧಗೊಳಿಸಿ, ಉದಾ. ಅನುಸ್ಥಾಪಿಸಲಾದ"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:1009
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "ಕ್ರಿಯೆಗಳು ಪೂರ್ಣಗೊಳ್ಳುವವರೆಗೆ ಕಾಯದೆ ನಿರ್ಗಮಿಸು"
 
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "ಖಚಿತಪಡಿಸಲು ಕೇಳದೆ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸು"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr ""
+"ಆಜ್ಞೆಯನ್ನು ಒಂದು ಜಡವಾದಂತಹ ಜಾಲಬಂಧ ಬ್ಯಾಂಡ್‌ವಿಡ್ತನ್ನು ಬಳಸಿಕೊಂಡು ಹಾಗು ಕಡಿಮೆ "
+"ವಿದ್ಯುಚ್ಛಕ್ತಿಯನ್ನು ಉಪಯೋಗಿಸಿಕೊಂಡು ಚಲಾಯಿಸು"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr ""
+"ಸಜೀವನಗೊಳಿಸಲಾದ(ಎನಿಮೇಟೆಡ್) ವಿಡ್ಗೆಟ್‌ಗಳ ಬದಲಿಗೆ ಗಣಕವು ಓದಬಹುದಾಂತಹ ಒಂದು ತೆರೆಗೆ ಮುದ್ರಿಸು"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1034
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit ಅನ್ನು ಸಂಪರ್ಕಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1086
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "ಸೂಚಿಸಲಾದ ಫಿಲ್ಟರ್ ಅಮಾನ್ಯವಾಗಿದೆ"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1105
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "ಒಂದು ಹುಡುಕು ಬಗೆಯ ಅಗತ್ಯವಿದೆ, ಉದಾ. ಹೆಸರು"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1112 ../client/pk-console.c:1124
-#: ../client/pk-console.c:1136 ../client/pk-console.c:1148
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "ಒಂದು ಹುಡುಕು ಪದದ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1158
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "ಅಮಾನ್ಯವಾದ ಹುಡುಕು ಬಗೆ"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1164
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲು ಒಂದು ಪ್ಯಾಕೇಜಿನ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲು ಒಂದು ಕಡತದ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1185
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "ಬಗೆ, key_id ಹಾಗು package_id ಯ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1196
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "ತೆಗೆದು ಹಾಕಬೇಕಿರುವ ಪ್ಯಾಕೇಜಿನ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1205
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "ಒಂದು ನಿರ್ದೇಶಿತ ಕೋಶ ಹಾಗು ಡೌನ್‌ಲೋಡ್ ಮಾಡಲು ಪ್ಯಾಕೇಜಿನ ಹೆಸರುಗಳ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1212
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "ಕೋಶವು ಕಂಡುಬಂದಿಲ್ಲ"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1221
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "ಪರವಾನಗಿ ಪತ್ತೆಗಾರನ (eula-id) ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1232
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "ವ್ಯವಹಾರ ಪತ್ತೆಗಾರನ (tid) ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1253
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "ಪರಿಹರಿಸಬೇಕಿರುವ ಪ್ಯಾಕೇಜಿನ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1264 ../client/pk-console.c:1275
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "ಒಂದು ರೆಪೋಸಿಟರಿ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1286
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "ಒಂದು ರೆಪೊ ಹೆಸರು, ನಿಯತಾಂಕ ಹಾಗು ಮೌಲ್ಯದ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1303
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "ಒಂದು ಕ್ರಿಯೆಯ, ಉದಾ. 'update-system' ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1310
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "ಸೂಕ್ತವಾದ ಪಾತ್ರದ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1320 ../client/pk-console.c:1335
-#: ../client/pk-console.c:1344 ../client/pk-console.c:1364
-#: ../client/pk-console.c:1373 ../client/pk-generate-pack.c:285
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "ಒಂದು ಪ್ಯಾಕೇಜಿನ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1353
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "ಪ್ಯಾಕೇಜನ್ನು ಒದಗಿಸುವ ವಾಕ್ಯದ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1433
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "ಆಯ್ಕೆ '%s' ಯು ಬೆಂಬಲಿತವಾಗಿಲ್ಲ"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1443
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "ಆಜ್ಞೆಯು ವಿಫಲಗೊಂಡಿದೆ"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:225
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "ಹೊರತು ಪಡಿಸಲು ಅವಲಂಬನೆಗಳ ಕಡತದ ಹೆಸರುಗಳನ್ನು ಸಿದ್ಧಗೊಳಿಸು"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:228
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "ಔಟ್‌ಪುಟ್ ಕಡತ ಅಥವ ಕೋಶ (ಹೊರತುಪಡಿಸಿದರೆ ಪ್ರಸಕ್ತ ಕೋಶವನ್ನು ಬಳಸಲಾಗುವುದು)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:231
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "ಸರ್ವಿಸ್ ಪ್ಯಾಕಿನಲ್ಲಿ ಇರಿಸಬೇಕಿರುವ ಪ್ಯಾಕೇಜು"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:234
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "ಲಭ್ಯವಿರುವ ಎಲ್ಲಾ ಅಪ್‌ಡೇಟುಗಳನ್ನು ಸರ್ವಿಸ್‌ ಪ್ಯಾಕಿನಲ್ಲಿ ಇರಿಸು"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:269
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package ಆಗಲಿ ಅಥವ --updates ಆಯ್ಕೆಯನ್ನು ಆರಿಸಲಾಗಿಲ್ಲ."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:277
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "ಎರಡೂ ಆಯ್ಕೆಗಳನ್ನು ಆರಿಸಲಾಗಿದೆ."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:293
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "ಔಟ್‌ಪುಟ್ ಕೋಶ ಅಥವ ಕಡತದ ಹೆಸರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:311
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "ಡೆಮನ್ ಆರಂಭದಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:322 ../client/pk-generate-pack.c:328
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "ಪ್ಯಾಕೇಜ್ ವ್ಯವಸ್ಥಾಪಕ ಈ ಬಗೆಯ ಕಾರ್ಯವನ್ನು ನಿರ್ವಹಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -542,64 +571,64 @@ msgstr ""
 "ನಿರ್ಮಿಸಲು ಸಾಧ್ಯವಿರುವುದಿಲ್ಲ."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:346
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "ಒಂದು ಕಡತವನ್ನು ಸೂಚಿಸುವಂತಿದ್ದರೆ, ಸರ್ವಿಸ್‌ ಪ್ಯಾಕ್ ಹೆಸರು ಇದರೊಂದಿಗೆ ಪೂರ್ಣಗೊಳ್ಳಬೇಕು"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:362
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "ಇದೆ ಹೆಸರಿನ ಒಂದು ಪ್ಯಾಕ್ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ, ನೀವದನ್ನು ತಿದ್ದಿ ಬರೆಯಲು ಬಯಸುತ್ತೀರೆ?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:365
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "ಪ್ಯಾಕ್ ಅನ್ನು ತಿದ್ದಿ ಬರೆಯಲಾಗಿಲ್ಲ."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:378
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "ಕೋಶವನ್ನು ನಿರ್ಮಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:390
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "ಪ್ಯಾಕೇಜುಗಳ ಪಟ್ಟಿಯನ್ನು ತೆರೆಯುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:399
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "ಪ್ಯಾಕೇಜಿನ ಹೆಸರನ್ನು ಪತ್ತೆ ಮಾಡಲಾಗುತ್ತಿದೆ."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:403
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "ಪ್ಯಾಕೇಜ್ '%s' ಅನ್ನು ಪತ್ತೆ ಮಾಡಲಾಗಲಿಲ್ಲ: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:411
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "ಸರ್ವಿಸ್‌ ಪ್ಯಾಕನ್ನು ರಚಿಸಲಾಗುತ್ತಿದೆ..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:426
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "ಸರ್ವಿಸ್‌ ಪ್ಯಾಕನ್ನು ರಚಿಸಲಾಗಿದೆ '%s'"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:431
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' ಅನ್ನು ರಚಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s"
 
-#: ../client/pk-monitor.c:179
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "ಡೆಮನ್ ಸ್ಥಿತಿಯನ್ನು ಪಡೆಯುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:266
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit ಮೇಲ್ವಿಚಾರಕ"
 
@@ -658,285 +687,290 @@ msgid "Installing..."
 msgstr "ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:358
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "ತಂತ್ರಾಂಶ ಆಕರಗಳ ಬಗೆಗಿನ ವಿವರಗಳನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ."
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:362
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "ಡೌನ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ (ಇದು ಪೂರ್ಣಗೊಳ್ಳಲು ಒಂದಿಷ್ಟು ಸಮಯ ಹಿಡಿಯಬಹುದು)."
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:366
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "ಪ್ಯಾಕೇಜ್ ವ್ಯವಸ್ತಾಪಕವು ಲಾಕ್ ಆಗಲು ಕಾಯಲಾಗುತ್ತಿದೆ."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:370
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಪಟ್ಟಿಯನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:444
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "ಕಡತಕ್ಕಾಗಿ ಹುಡುಕುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:570
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "ಆರಂಭಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ:"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಲು ವಿಫಲಗೊಂಡಿದೆ"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:630
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit ಆಜ್ಞೆಯು ಕಂಡುಬಂದಿಲ್ಲ"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "ಆಜ್ಞೆಯು ಕಂಡುಬಂದಿಲ್ಲ."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "ಹೋಲುವ ಆಜ್ಞೆ:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "ಇದನ್ನು ಹೋಲುವ ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸಿ:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "ಹೋಲುವ ಆಜ್ಞೆಗಳು:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "ದಯವಿಟ್ಟು ಚಲಾಯಿಸಲು ಒಂದು ಆಜ್ಞೆಯನ್ನು ಆರಿಸಿ"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "ಈ ಕಡತವನ್ನು ಒದಗಿಸುವ ಪ್ಯಾಕೇಜ್:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "ಪ್ಯಾಕೇಜ್ '%s' ಅನ್ನು ಆಜ್ಞೆ '%s' ಅನ್ನು ಒದಗಿಸುವಂತೆ ಅನುಸ್ಥಾಪಿಸಬೇಕೆ?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "ಈ ಕಡತವನ್ನು ಒದಗಿಸುವ ಪ್ಯಾಕೇಜುಗಳೆಂದರೆ:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "ಸೂಕ್ತವಾದ ಪ್ಯಾಕೇಜುಗಳೆಂದರೆ:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲು ದಯವಿಟ್ಟು ಒಂದು ಪ್ಯಾಕೇಜನ್ನು ಆರಿಸಿ"
 
 #. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:195
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
 msgid "Starting install"
 msgstr "ಅನುಸ್ಥಾಪನೆಯನ್ನು ಆರಂಭಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:406
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
 #, c-format
 msgid "Failed to find the package %s, or already installed: %s"
 msgstr "ಪ್ಯಾಕೇಜ್ %s ಅನ್ನು ಹುಡುಕಲು ವಿಫಲಗೊಂಡಿದೆ, ಅಥವ ಈಗಾಗಲೆ ಅನುಸ್ಥಾಪಿಸಲಾಗಿದೆ: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:507
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr ""
 "ಪ್ಯಾಕೇಜುಗಳನ್ನು ನಿಜವಾಗಿಯೂ ಅನುಸ್ಥಾಪಿಸಬೇಡ, ಏನನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತದೆ ಎನ್ನುವುದನ್ನು "
 "ತೋರಿಸು"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:510
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "ಪ್ರಮುಖ ಪ್ಯಾಕೇಜುಗಳ ಅವಲಂಭನೆಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಬೇಡ"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:513
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "ಮಾಹಿತಿಯನ್ನು ಅಥವ ಪ್ರಗತಿಯನ್ನು ತೋರಿಸಬೇಡ"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:528
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Debuginfo ಅನುಸ್ಥಾಪಕ"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:540
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "ERROR: ಅನುಸ್ಥಾಪಿಸಲು ಪ್ಯಾಕೇಜಿನ ಹೆಸರುಗಳನ್ನು ಸೂಚಿಸಿ."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:572
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "ಆಕರಗಳ ಪಟ್ಟಿಯನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:582
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:741
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:785
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:852
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:896
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "FAILED."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:597
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:637
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:672
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:756
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:800
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:867
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:911
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ಸರಿ."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:600
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i ಶಕ್ತಗೊಂಡ ಹಾಗು %i ಅಶಕ್ತಗೊಂಡ ಆಕರಗಳು ಕಂಡುಬಂದಿವೆ."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:607
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "ದೋಷ ನಿವಾರಣಾ ಆಕರಗಳು ಕಂಡುಬಂದಿವೆ"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:640
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i ಅಶಕ್ತಗೊಂಡ debuginfo ರೆಪೊಗಳು ಕಂಡುಬಂದಿವೆ."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:647
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "ದೋಷ ನಿವಾರಣಾ ಆಕರಗಳನ್ನು ಶಕ್ತಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:675
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i ದೋಷನಿವಾರಣಾ ಆಕರಗಳನ್ನು ಶಕ್ತಗೊಳಿಸಲಾಗಿದೆ."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:682
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "ದೋಷನಿವಾರಣಾ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಪತ್ತೆ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:694
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "ಪ್ಯಾಕೇಜ್ %s ಅನ್ನು ಪತ್ತೆ ಮಾಡುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:717
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "debuginfo ಪ್ಯಾಕೇಜ್ %s ಅನ್ನು ಪತ್ತೆ ಮಾಡುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:745
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "ಅನುಸ್ಥಾಪಿಸಲು ಯಾವುದೆ ಪ್ಯಾಕೇಜುಗಳು ಕಂಡುಬಂದಿಲ್ಲ."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:759
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i ಪ್ಯಾಕೇಜುಗಳು ಕಂಡುಬಂದಿವೆ:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:775
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "ಈ ಪ್ಯಾಕೇಜುಗಳ ಮೇಲೆ ಅವಲಂಬಿತವಾದ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಪತ್ತೆ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:788
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "ಅವಲಂಬಿತ ಪ್ಯಾಕೇಜುಗಳು ಕಂಡು ಬಂದಿಲ್ಲ: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:804
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i ಹೆಚ್ಚುವರಿ ಪ್ಯಾಕೇಜುಗಳು ಕಂಡುಬಂದಿವೆ."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "ಯಾವುದೆ ಹೆಚ್ಚಿನ ಪ್ಯಾಕೇಜುಗಳ ಅಗತ್ಯವಿಲ್ಲ."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:817
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲು %i ಪ್ಯಾಕೇಜುಗಳು ಕಂಡುಬಂದಿವೆ :"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:830
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "ಅನುಕರಣಾ ಕ್ರಮದಲ್ಲಿ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿಲ್ಲ"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:842
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:855
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "ಈ ಮೊದಲು ಶಕ್ತಗೊಳಿಸಲಾಗಿದ್ದ ಆಕರಗಳನ್ನು ಅಶಕ್ತಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:899
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "ದೋಷನಿವಾರಣಾ ಆಕರಗಳನ್ನು ಅಶಕ್ತಗೊಳಿಸಲಾಗಲಿಲ್ಲ: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:914
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i ದೋಷನಿವಾರಣಾ ಆಕರಗಳನ್ನು ಅಶಕ್ತಗೊಳಿಸಲಾಗಿದೆ."
@@ -982,6 +1016,10 @@ msgstr "ಸಾಧನದ ಮಾರ್ಗವು ಕಂಡುಬಂದಿಲ್ಲ"
 msgid "Incorrect device path specified"
 msgstr "ಸರಿಯಲ್ಲದ ಸಾಧನ ಮಾರ್ಗವನ್ನು ಸೂಚಿಸಲಾಗಿದೆ"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "ಹೆಚ್ಚಿನ ದೋಷ ನಿವಾರಣಾ ಮಾಹಿತಿಯನ್ನು ತೋರಿಸು"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1039,599 +1077,604 @@ msgstr "PackageKit ಪ್ಯಾಕೇಜ್ ಪಟ್ಟಿ"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit ಸರ್ವಿಸ್‌ ಪ್ಯಾಕ್"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:55
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
 msgstr "1 ರಿಂದ %i ಒಳಗಿನ ಒಂದು ಅಂಕೆಯನ್ನು ನಮೂದಿಸಿ: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:177
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಪ್ಯಾಕೇಜುಗಳು ತಾಳೆಯಾಗುತ್ತವೆ:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:186
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "ದಯವಿಟ್ಟು ಸರಿಯಾದ ಪ್ಯಾಕೇಜನ್ನು ಆಯ್ಕೆ ಮಾಡಿ: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:238
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "ಅಜ್ಞಾತ ಸ್ಥಿತಿ"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "ಆರಂಭಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "ಸರತಿಯಲ್ಲಿ ಕಾಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "ಚಾಲನೆಯಲ್ಲಿರುವ"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "ಮನವಿ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "ಮಾಹಿತಿಯನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ತೆಗೆದು ಹಾಕಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಡೌನ್-ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "ತಂತ್ರಾಂಶದ ಪಟ್ಟಿಯನ್ನು ಪುನಶ್ಚೇತನಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "ಅಪ್‌ಡೇಟ್‌ಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಸ್ವಚ್ಛಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅಪ್ರಚಲಿತಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "ಅವಲಂಬನೆಗಳನ್ನು ಪರಿಹರಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "ಸಹಿಯನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "ಹಿಂದಕ್ಕೆ ಮರಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "ಬದಲಾವಣೆಗಳನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "ಬದಲಾವಣೆಗಳನ್ನು ಸಲ್ಲಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "ದತ್ತಾಂಶಕ್ಕಾಗಿ ಮನವಿ ಸಲ್ಲಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "ಮುಗಿಸಲಾಗಿದೆ"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "ರದ್ದುಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "ರೆಪೊಸಿಟರಿ ಮಾಹಿತಿಯನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳ ಪಟ್ಟಿಯನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "ಕಡತದ ಪಟ್ಟಿಗಳನ್ನು ಡೌನ್‌ಲೋಡ್‌ ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "ಬದಲಾವಣೆಗಳ ಪಟ್ಟಿಯನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "ಸಮೂಹಗಳನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "ಅಪ್‌ಡೇಟ್ ಮಾಹಿತಿಯನ್ನು ಡೌನ್‌ಲೋಡ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "ಕಡತಗಳನ್ನು ಮರಳಿ ಪ್ಯಾಕೇಜು ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "ಕ್ಯಾಶೆಯನ್ನು ಲೋಡ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "ಅನ್ವಯಗಳನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "ಪ್ಯಾಕೇಜುಗಳ ಪಟ್ಟಿಯನ್ನು ಉತ್ಪಾದಿಸಲಾಗುತ್ತದೆ"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "ಪ್ಯಾಕೇಜ್ ವ್ಯವಸ್ಥಾಪಕನ ಲಾಕ್‌ಗಾಗಿ ಕಾಯಲಾಗುತ್ತಿದೆ"
 
-#. TRANSLATORS: waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#. TRANSLATORS: transaction state, waiting for user to type in a password
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "ದೃಢೀಕರಣಕ್ಕಾಗಿ ಕಾಯಲಾಗುತ್ತಿದೆ"
 
-#. TRANSLATORS: we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#. TRANSLATORS: transaction state, we are updating the list of processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "ಚಾಲನೆಯಲ್ಲಿರುವ ಅನ್ವಯಗಳನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
-#. TRANSLATORS: we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#. TRANSLATORS: transaction state, we are checking executable files currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "ಬಳಕೆಯಲ್ಲಿರುವ ಅನ್ವಯಗಳನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ"
 
-#. TRANSLATORS: we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#. TRANSLATORS: transaction state, we are checking for libraries currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "ಬಳಕೆಯಲ್ಲಿರುವ ಲೈಬ್ರರಿಗಳನ್ನು ಪರಿಶೀಲಿಸಲಾಗುತ್ತಿದೆ"
 
+#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
+msgid "Copying files"
+msgstr "ಕಡತಗಳನ್ನು ಕಾಪಿ ಮಾಡಲಾಗುತ್ತಿದೆ"
+
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:396
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "ಪ್ರಮುಖವಲ್ಲದ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:400
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "ಸಾಮಾನ್ಯ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "ಪ್ರಮುಖ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "ಸುರಕ್ಷತೆ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "ದೋಷ ನಿವಾರಣೆ "
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "ವರ್ಧನೆ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "ನಿರ್ಬಂಧಿಸಲಾದ"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:425
-#: ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲಾದ"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:430
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "ಲಭ್ಯ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:448
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "ಡೌನ್‌ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:452
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "ತೆಗೆದು ಹಾಕಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "ಸ್ವಚ್ಛ್ಗಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "ಅಪ್ರಚಲಿತಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "ಮರಳಿ ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:490
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "ಡೌನ್‌ಲೋಡ್‌ ಮಾಡಲಾಗಿದೆ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "ತೆಗೆದು ಹಾಕಲಾಗಿದೆ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "ಸ್ವಚ್ಛಗೊಳಿಸಲಾಗಿದೆ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "ಅಪ್ರಚಲಿತಗೊಂಡಿದೆ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "ಮರಳಿ ಅನುಸ್ಥಾಪಿಸಲಾಗಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:532
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "ಗೊತ್ತಿರದ ಪಾತ್ರದ ಬಗೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:536
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "ಅವಲಂಬನೆಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "ಪ್ಯಾಕೇಜಿನ ವಿವರಗಳನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "ವಿವರಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "ಅಗತ್ಯವಿರುವುದನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "ಅಪ್‌ಡೇಟ್‌ಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "ವಿವರಗಳಿಗಾಗಿ ಹುಡುಕಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "ಕಡತದ ಆಧಾರದ ಮೇಲೆ ಹುಡುಕಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "ಸಮೂಹಗಳನ್ನು ಹುಡುಕಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "ಹೆಸರಿನ ಆಧಾರದ ಮೇಲೆ ಹುಡುಕಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "ಕಡತಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "ಕ್ಯಾಶೆಯನ್ನು ಪುನಶ್ಚೇತನಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅಪ್ಡೇಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "ಗಣಕವನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "ರದ್ದುಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "ರೆಪೊಸಿಟರಿಗಳನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "ರೆಪೊಸಿಟರಿಯನ್ನು ಶಕ್ತಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "ದತ್ತಾಂಶವನ್ನು ಸಿದ್ಧಗೊಳಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "ಪರಿಹರಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "ಕಡತದ ಪಟ್ಟಿಯನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "ಒದಗಿಸುವುದನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "ಸಹಿಯನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULA ಅನ್ನು ಅಂಗೀಕರಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "ನವೀಕರಣಗಳನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "ವರ್ಗಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "ವ್ಯವಹಾರಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "ಅನುಸ್ಥಾಪಿಸಿದಂತೆ ತೋರಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "ತೆಗೆದು ಹಾಕಿದಂತೆ ತೋರಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "ಅಪ್‌ಡೇಟ್ ಮಾಡಿದಂತೆ ತೋರಿಸಲಾಗುತ್ತಿದೆ"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:64
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "ಸಹಿ ಮಾಡದೆ ಇರುವ ತಂತ್ರಾಂಶವನ್ನು ಅನುಸ್ಥಾಪಿಸಲು ನೀವು ಬಯಸುತ್ತೀರೆ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:69
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "ಸಹಿ ಮಾಡದೆ ಇರುವ ತಂತ್ರಾಂಶವನ್ನು ಅನುಸ್ಥಾಪಿಸಲಾಗುವುದಿಲ್ಲ."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:102
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "ತಂತ್ರಾಂಶ ಆಕರದ ಸಹಿಯ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:108
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "ತಂತ್ರಾಂಶ ಆಕರದ ಹೆಸರು"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:111
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "ಕೀಲಿ URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:114
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "ಕೀಲಿ ಬಳಕೆದಾರ"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:117
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "ಕೀಲಿ ಐಡಿ"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:120
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "ಕೀಲಿ ಫಿಂಗರ್ಪ್ರಿಂಟ್"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:123
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "ಕೀಲಿ ಸಮಯ ಮುದ್ರೆ"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:129
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "ಸಹಿಯನ್ನು ನೀವು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತೀರೆ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:134
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "ಸಹಿಯನ್ನು ಒಪ್ಪಿಕೊಳ್ಳಲಾಗಿಲ್ಲ."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:169
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "ಬಳಕೆದಾರ ಲೈಸೆನ್ಸ್ ಕರಾರಿನ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:178
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "ಕರಾರು"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:184
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "ನೀವು ಈ ಕರಾರನ್ನು ಒಪ್ಪುತ್ತೀರೆ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:189
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "ಕರಾರನ್ನು ಒಪ್ಪಲಾಗಿಲ್ಲ."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:219
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "ಮಾಧ್ಯಮವನ್ನು ಬದಲಾಯಿಸುವ ಅಗತ್ಯವಿದೆ"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:222
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "ಮಾಧ್ಯಮದ ಬಗೆ"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:225
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "ಮಾಧ್ಯಮದ ಲೇಬಲ್"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:228
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "ಪಠ್ಯ"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:232
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "ದಯವಿಟ್ಟು ಸರಿಯಾದ ಮಾಧಮವನ್ನು ತೂರಿಸಿ"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:237
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "ಸರಿಯಾದ ಮಾಧಮವನ್ನು ತೂರಿಸಲಾಗಿಲ್ಲ."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:252
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "ಈ ಕೆಳಗಿನ ಪ್ಯಾಕೇಜುಗಳನ್ನು ತೆಗೆದು ಹಾಕಬೇಕು:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:257
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "ಈ ಕೆಳಗಿನ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅನುಸ್ಥಾಪಿಸಬೇಕು:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:262
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "ಈ ಕೆಳಗಿನ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಬೇಕು:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:267
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "ಈ ಕೆಳಗಿನ ಪ್ಯಾಕೇಜುಗಳನ್ನು ಮರಳಿ ಅನುಸ್ಥಾಪಿಸಬೇಕು:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:272
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "ಈ ಕೆಳಗಿನ ಪ್ಯಾಕೇಜುಗಳ ಆವೃತ್ತಿಯನ್ನು ಕೆಳಕ್ಕೆ ಇಳಿಸಲಾಗುತ್ತದೆ:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:331
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "ಬದಲಾವಣೆಗಳೊಂದಿಗೆ ಮುಂದುವರೆಯಬೇಕೆ?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:336
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "ವ್ಯವಹಾರವು ಮುಂದುವರೆಯಲಿಲ್ಲ."
 
@@ -1691,7 +1734,8 @@ msgstr "ವ್ಯವಹಾರವನ್ನು ಹಿಂದಕ್ಕೆ ಮರಳà
 msgid ""
 "Authentication is required to set the network proxy used for downloading "
 "packages"
-msgstr "ಪ್ಯಾಕೇಜುಗಳನ್ನು ಡೌನ್‌ಲೋಡ್‌ ಮಾಡಲು ಜಾಲಬಂಧ ಪ್ರಾಕ್ಸಿಯನ್ನು ಸಿದ್ಧಗೊಳಿಸಲು ಧೃಢೀಕರಣದ ಅಗತ್ಯವಿದೆ"
+msgstr ""
+"ಪ್ಯಾಕೇಜುಗಳನ್ನು ಡೌನ್‌ಲೋಡ್‌ ಮಾಡಲು ಜಾಲಬಂಧ ಪ್ರಾಕ್ಸಿಯನ್ನು ಸಿದ್ಧಗೊಳಿಸಲು ಧೃಢೀಕರಣದ ಅಗತ್ಯವಿದೆ"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:19
 msgid "Authentication is required to update packages"
@@ -1828,47 +1872,47 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf ಕಡತವನ್ನು ವ್ಯವಸ್ಥೆಯ ಕೋಶದಲ್ಲಿ ಅನುಸ್ಥಾಪಿಸಲಾಗಿಲ್ಲ:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "ಬಳಸಬೇಕಿರುವ ಪ್ಯಾಕೇಜಿಂಗ್ ಬ್ಯಾಕೇಂಡ್, ಉದಾ. dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "ಡೀಮನ್ ಆಗಿ ಮಾಡು ಹಾಗು ಟರ್ಮಿನಲ್‌ನಿಂದ ಕಳಚು"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "ಜಡ ಟೈಮರಿನಿಂದ ಅಶಕ್ತಗೊಳಿಸು"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "ಆವೃತ್ತಿಯನ್ನು ತೋರಿಸಿ ನಿರ್ಗಮಿಸು"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "ಚಿಕ್ಕ ವಿಳಂಬದ ನಂತರ ನಿರ್ಗಮಿಸು"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "ಎಂಜಿನ್ ಲೋಡ್ ಆದ ನಂತರ ನಿರ್ಗಮಿಸು"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit ಸೇವೆ"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "ವ್ಯವಸ್ಥೆಯ ಬಸ್‌ನೊಂದಿಗೆ ಸಂಪರ್ಕಹೊಂದಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "ಆರಂಭಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ ದೋಷ:"
 
@@ -1883,7 +1927,8 @@ msgstr "ತಂತ್ರಾಂಶವು ನಂಬಲು ಯೋಗ್ಯವಾದ
 
 #: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
-msgstr "ಈ ಪ್ಯಾಕೇಜನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡುವುದು ಸುರಕ್ಷಿತ ಎಂದು ನಿಮಗೆ ಖಚಿತವಿರದ ಹೊರತು ಅನುಸ್ಥಾಪಿಸಬೇಡಿ."
+msgstr ""
+"ಈ ಪ್ಯಾಕೇಜನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡುವುದು ಸುರಕ್ಷಿತ ಎಂದು ನಿಮಗೆ ಖಚಿತವಿರದ ಹೊರತು ಅನುಸ್ಥಾಪಿಸಬೇಡಿ."
 
 #: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
@@ -1916,3 +1961,33 @@ msgstr "ಹಲವು ಪ್ಯಾಕೇಜುಗಳು"
 msgid "Only trusted"
 msgstr "ಕೇವಲ ನಂಬಲಾದ"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "ಎಲ್ಲಾ ಕಡತಗಳಿಗಾಗಿ ದೋಷ ನಿವಾರಣಾ ಮಾಹಿತಿಯನ್ನು ತೋರಿಸು"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "ಈ ನಿಶ್ಚಿತ ಘಟಕಗಳ ದೋಷ ನಿವಾರಣೆ ಮಾಡು"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "ಈ ನಿಶ್ಚಿತ ಕಾರ್ಯಭಾರಗಳ ದೋಷ ನಿವಾರಣೆ ಮಾಡು"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "ದೋಷ ನಿವಾರಣಾ ಮಾಹಿತಿಯನ್ನು ಒಂದು ಕಡತಕ್ಕೆ ದಾಖಲಿಸು"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "ದೋಷ ನಿವಾರಣಾ ಆಯ್ಕೆಗಳು"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "ದೋಷ ನಿವಾರಣಾ ಆಯ್ಕೆಗಳನ್ನು ತೋರಿಸು"
+
+#~ msgid "Transaction failed with no error"
+#~ msgstr "ವ್ಯವಹಾರವು ಯಾವುದೆ ದೋಷಗಳಲ್ಲಿದ ವಿಫಲಗೊಂಡಿದೆ"
commit 58a2690bc2d4c66e3377cd1e394c85e4af5de145
Author: khasida <khasida at fedoraproject.org>
Date:   Thu Dec 10 08:09:40 2009 +0000

    Sending translation for Japanese

diff --git a/po/ja.po b/po/ja.po
index 566d511..0829490 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -1,281 +1,307 @@
+# translation of ja.po to Japanese
 # PackageKit.
 # Copyright (C) 2009
 # This file is distributed under the same license as the PACKAGE package.
-# Hyu_gabaru Ryu_ichi <hyu_gabaru at yahoo.co.jp>, 2009.
 #
+# Hyu_gabaru Ryu_ichi <hyu_gabaru at yahoo.co.jp>, 2009.
+# Kiyoto Hashida <khashida at redhat.com>, 2009.
 msgid ""
 msgstr ""
-"Project-Id-Version: 1.0\n"
+"Project-Id-Version: ja\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-10-09 20:51+0000\n"
-"PO-Revision-Date: 2009-10-10 12:07+0900\n"
-"Last-Translator: Hyu_gabaru Ryu_ichi <hyu_gabaru at yahoo.co.jp>\n"
-"Language-Team: Japanese <fedora-trans-ja at redhat.com>\n"
+"POT-Creation-Date: 2009-12-10 02:27+0000\n"
+"PO-Revision-Date: 2009-12-10 17:05+0900\n"
+"Last-Translator: Kiyoto Hashida <khashida at redhat.com>\n"
+"Language-Team: Japanese <jp at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"Plural-Forms: Plural-Forms: nplurals=1; plural=0;\n\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "トランザクション"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "システム時刻"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "成功"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "真"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "偽"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "ロール"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "期間"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(秒)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "コマンドライン"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "利用者 ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "利用者名"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "実名"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "影響されたパッケージ:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "影響されたパッケージ: なし"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "配布物"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "タイプ"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "概要"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "区分"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "親"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "名前"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "アイコン"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "更新の詳細:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:107
-#: ../lib/packagekit-glib2/pk-task-text.c:174
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "パッケージ"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "æ›´æ–°"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "旧版"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:177
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "供給元"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
-msgstr "バグジラ"
+msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "再スタート"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "更新テキスト"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "変更"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "状態"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "発行済"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "更新済"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "有効"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "無効"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "以下によりシステムの再起動が必要です:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "セッションの再起動が必要です:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "以下によりシステム再起動 (セキュリティー) が必要です:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "セッション再起動 (セキュリティー) が必要:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "以下によりアプリケーションの再起動が必要:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "パッケージの説明"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "メッセージ:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "ファイルなし"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "パッケージファイル"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "パーセンテージ"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "状態"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "結果:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "重大なエラー"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:430
-#: ../contrib/command-not-found/pk-command-not-found.c:597
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "トランザクションが失敗"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "現時点では利用可能な更新はありません。"
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "更新を完了するためにコンピューターを再起動してください。"
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "更新を完了するためにログアウトし、ログインしてください。"
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -284,7 +310,7 @@ msgstr ""
 "ピューターを再起動してください。"
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -293,19 +319,19 @@ msgstr ""
 "ウトとログインを行って下さい。"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "このツールでは取り扱えるパッケージを見つけられません: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "このツールではインストールされたパッケージを見つけられません: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "このツールではパッケージを見つけられません: %s"
@@ -314,234 +340,227 @@ msgstr "このツールではパッケージを見つけられません: %s"
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "このツールでは全パッケージを見つけられません: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "トランザクション中にデーモンがクラッシュしました!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit コンソールインターフェース"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "サブコマンド:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
-msgstr ""
-"このアクションは直前に完了したものだったので、時刻を得るのに失敗しました"
-
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:989 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:281
-#: ../contrib/command-not-found/pk-command-not-found.c:651
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:512
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "追加のデバッグ情報を表示"
+msgstr "このアクションは直前に完了したものだったので、時刻を得るのに失敗しました"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:992 ../client/pk-monitor.c:283
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "プログラムのバージョンを表示して終了"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:995
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "インストール済などのフィルターを設定"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:998
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "アクションが完了するのを待たずに終了"
 
 #. command line argument, do we ask questions
-#: ../client/pk-console.c:1001
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
 msgid "Install the packages without asking for confirmation"
-msgstr ""
+msgstr "確認を要求せずにパッケージをインストール"
 
 #. TRANSLATORS: command line argument, this command is not a priority
-#: ../client/pk-console.c:1004
+#: ../client/pk-console.c:1256
 msgid "Run the command using idle network bandwidth and also using less power"
-msgstr ""
+msgstr "遊休のネットワークバンド幅とより少ない電力を使用してコマンドを実行"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "動画のウィジェットの使用ではなく、マシン可読の出力を画面に表示"
 
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1030
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit への接触に失敗"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1086
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
-msgstr "指定されたフィルターは不当です"
+msgstr "指定されたフィルターは無効です"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1105
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
-msgstr "名前のような、検索タイプだ必要です"
+msgstr "名前のような、検索タイプが必要です"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1112 ../client/pk-console.c:1124
-#: ../client/pk-console.c:1136 ../client/pk-console.c:1148
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "検索語が必要です"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1158
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "不当な検索タイプ"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1164
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "インストールするパッケージ名が必要です"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "インストールするファイル名が必要です"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1185
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "タイプと、キー id、パッケージ id が必要です"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1196
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "削除するパッケージ名が必要です"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1205
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "ダウンロードする宛先ディレクトリーとパッケージ名が必要です"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1212
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "ディレクトリーが見つかりません"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1221
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "ライセンス ID (eula-id) が必要です"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1232
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "トランザクション ID (tid) が必要です "
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1253
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "削除するパッケージ名が必要です"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1264 ../client/pk-console.c:1275
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "リポジトリー名が必要です"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1286
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "リポジトリー名と、パラメーター、値が必要です"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1303
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "'update-system' のようなアクションが必要です"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1310
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "正しいロールが必要です"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1320 ../client/pk-console.c:1335
-#: ../client/pk-console.c:1344 ../client/pk-console.c:1364
-#: ../client/pk-console.c:1373 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "パッケージ名が必要です"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1353
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "パッケージの提供する文字列が必要です"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1433
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "オプション '%s' はサポートされていません"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1443
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "コマンド失敗"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "依存のあるファイル名は除かれるように設定する"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
-msgid ""
-"The output file or directory (the current directory is used if ommitted)"
+#: ../client/pk-generate-pack.c:240
+msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "出力ファイルか、ディレクトリー (省略すると現在のディレクトリー)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "サービスパックに入れられるパッケージ"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "利用可能な全ての更新をサービスパックに入れる"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package オプションも --updates オプションも選択されていません。"
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "両方のオプションが選択されました。"
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "出力ディレクトリーかファイル名が必要です"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "デーモンの起動に失敗しました"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "パッケージマネージャーはこの種の操作はできません。"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -550,118 +569,118 @@ msgstr ""
 "ません。"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "ファイルを指定するのなら、サービスパック名がそれで終わる必要があります"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "同一名のパックが既にありますが、上書きしますか?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "パックは上書きされませんでした。"
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "ディレクトリーの作成に失敗しました:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "パッケージ一覧を開くのに失敗しました。"
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "パッケージ名を探しています。"
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "パッケージ '%s' の捜索に失敗しました: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "サービスパックを作成中..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "サービスパック '%s' が作成されました。"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' の作成に失敗しました: %s"
 
-#: ../client/pk-monitor.c:211
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "デーモンの状態を得るのに失敗しました"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit モニター"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "パッケージの情報を獲得中..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s 実行"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "インストールされたバージョン"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "バージョン %s をすぐに実行"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "すぐに実行"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "バージョン %s に更新"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "%s をすぐにインストール"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "バージョン"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
-msgstr "あなたのシステム用のパッケージが見つかりません"
+msgstr "ユーザーのシステム用のパッケージが見つかりません"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "インストール中..."
 
@@ -686,77 +705,76 @@ msgid "Loading list of packages."
 msgstr "パッケージの一覧をロード中。"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:421
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "ファイルの探索に失敗しました"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:560
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "起動に失敗:"
 
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:588
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "パッケージをインストールできません"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:667
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit コマンドが見つかりません"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "コマンドが見つかりません。"
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:711
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "よく似たコマンドは:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "よく似たコマンドを実行:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:735
-#: ../contrib/command-not-found/pk-command-not-found.c:744
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "よく似たコマンドは:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:751
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "実行するコマンドを選んでください"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:767
+#: ../contrib/command-not-found/pk-command-not-found.c:764
 msgid "The package providing this file is:"
 msgstr "このファイルを提供しているパッケージは:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:772
+#: ../contrib/command-not-found/pk-command-not-found.c:769
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
-msgstr ""
-"コマンド %2$s' を提供するためにパッケージ '%1$s' をインストールしますか?"
+msgstr "コマンド %2$s' を提供するためにパッケージ '%1$s' をインストールしますか?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:796
+#: ../contrib/command-not-found/pk-command-not-found.c:793
 msgid "Packages providing this file are:"
 msgstr "このファイルを提供しているパッケージは:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:806
+#: ../contrib/command-not-found/pk-command-not-found.c:803
 msgid "Suitable packages are:"
 msgstr "適切なパッケージは:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:815
+#: ../contrib/command-not-found/pk-command-not-found.c:812
 msgid "Please choose a package to install"
 msgstr "インストールするパッケージを選んでください"
 
@@ -769,190 +787,188 @@ msgstr "インストールを開始します"
 #: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
 #, c-format
 msgid "Failed to find the package %s, or already installed: %s"
-msgstr ""
-"パッケージ %s の探索に失敗しました、または既にインストールされています: %s"
+msgstr "パッケージ %s の探索に失敗しました、または既にインストールされています: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:515
-msgid ""
-"Don't actually install any packages, only simulate what would be installed"
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr ""
 "どのパッケージも実際にはインストールせず、何がインストールされるかシミュレー"
 "トだけします"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "コアパッケージが依存するパッケージはインストールしない"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "情報や進行を表示しない"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:539
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Debuginfo インストーラー"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:554
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "エラー: インストールするパッケージ名を指定してください。"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:590
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "ソースリストを獲得中"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:600
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:675
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:759
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:870
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:914
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "失敗"
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:615
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:655
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:774
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:818
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:885
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:929
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "OK"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:618
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i 個の有効なソースと %i 個の無効なソースが見つかりました。"
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:625
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "デバッグソースを探しています"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:658
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i 個の無効化された debuginfo リポジトリーが見つかりました。"
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:665
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "デバッグソースを有効化しています"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:693
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i 個のデバッグソースを有効化しました。"
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:700
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "デバッグパッケージを探しています"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:712
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "パッケージ %s を探すのに失敗しました: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:735
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "debuginfo パッケージ %s を探すのに失敗しました: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "インストールするパッケージが見つかりません。"
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:777
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i 個のパッケージが見つかりました:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:793
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "これらのパッケージが依存するパッケージを探しています"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:806
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "依存パッケージを見つけられません: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:822
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i 個の追加のパッケージが見つかりました。"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:826
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "追加のパッケージは不要です。"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:835
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "インストールすべきパッケージが %i 個見つかりました:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "シミュレートモードではパッケージをインストールしません"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:860
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "パッケージのインストール中"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:873
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "パッケージをインストールできません: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:905
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "以前有効化されたソースを無効化します"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:917
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "デバッグソースを無効化できません: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:932
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i 個のデバッグソースを無効化しました"
@@ -998,663 +1014,667 @@ msgstr "装置へのパスが見つかりません"
 msgid "Incorrect device path specified"
 msgstr "指定された装置へのパスが正しくありません"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "追加のデバッグ情報を表示"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
-msgstr ""
+msgstr "ハードウェアに実際に触らないで、実行されることを模倣して下さい"
 
 #. TRANSLATORS: command line option: a list of files to install
 #: ../contrib/device-rebind/pk-device-rebind.c:299
 msgid "Device paths"
-msgstr ""
+msgstr "デバイスパス"
 
 #. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
 #: ../contrib/device-rebind/pk-device-rebind.c:314
 msgid "PackageKit Device Reloader"
-msgstr ""
+msgstr "PackageKit デバイスリローダー"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:322
 msgid "You need to specify at least one valid device path"
-msgstr ""
+msgstr "有効なデバイスを少なくとも1つ指定する必要があります"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:332
 msgid "This script can only be used by the root user"
-msgstr ""
+msgstr "このスクリプトは root ユーザーでのみ使用可能です"
 
 #. TRANSLATORS: we're going to verify the path first
 #: ../contrib/device-rebind/pk-device-rebind.c:341
 msgid "Verifying device path"
-msgstr ""
+msgstr "デバイスパスを確証します"
 
 #. TRANSLATORS: user did not specify a device sysfs path that exists
 #: ../contrib/device-rebind/pk-device-rebind.c:346
 msgid "Failed to verify device path"
-msgstr ""
+msgstr "デバイスパスの確証に失敗しました"
 
 #. TRANSLATORS: we're going to try
 #: ../contrib/device-rebind/pk-device-rebind.c:360
 msgid "Attempting to rebind device"
-msgstr ""
+msgstr "デバイスの再バインドを試みます"
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:365
 msgid "Failed to rebind device"
-msgstr ""
+msgstr "デバイスの再バインドに失敗"
 
 #: ../data/packagekit-catalog.xml.in.h:1
 msgid "PackageKit Catalog"
-msgstr ""
+msgstr "PackageKit カタログ"
 
 #: ../data/packagekit-package-list.xml.in.h:1
 msgid "PackageKit Package List"
-msgstr ""
+msgstr "PackageKit パッケージリスト"
 
 #: ../data/packagekit-servicepack.xml.in.h:1
 msgid "PackageKit Service Pack"
-msgstr ""
+msgstr "PackageKit サービスパック"
 
 #: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
-msgstr ""
+msgstr "1 から %i までの数字を1つ入力して下さい: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:181
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
-msgstr ""
+msgstr "複数のパッケージが一致しています:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:190
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
-msgstr ""
+msgstr "現在のパッケージを選択して下さい: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
-msgstr ""
+msgstr "不明な状態"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
-msgstr ""
+msgstr "開始中"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
-msgstr ""
+msgstr "キューで待機中"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
-msgstr ""
+msgstr "実行中"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
-msgstr ""
+msgstr "クエリ中"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
-msgstr ""
+msgstr "情報を取得中"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
-msgstr ""
+msgstr "パッケージを削除中"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
-msgstr ""
+msgstr "パッケージをダウンロード中"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
-msgstr ""
+msgstr "ソフトウェアリストをリフレッシュ中"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
-msgstr ""
+msgstr "更新をインストール中"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
-msgstr ""
+msgstr "パッケージをクリーンアップ中"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
-msgstr ""
+msgstr "旧パッケージを区分中"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
-msgstr ""
+msgstr "依存関係を解決中"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
-msgstr ""
+msgstr "署名をチェック中"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
-msgstr ""
+msgstr "元に戻り中"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
-msgstr ""
+msgstr "変更をテスト中"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
-msgstr ""
+msgstr "変更をコミット中"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
-msgstr ""
+msgstr "データを要求中"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
-msgstr ""
+msgstr "終了"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
-msgstr ""
+msgstr "キャンセル中"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
-msgstr ""
+msgstr "レポジトリ情報をダウンロード中"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
-msgstr ""
+msgstr "パッケージリストをダウンロード中"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
-msgstr ""
+msgstr "ファイルリストをダウンロード中"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
-msgstr ""
+msgstr "変更のリストをダウンロード中"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
-msgstr ""
+msgstr "グループをダウンロード中"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
-msgstr ""
+msgstr "更新情報をダウンロード中"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
-msgstr ""
+msgstr "ファイルを再パッケージ中"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
-msgstr ""
+msgstr "キャッシュをロード中"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
-msgstr ""
+msgstr "アプリケーションをスキャン中"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
-msgstr ""
+msgstr "パッケージリストを生成中"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
-msgstr ""
+msgstr "パッケージマネージャロックを待ち受け中"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
-msgstr ""
+msgstr "認証を待ち受け中"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
-msgstr ""
+msgstr "実行アプリケーションの更新中"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
-msgstr ""
+msgstr "使用中アプリケーションをチェック中"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
-msgstr ""
+msgstr "使用中ライブラリをチェック中"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:386
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "ファイル複写中"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "些細な"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "通常"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "重要"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "セキュリティー"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "バグ修正"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "機能追加"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:428
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
-msgstr ""
+msgstr "ブロックされています"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:433
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
-msgstr ""
+msgstr "インストール済み"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:438
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
-msgstr ""
+msgstr "利用可能"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
-msgstr ""
+msgstr "ダウンロード中"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
-msgstr ""
+msgstr "更新中"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
-msgstr ""
+msgstr "インストール中"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
-msgstr ""
+msgstr "削除中"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
-msgstr ""
+msgstr "クリーンアップ中"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
-msgstr ""
+msgstr "旧ファイル区分中"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:480
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
-msgstr ""
+msgstr "再インストール中"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
-msgstr ""
+msgstr "ダウンロード済み"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
-msgstr ""
+msgstr "削除済み"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
-msgstr ""
+msgstr "クリーンアップ済み"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
-msgstr ""
+msgstr "旧ファイル分類済み"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:522
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
-msgstr ""
+msgstr "再インストール済み"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
-msgstr ""
+msgstr "不明なロールタイプ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
-msgstr ""
+msgstr "依存関係を取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
-msgstr ""
+msgstr "更新の詳細を取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
-msgstr ""
+msgstr "詳細を取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
-msgstr ""
+msgstr "要求を取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
-msgstr ""
+msgstr "更新を取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
-msgstr ""
+msgstr "詳細で検索中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
-msgstr ""
+msgstr "ファイルで検索中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
-msgstr ""
+msgstr "グループ検索中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
-msgstr ""
+msgstr "名前で検索中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
-msgstr ""
+msgstr "ファイルをインストール中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
-msgstr ""
+msgstr "キャッシュをリフレッシュ中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
-msgstr ""
+msgstr "パッケージを更新中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
-msgstr ""
+msgstr "システムを更新中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
-msgstr ""
+msgstr "キャンセル中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
-msgstr ""
+msgstr "レポジトリを取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
-msgstr ""
+msgstr "レポジトリを有効化中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
-msgstr ""
+msgstr "データを設定中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
-msgstr ""
+msgstr "解除中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
-msgstr ""
+msgstr "ファイルリストを取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
-msgstr ""
+msgstr "provide を取得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "署名をインストール中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "パッケージを獲得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULA を受入れ中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "更新を獲得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "区分を獲得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "トランザクションを獲得中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "インストールをシミュレート中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "削除をシミュレート中"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:676
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "更新をシミュレート中"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:66
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
-msgstr ""
+msgstr "署名無しのソフトウェアのインストールを許可しますか?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:71
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
-msgstr ""
+msgstr "署名無しのソフトウェアはインストールされません。"
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:104
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
-msgstr ""
+msgstr "ソフトウェアソースの署名が必要です"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:110
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
-msgstr ""
+msgstr "ソフトウェアソース名"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:113
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
-msgstr ""
+msgstr "キーの URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:116
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
-msgstr ""
+msgstr "キーのユーザー"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:119
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
-msgstr ""
+msgstr "キー ID"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:122
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
-msgstr ""
+msgstr "キーのフィンガープリント"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:125
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
-msgstr ""
+msgstr "キーのタイムスタンプ"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:131
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
-msgstr ""
+msgstr "この署名を承認しますか?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:136
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
-msgstr ""
+msgstr "署名は承認されませんでした。"
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:171
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
-msgstr ""
+msgstr "エンドユーザーライセンス同意書が必要です"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:180
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
-msgstr ""
+msgstr "同意書"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:186
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
-msgstr ""
+msgstr "この同意書を承認しますか?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:191
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
-msgstr ""
+msgstr "同意書は承認されませんでした。"
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:221
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
-msgstr ""
+msgstr "メディアの変更が必要です"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:224
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
-msgstr ""
+msgstr "メディアタイプ"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:227
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
-msgstr ""
+msgstr "メディアラベル"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:230
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
-msgstr ""
+msgstr "テキスト"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:234
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
-msgstr ""
+msgstr "適切なメディアを挿入して下さい"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:239
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
-msgstr ""
+msgstr "適切なメディアが挿入されていません。"
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:254
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
-msgstr ""
+msgstr "以下のパッケージは削除されるべきものです:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:259
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
-msgstr ""
+msgstr "以下のパッケージはインストールされるべきものです:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:264
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
-msgstr ""
+msgstr "以下のパッケージは更新されるべきものです:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:269
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
-msgstr ""
+msgstr "以下のパッケージは再インストールされるべきものです:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:274
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
-msgstr ""
+msgstr "以下のパッケージはダウングレードされるべきものです:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:324
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
-msgstr ""
+msgstr "変更したまま継続しますか?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:329
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
-msgstr ""
+msgstr "トランザクションは進展しませんでした。"
 
 #. SECURITY:
 #. - Normal users do not require admin authentication to accept new
@@ -1664,60 +1684,61 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:7
 msgid "Accept EULA"
-msgstr ""
+msgstr "EULA を承認"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:8
 msgid "Authentication is required to accept a EULA"
-msgstr ""
+msgstr "EULA を承認するには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:9
-msgid ""
-"Authentication is required to cancel a task that was not started by yourself"
-msgstr ""
+msgid "Authentication is required to cancel a task that was not started by yourself"
+msgstr "ユーザー自身が開始していないタスクをキャンセルするには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:10
 msgid "Authentication is required to change software source parameters"
-msgstr ""
+msgstr "ソフトウェアのソースパラメータを変更するには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:11
 msgid ""
 "Authentication is required to consider a key used for signing packages as "
 "trusted"
-msgstr ""
+msgstr "パッケージ署名に使用されたキーを信頼できると判定するには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:12
 msgid "Authentication is required to install a signed package"
-msgstr ""
+msgstr "署名付きのパッケージをインストールするには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:13
 msgid "Authentication is required to install an untrusted package"
-msgstr ""
+msgstr "信頼できないパッケージをインストールするには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:14
 msgid "Authentication is required to refresh the system sources"
-msgstr ""
+msgstr "システムソースをリフレッシュするには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:15
 msgid "Authentication is required to reload the device with a new driver"
-msgstr ""
+msgstr "新規ドライバーでデバイスを再ロードするには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:16
 msgid "Authentication is required to remove packages"
-msgstr ""
+msgstr "パッケージを削除するには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:17
 msgid "Authentication is required to rollback a transaction"
-msgstr ""
+msgstr "トランザクションを元に戻すには認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:18
 msgid ""
 "Authentication is required to set the network proxy used for downloading "
 "packages"
 msgstr ""
+"パッケージのダウンロードに使用されるネットワークプロキシをセットするには "
+"認証が必要です"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:19
 msgid "Authentication is required to update packages"
-msgstr ""
+msgstr "パッケージを更新するには認証が必要です"
 
 #. SECURITY:
 #. - Normal users are allowed to cancel their own task without
@@ -1726,7 +1747,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:25
 msgid "Cancel foreign task"
-msgstr ""
+msgstr "他人のタスクをキャンセル"
 
 #. SECURITY:
 #. - Normal users require admin authentication to enable or disable
@@ -1735,7 +1756,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:31
 msgid "Change software source parameters"
-msgstr ""
+msgstr "ソフトウェアのソースパラメータを変更"
 
 #. SECURITY:
 #. - Normal users do not need authentication to install signed packages
@@ -1745,7 +1766,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:38
 msgid "Install signed package"
-msgstr ""
+msgstr "署名付きのパッケージをインストール"
 
 #. SECURITY:
 #. - Normal users require admin authentication to install untrusted or
@@ -1755,7 +1776,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:45
 msgid "Install untrusted local file"
-msgstr ""
+msgstr "信頼できないローカルファイルをインストール"
 
 #. SECURITY:
 #. - Normal users do not require admin authentication to refresh the
@@ -1763,7 +1784,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:50
 msgid "Refresh system sources"
-msgstr ""
+msgstr "システムソースをリフレッシュ"
 
 #. SECURITY:
 #. - Normal users require admin authentication to rebind a driver
@@ -1774,7 +1795,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:58
 msgid "Reload a device"
-msgstr ""
+msgstr "デバイスを再ロード"
 
 #. SECURITY:
 #. - Normal users require admin authentication to remove packages as
@@ -1787,7 +1808,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:68
 msgid "Remove package"
-msgstr ""
+msgstr "パッケージを削除"
 
 #. SECURITY:
 #. - Normal users require admin authentication to rollback system state
@@ -1796,7 +1817,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:74
 msgid "Rollback to a previous transaction"
-msgstr ""
+msgstr "以前のトランザクションに戻る"
 
 #. SECURITY:
 #. - Normal users do not require admin authentication to set the proxy
@@ -1804,7 +1825,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:79
 msgid "Set network proxy"
-msgstr ""
+msgstr "ネットワークプロキシをセット"
 
 #. SECURITY:
 #. - Normal users require admin authentication to add signing keys.
@@ -1814,7 +1835,7 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:86
 msgid "Trust a key used for signing packages"
-msgstr ""
+msgstr "パッケージの署名に使用されたキーを信頼"
 
 #. SECURITY:
 #. - Normal users do not require admin authentication to update the
@@ -1825,114 +1846,137 @@ msgstr ""
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:94
 msgid "Update packages"
-msgstr ""
+msgstr "パッケージを更新"
 
 #. TRANSLATORS: failed due to DBus security
 #: ../src/pk-main.c:87
 msgid "Startup failed due to security policies on this machine."
-msgstr ""
+msgstr "このマシン上のセキュリティポリシーのため、スタートアップが失敗"
 
 #. TRANSLATORS: only two ways this can fail...
 #: ../src/pk-main.c:89
 msgid "This can happen for two reasons:"
-msgstr ""
+msgstr "これは2つの理由で発生します:"
 
 #. TRANSLATORS: only allowed to be owned by root
 #: ../src/pk-main.c:91
 msgid "The correct user is not launching the executable (usually root)"
-msgstr ""
+msgstr "正しいユーザーが実行可能ファイルを開始していない(通常 root)"
 
 #. TRANSLATORS: or we are installed in a prefix
 #: ../src/pk-main.c:93
 msgid ""
 "The org.freedesktop.PackageKit.conf file is not installed in the system "
 "directory:"
-msgstr ""
+msgstr "org.freedesktop.PackageKit.conf ファイルがシステムディレクトリにインストールされていない:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
-msgstr ""
+msgstr "使用するパッケージバックエンド、例、ダミー"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
-msgstr ""
+msgstr "ターミナルからデーモン化して隔離"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
-msgstr ""
+msgstr "遊休タイマーを無効にする"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
-msgstr ""
+msgstr "バージョンを表示して終了"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
-msgstr ""
+msgstr "少し遅れて終了"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
-msgstr ""
+msgstr "エンジンがロードされてから終了"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
-msgstr ""
+msgstr "PackageKit サービス"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
-msgstr ""
+msgstr "システムバスに接続できません"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
-msgstr ""
+msgstr "スタートの試行でエラー:"
 
 #: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
 msgstr ""
+"デバッギングパッケージをインストールするには、エキストラソースが有効になる "
+"必要がります"
 
 #. TRANSLATORS: is not GPG signed
 #: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
-msgstr ""
+msgstr "ソフトウェアは信頼できるソースのものではありません。"
 
 #: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
-msgstr ""
+msgstr "実行が安全なことを確信できない限りはこのパッケージを更新しないで下さい。"
 
 #: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
-msgstr ""
+msgstr "実行が安全なことを確信できない限りはこれらのパッケージ群を更新しないで下さい。"
 
 #: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
-msgstr ""
+msgstr "実行が安全なことを確信できない限りはこのパッケージをインストールしないで下さい。"
 
 #: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
-msgstr ""
-
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr ""
+msgstr "実行が安全なことを確信できない限りはこれらのパッケージ群をインストールしないで下さい。"
 
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
-msgstr ""
+msgstr "多くのパッケージ"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
-msgstr ""
+msgstr "信頼できるもののみ"
+
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "全てのファイル用にデバッグ情報を表示"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "これらの特定のモジュールをデバグ"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "これらの特定の機能をデバグ"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "デバッギングデータをファイルにログ"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "デバッギングオプション"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "デバッグオプションを表示"
 
-#~ msgid "Transaction failed with no error"
-#~ msgstr "エラーなしでトランザクションが失敗"
commit d94610850b7f6e370b10e38eef5b58aaf7e66252
Author: snowlet <snowlet at fedoraproject.org>
Date:   Thu Dec 10 02:32:49 2009 +0000

    Sending translation for Chinese (Traditional)

diff --git a/po/zh_TW.po b/po/zh_TW.po
index 0363d5f..9365e80 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -1,16 +1,18 @@
+# translation of packagekit.master.po to Traditional Chinese
 # translation of packagekit.master.po to
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 #
 # Terry Chuang <tchuang at redhat.com>, 2008, 2009.
+# Chester Cheng <ccheng@紅帽子>, 2009.
 msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-08-24 11:06+0100\n"
-"PO-Revision-Date: 2009-04-06 16:03+1000\n"
-"Last-Translator: Terry Chuang <tchuang at redhat.com>\n"
-"Language-Team:  <zh at li.org>\n"
+"POT-Creation-Date: 2009-12-09 19:49+0000\n"
+"PO-Revision-Date: 2009-12-10 12:31+1000\n"
+"Last-Translator: Chester Cheng <ccheng@紅帽子>\n"
+"Language-Team: Traditional Chinese <zh_TW at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -18,170 +20,176 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:235
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "交易"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:237
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "系統時間"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:239
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "成功"
 
-#. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:239 ../client/pk-console.c:406
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "True"
 
-#: ../client/pk-console.c:239 ../client/pk-console.c:406
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "False"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:241 ../src/pk-polkit-action-lookup.c:327
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "角色"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "持續時間"
 
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(秒)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:250 ../src/pk-polkit-action-lookup.c:341
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "指令列"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "用戶 ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:259
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "用戶名稱"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:263
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "真實名稱"
 
-#: ../client/pk-console.c:271
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "受影響的套件:"
 
-#: ../client/pk-console.c:273
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "受影響的套件:無"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:298
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "發行套件"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:300
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "é¡žåž‹"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:302 ../client/pk-console.c:325
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "摘要"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:314
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "類別"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:316
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:319
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "父"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:322
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "名稱"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:328
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "圖像"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "有關於更新的詳情:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
+#. TRANSLATORS: the package that is not signed by a known key
+#. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:345 ../src/pk-polkit-action-lookup.c:352
-#, fuzzy
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "套件"
 msgstr[1] "套件"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:348
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "æ›´æ–°"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:352
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "已淘汰的套件"
 
 #. TRANSLATORS: details about the update, the vendor URLs
-#: ../client/pk-console.c:356
+#. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "供應商"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:360
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "供應商"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:364
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:368
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "重新啟動"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:372
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "更新文字"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:376
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "變更"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:380
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "狀態"
 
@@ -191,1073 +199,862 @@ msgid "Issued"
 msgstr "已發出"
 
 #. TRANSLATORS: details about the update, date the update was updated
-#: ../client/pk-console.c:390
+#. TRANSLATORS: The action of the package, in past tense
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "已更新"
 
-#: ../client/pk-console.c:477 ../client/pk-console.c:479
-msgid "Percentage"
-msgstr "百分比"
+#. TRANSLATORS: if the repo is enabled
+#: ../client/pk-console.c:425
+msgid "Enabled"
+msgstr "已啟用"
 
-#: ../client/pk-console.c:479
-msgid "Unknown"
-msgstr "不明"
+#. TRANSLATORS: if the repo is disabled
+#: ../client/pk-console.c:428
+msgid "Disabled"
+msgstr "已停用"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:521
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "需要系統重新啟動:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:524
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "需要重新啟動 session:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:527
-#, fuzzy
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
-msgstr "需要系統重新啟動:"
+msgstr "需要重新啟動系統(安全性):"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:530
-#, fuzzy
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
-msgstr "需要重新啟動 session:"
+msgstr "需要重新啟動 session(安全性):"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:533
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "需要重新啟動應用程式:"
 
+#. TRANSLATORS: This a list of details about the package
+#: ../client/pk-console.c:507
+msgid "Package description"
+msgstr "套件描述"
+
+#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
+#: ../client/pk-console.c:538
+msgid "Message:"
+msgstr "訊息:"
+
+#. TRANSLATORS: This where the package has no files
+#: ../client/pk-console.c:559
+msgid "No files"
+msgstr "無檔案"
+
+#. TRANSLATORS: This a list files contained in the package
+#: ../client/pk-console.c:564
+msgid "Package files"
+msgstr "套件檔案"
+
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "百分比"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "狀態"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "結果:"
+
+#. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
+#: ../client/pk-console.c:685
+msgid "Fatal error"
+msgstr "嚴重錯誤"
+
+#. TRANSLATORS: the transaction failed in a way we could not expect
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
+msgid "The transaction failed"
+msgstr "交易失敗"
+
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "目前沒有可用的更新。"
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:588
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "請重新啟動電腦來完成更新。"
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:591
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "請登出並再次登入來完成更新。"
 
-#. TRANSLATORS: a package needs to restart the application
-#: ../client/pk-console.c:594
-msgid "Please restart the application as it is being used."
-msgstr "請重新啟動應用程式因為該應用程式正被使用中。"
-
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:597
-#, fuzzy
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
-msgstr "請重新啟動電腦來完成更新。"
+msgstr "請重新啟動電腦來完成更新,因為已經安裝了重要的安全性更新檔。"
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:600
-#, fuzzy
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
-msgstr "請登出並再次登入來完成更新。"
+msgstr "請登出並再次登入來完成更新,因為已經安裝了重要的安全性更新檔。"
 
-#. TRANSLATORS: The package is already installed on the system
-#: ../client/pk-console.c:727
-#, c-format
-msgid "The package %s is already installed"
-msgstr "%s 套件已安裝"
-
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:735
-#, c-format
-msgid "The package %s could not be installed: %s"
-msgstr "%s 套件無法被安裝:%s"
-
-#. TRANSLATORS: There was a programming error that shouldn't happen. The detailed error follows
-#: ../client/pk-console.c:760 ../client/pk-console.c:783
-#: ../client/pk-console.c:879 ../client/pk-console.c:996
-#: ../client/pk-tools-common.c:62 ../client/pk-tools-common.c:81
-#: ../client/pk-tools-common.c:89
-#, c-format
-msgid "Internal error: %s"
-msgstr "內部錯誤:%s"
-
-#. TRANSLATORS: There was an error installing the packages. The detailed error follows
-#: ../client/pk-console.c:768 ../client/pk-console.c:1392
-#, c-format
-msgid "This tool could not install the packages: %s"
-msgstr "此工具無法安裝套件:%s"
-
-#. TRANSLATORS: There was an error installing the files. The detailed error follows
-#: ../client/pk-console.c:791
-#, c-format
-msgid "This tool could not install the files: %s"
-msgstr "此工具無法安裝檔案:%s"
-
-#. TRANSLATORS: The package name was not found in the installed list. The detailed error follows
-#: ../client/pk-console.c:847
-#, c-format
-msgid "This tool could not remove %s: %s"
-msgstr "此工具無法被移除 %s:%s"
-
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:870 ../client/pk-console.c:908
-#: ../client/pk-console.c:941
-#, c-format
-msgid "This tool could not remove the packages: %s"
-msgstr "此工具無法移除套件:%s"
-
-#. TRANSLATORS: When removing, we might have to remove other dependencies
-#: ../client/pk-console.c:920
-msgid "The following packages have to be removed:"
-msgstr "下列套件必須被移除掉:"
-
-#. TRANSLATORS: We are checking if it's okay to remove a list of packages
-#: ../client/pk-console.c:927
-msgid "Proceed removing additional packages?"
-msgstr "移除額外套件?"
-
-#. TRANSLATORS: We did not remove any packages
-#: ../client/pk-console.c:932
-msgid "The package removal was canceled!"
-msgstr "套件移除已取消!"
-
-#. TRANSLATORS: The package name was not found in any software sources
-#: ../client/pk-console.c:973
-#, c-format
-msgid "This tool could not download the package %s as it could not be found"
-msgstr "此工具無法下載套件 %s 因為找不到該套件"
-
-#. TRANSLATORS: Could not download the packages for some reason. The detailed error follows
-#: ../client/pk-console.c:1004
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
+#: ../client/pk-console.c:840
 #, c-format
-msgid "This tool could not download the packages: %s"
-msgstr "此工具無法下載套件:%s"
+msgid "This tool could not find any available package: %s"
+msgstr "此工具找不到任何可用的套件:%s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1031 ../client/pk-console.c:1040
+#: ../client/pk-console.c:868
 #, c-format
-msgid "This tool could not update %s: %s"
-msgstr "此工具無法更新 %s:%s"
+msgid "This tool could not find the installed package: %s"
+msgstr "此工具找不到任何已安裝的套件:%s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1062 ../client/pk-console.c:1070
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
-msgid "This tool could not get the requirements for %s: %s"
-msgstr "此工具無法取得 %s 的需求:%s"
+msgid "This tool could not find the package: %s"
+msgstr "此工具找不到套件:%s"
 
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
-#: ../client/pk-console.c:1092 ../client/pk-console.c:1100
-#, c-format
-msgid "This tool could not get the dependencies for %s: %s"
-msgstr "此工具無法取得 %s 的相依性:%s"
-
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
-#: ../client/pk-console.c:1122 ../client/pk-console.c:1130
-#, c-format
-msgid "This tool could not get package details for %s: %s"
-msgstr "此工具無法取得 %s 的套件詳情:%s"
-
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1152
-#, c-format
-msgid "This tool could not find the files for %s: %s"
-msgstr "此工具找不到 %s 的檔案:%s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1160
-#, c-format
-msgid "This tool could not get the file list for %s: %s"
-msgstr "此工具無法取得 %s 的檔案清單:%s"
-
-#. TRANSLATORS: There was an error getting the list of packages. The filename follows
-#: ../client/pk-console.c:1182
-#, c-format
-msgid "File already exists: %s"
-msgstr "檔案已經存在:%s"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1187 ../client/pk-console.c:1243
-#: ../client/pk-console.c:1318
-msgid "Getting package list"
-msgstr "正在取得套件清單"
-
-#. TRANSLATORS: There was an error getting the list of packages. The detailed error follows
-#: ../client/pk-console.c:1193 ../client/pk-console.c:1249
-#: ../client/pk-console.c:1324
-#, c-format
-msgid "This tool could not get package list: %s"
-msgstr "此工具無法取得套件清單:%s"
-
-#. TRANSLATORS: There was an error saving the list
-#: ../client/pk-console.c:1204
-#, c-format
-msgid "Failed to save to disk"
-msgstr "無法儲存至磁碟"
-
-#. TRANSLATORS: There was an error getting the list. The filename follows
-#: ../client/pk-console.c:1238 ../client/pk-console.c:1313
-#, c-format
-msgid "File does not exist: %s"
-msgstr "檔案不存在:%s"
-
-#. TRANSLATORS: header to a list of packages newly added
-#: ../client/pk-console.c:1270
-msgid "Packages to add"
-msgstr "要新增的套件"
-
-#. TRANSLATORS: header to a list of packages removed
-#: ../client/pk-console.c:1278
-msgid "Packages to remove"
-msgstr "要移除的套件"
-
-#. TRANSLATORS: We didn't find any differences
-#: ../client/pk-console.c:1346
-#, c-format
-msgid "No new packages need to be installed"
-msgstr "沒有需要安裝的新套件"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1352
-msgid "To install"
-msgstr "安裝"
-
-#. TRANSLATORS: searching takes some time....
-#: ../client/pk-console.c:1364
-msgid "Searching for package: "
-msgstr "搜尋套件:"
-
-#. TRANSLATORS: package was not found -- this is the end of a string ended in ...
-#: ../client/pk-console.c:1368
-msgid "not found."
-msgstr "找不到套件。"
-
-#. TRANSLATORS: We didn't find any packages to install
-#: ../client/pk-console.c:1379
-#, c-format
-msgid "No packages can be found to install"
-msgstr "找不到可安裝的套件"
-
-#. TRANSLATORS: installing new packages from package list
-#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
-#: ../client/pk-console.c:1385
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:886
-#, c-format
-msgid "Installing packages"
-msgstr "安裝套件"
-
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1421
-#, c-format
-msgid "This tool could not find the update details for %s: %s"
-msgstr "此工具找不到 %s 的更新詳情:%s"
-
-#. TRANSLATORS: There was an error getting the details about the update for the package. The detailed error follows
-#: ../client/pk-console.c:1429
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
-msgid "This tool could not get the update details for %s: %s"
-msgstr "此工具無法取得 %s 的更新詳情:%s"
-
-#. TRANSLATORS: This was an unhandled error, and we don't have _any_ context
-#: ../client/pk-console.c:1460
-msgid "Error:"
-msgstr "錯誤:"
-
-#. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:1474
-msgid "Package description"
-msgstr "套件描述"
-
-#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:1490
-msgid "Message:"
-msgstr ""
-
-#. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:1518
-msgid "Package files"
-msgstr "套件檔案"
-
-#. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:1526
-msgid "No files"
-msgstr "無檔案"
-
-#. TRANSLATORS: This a request for a GPG key signature from the backend, which the client will prompt for later
-#: ../client/pk-console.c:1549
-msgid "Repository signature required"
-msgstr "需要軟體庫簽章"
-
-#. TRANSLATORS: This a prompt asking the user to import the security key
-#: ../client/pk-console.c:1559
-msgid "Do you accept this signature?"
-msgstr "您是否接受此簽章?"
-
-#. TRANSLATORS: This is where the user declined the security key
-#: ../client/pk-console.c:1563
-msgid "The signature was not accepted."
-msgstr "簽章未被接受。"
-
-#. TRANSLATORS: This a request for a EULA
-#: ../client/pk-console.c:1597
-msgid "End user license agreement required"
-msgstr "需要使用者授權合約"
-
-#. TRANSLATORS: This a prompt asking the user to agree to the license
-#: ../client/pk-console.c:1604
-msgid "Do you agree to this license?"
-msgstr "您是否同意此授權合約?"
-
-#. TRANSLATORS: This is where the user declined the license
-#: ../client/pk-console.c:1608
-msgid "The license was refused."
-msgstr "已拒絕授權合約。"
+msgid "This tool could not find all the packages: %s"
+msgstr "此工具找不到所有套件:%s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:1637
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "daemon 損毀了 mid-transaction!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:1690
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit 主控台介面"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:1692
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "次指令:"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:1785 ../client/pk-generate-pack.c:185
-#: ../client/pk-monitor.c:128
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "顯示額外的除錯資訊"
+#. TRANSLATORS: we keep a database updated with the time that an action was last executed
+#: ../client/pk-console.c:1208
+msgid "Failed to get the time since this action was last completed"
+msgstr "無法取得此動作最後完成後的時間"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:1788 ../client/pk-monitor.c:130
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "顯示程式版本然後退出"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:1791
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "設定過濾選項,例如「installed」"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:1794
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "不等待動作完成便退出"
 
-#. TRANSLATORS: This is when we could not connect to the system bus, and is fatal
-#: ../client/pk-console.c:1821
-msgid "This tool could not connect to system DBUS."
-msgstr "此工具無法連至系統 DBUS。"
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "安裝套件,但不需要使用者確認"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "執行這指令,在網路閒置時使用網路頻寬,並使用更少的電力"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "在螢幕上列印出機器可讀取的格式;而不是使用圖形元件"
+
+#. TRANSLATORS: we failed to contact the daemon
+#: ../client/pk-console.c:1281
+msgid "Failed to contact PackageKit"
+msgstr "無法與 PackageKit 連接"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1911
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "指定的過濾器無效"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1930
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "需要搜尋類型,例如名稱"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1937 ../client/pk-console.c:1946
-#: ../client/pk-console.c:1955 ../client/pk-console.c:1964
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "需要搜尋關鍵字"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1971
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "無效的搜尋類型"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1977
-msgid "A package name or filename to install is required"
-msgstr "需要欲安裝的套件之名稱或檔案名稱"
+#: ../client/pk-console.c:1417
+msgid "A package name to install is required"
+msgstr "需要欲安裝的套件之名稱"
+
+#. TRANSLATORS: the user did not specify what they wanted to install
+#: ../client/pk-console.c:1426
+msgid "A filename to install is required"
+msgstr "需要檔名以進行安裝"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1986
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "需要指定一個類型、key_id 以及 package_id"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1995
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "需要欲移除的套件之名稱"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:2003
-#, fuzzy
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "需要指定目的地目錄以及欲下載的套件之名稱"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:2010
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "找不到目錄"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2018
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "需要指定一個授權合約的標示符號(eula-id)"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2028
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "需要交易標示符號(tid)"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:2045
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "需要欲解析的套件之名稱"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:2054 ../client/pk-console.c:2063
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "需要軟體庫的名稱"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:2072
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "需要指定一個 repo 名稱、參數和數值"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:2086
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "需要指定一項動作,例如「update-system」"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:2093
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "需要正確的角色"
 
-#. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:2100
-msgid "Failed to get the time since this action was last completed"
-msgstr "無法取得此動作最後完成後的時間"
-
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:2110 ../client/pk-console.c:2122
-#: ../client/pk-console.c:2131 ../client/pk-console.c:2149
-#: ../client/pk-console.c:2158 ../client/pk-generate-pack.c:241
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "需要套件的名稱"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:2140
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "需要提供套件的字串"
 
-#. TRANSLATORS: The user didn't specify a filename to create as a list
-#: ../client/pk-console.c:2167
-msgid "A list file name to create is required"
-msgstr "需要欲建立的清單檔案名稱"
-
-#. TRANSLATORS: The user didn't specify a filename to open as a list
-#: ../client/pk-console.c:2177 ../client/pk-console.c:2187
-msgid "A list file to open is required"
-msgstr "需要欲開啟的清單檔案"
-
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:2241
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "「%s」選項不被支援"
 
-#. TRANSLATORS: User does not have permission to do this
-#: ../client/pk-console.c:2254
-msgid "Incorrect privileges for this operation"
-msgstr "進行這項作業的權限錯誤"
-
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:2257
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "指令失敗"
 
-#. TRANSLATORS: This is the state of the transaction
-#: ../client/pk-generate-pack.c:101
-msgid "Downloading"
-msgstr "下載中"
-
-#. TRANSLATORS: This is when the main packages are being downloaded
-#: ../client/pk-generate-pack.c:121
-msgid "Downloading packages"
-msgstr "下載套件中"
-
-#. TRANSLATORS: This is when the dependency packages are being downloaded
-#: ../client/pk-generate-pack.c:126
-msgid "Downloading dependencies"
-msgstr "下載相依性中"
-
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:188
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "設定將被排除的相依檔案名稱"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:191
-msgid ""
-"The output file or directory (the current directory is used if ommitted)"
+#: ../client/pk-generate-pack.c:240
+msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "輸出檔案或目錄(若省略的話,目前的目錄便會被使用)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:194
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "將放入服務套件中的套件"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:197
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "將所有可用的套件放入服務套件中"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:225
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package 與 --updates 選項皆未被選擇。"
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:233
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "兩個選項皆被選擇了。"
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:249
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "需要輸出目錄或檔案名稱"
 
+#. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
+#: ../client/pk-generate-pack.c:324
+msgid "The dameon failed to startup"
+msgstr "daemon 無法啟動"
+
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:267 ../client/pk-generate-pack.c:273
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "套件管理員無法進行這類型的作業。"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:280
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
-msgstr ""
+msgstr "無法建立 Service packs,因為 PackageKit 建立時並不支援 libarchive。"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:291
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "若要指定檔案的話,服務套件名稱必須以此為結尾"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:307
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "擁有相同名稱的套件已經存在,您要覆寫這個檔案嗎?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:310
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "套件並未被覆寫。"
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:323
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "建立目錄失敗:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:333
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "開啟套件清單失敗。"
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:344
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "正在尋找套件名稱。"
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "找不到套件「%s」:%s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:365
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "正在建立服務套件..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:372
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "服務套件建立了「%s」"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:377
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "無法建立「%s」:%s"
 
+#: ../client/pk-monitor.c:210
+msgid "Failed to get daemon state"
+msgstr "無法取得 daemon 的狀態"
+
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:146
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit 監控程式"
 
-#: ../client/pk-monitor.c:183
-msgid "Cannot show the list of transactions"
-msgstr ""
-
-#. TRANSLATORS: The package was not found in any software sources
-#: ../client/pk-tools-common.c:118
-#, c-format
-msgid "The package could not be found"
-msgstr "找不到套件"
-
-#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../client/pk-tools-common.c:130
-msgid "More than one package matches:"
-msgstr "超過一個符合的套件:"
-
-#. TRANSLATORS: This finds out which package in the list to use
-#: ../client/pk-tools-common.c:137
-msgid "Please choose the correct package: "
-msgstr "請選擇正確的套件:"
-
-#: ../client/pk-tools-common.c:162
-#, c-format
-msgid "Please enter a number from 1 to %i: "
-msgstr "請輸入一組由 1 到 %i 的數字:"
-
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:466
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "正在取得套件資訊..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:472
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "執行 %s"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:478
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "安裝版本"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:486
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "現在執行版本 %s"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:492
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "現在執行"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:498
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "更新至版本 %s"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:504
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "現在安裝 %s"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:507
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "版本"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:512
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "找不到適合您系統的套件"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "安裝中..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:349
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
-msgstr ""
+msgstr "下載軟體來源的詳細資料。"
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:353
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
-msgstr ""
+msgstr "下載檔案清單(這可能會花上一點時間)。"
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:357
-#, fuzzy
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
-msgstr "正在尋找套件名稱。"
+msgstr "等待套件管理員解除鎖定。"
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
-#, fuzzy
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
-msgstr "下載套件中"
+msgstr "下載套件清單中"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:420
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "搜尋檔案失敗"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:557
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "啟動失敗"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "安裝套件失敗"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "找不到 PackageKit 指令"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "找不到指令。"
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "相似指令:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "執行相似指令:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "相似指令:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "請選擇一項指令來執行"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:764
 msgid "The package providing this file is:"
 msgstr "提供此檔案的套件為:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:769
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "是否要安裝「%s」套件來提供「%s」指令?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:793
 msgid "Packages providing this file are:"
 msgstr "提供此檔案的套件有:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:803
 msgid "Suitable packages are:"
 msgstr "適合的套件有:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:812
 msgid "Please choose a package to install"
 msgstr "請選擇欲安裝的套件"
 
 #. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:187
-#, fuzzy
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
 msgid "Starting install"
-msgstr "安裝"
+msgstr "開始安裝"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:397
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
+#, c-format
 msgid "Failed to find the package %s, or already installed: %s"
-msgstr "%s 套件已安裝"
+msgstr "找不到套件 %s,或已經安裝:%s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:553
-msgid ""
-"Don't actually install any packages, only simulate what would be installed"
-msgstr ""
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+msgid "Don't actually install any packages, only simulate what would be installed"
+msgstr "不實際安裝任何套件,只模擬安裝"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
-msgstr ""
+msgstr "不安裝核心套件所需的相依性套件"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:559
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
-msgstr ""
+msgstr "不顯示訊息或進度"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:577
-#, fuzzy
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
-msgstr "PackageKit 主控台介面"
+msgstr "PackageKit Debuginfo 安裝程式"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
+#, c-format
 msgid "ERROR: Specify package names to install."
-msgstr "沒有需要安裝的新套件"
+msgstr "錯誤:請指定要安裝的套件名稱。沒有需要安裝的新套件"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:623
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
+#, c-format
 msgid "Getting sources list"
-msgstr "正在取得套件清單"
+msgstr "正在取得來源清單"
+
+#. TRANSLATORS: operation was not successful
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
+msgid "FAILED."
+msgstr "失敗。"
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:641
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:681
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:716
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:800
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:844
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:911
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:955
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
-msgstr ""
+msgstr "OK."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
-msgstr ""
+msgstr "找到 %i 已啟用的來源,以及 %i 已停用的來源。"
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:651
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
-msgstr ""
+msgstr "找到 debug 來源"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:684
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
-msgstr ""
+msgstr "找到 %i 已停用的 debuginfo 軟體庫。"
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:691
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
-msgstr ""
-
-#. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:785
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:829
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:896
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:940
-msgid "FAILED."
-msgstr ""
+msgstr "啟用 debug 來源"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:719
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
-msgstr ""
+msgstr "已啟用 %i 個 debug 來源。"
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:726
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
+#, c-format
 msgid "Finding debugging packages"
-msgstr "正在尋找套件名稱。"
+msgstr "正在尋找 debug 套件"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:738
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
+#, c-format
 msgid "Failed to find the package %s: %s"
-msgstr "找不到套件「%s」:%s"
+msgstr "找不到套件 %s:%s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
+#, c-format
 msgid "Failed to find the debuginfo package %s: %s"
-msgstr "找不到套件「%s」:%s"
+msgstr "找不到 debuginfo 套件 %s:%s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:789
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
+#, c-format
 msgid "Found no packages to install."
-msgstr "沒有需要安裝的新套件"
+msgstr "找不到要安裝的套件。"
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
+#, c-format
 msgid "Found %i packages:"
-msgstr "下載套件中"
+msgstr "找到 %i 個套件:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:819
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
-msgstr ""
+msgstr "尋找與這些套件相依的套件"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:832
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
+#, c-format
 msgid "Could not find dependant packages: %s"
-msgstr "找不到套件「%s」:%s"
+msgstr "找不到相依套件:%s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
-msgstr ""
+msgstr "找到 %i 個額外套件。"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:852
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
+#, c-format
 msgid "No extra packages required."
-msgstr "需要套件的名稱"
+msgstr "不需要額外的套件。"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:861
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
+#, c-format
 msgid "Found %i packages to install:"
-msgstr "沒有需要安裝的新套件"
+msgstr "找到 %i 個套件安裝:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
+#, c-format
 msgid "Not installing packages in simulate mode"
+msgstr "不在模擬模式下安裝套件"
+
+#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
+#. TRANSLATORS: transaction state, installing packages
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#, c-format
+msgid "Installing packages"
 msgstr "安裝套件"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:899
-#, fuzzy, c-format
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
+#, c-format
 msgid "Could not install packages: %s"
-msgstr "此工具無法安裝套件:%s"
+msgstr "無法安裝套件:%s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
-msgstr ""
+msgstr "正在停用之前啟用的來源"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:943
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
-msgstr ""
+msgstr "無法停用 debug 來源:%s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:958
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
-msgstr ""
+msgstr "已停用 %i 個 debug 來源。"
 
 #. TRANSLATORS: couldn't open device to write
 #: ../contrib/device-rebind/pk-device-rebind.c:61
-#, fuzzy
 msgid "Failed to open file"
-msgstr "搜尋檔案失敗"
+msgstr "開啟檔案失敗"
 
 #. TRANSLATORS: could not write to the device
 #: ../contrib/device-rebind/pk-device-rebind.c:70
-#, fuzzy
 msgid "Failed to write to the file"
-msgstr "搜尋檔案失敗"
+msgstr "無法寫入檔案"
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:110
 #: ../contrib/device-rebind/pk-device-rebind.c:147
-#, fuzzy
 msgid "Failed to write to device"
-msgstr "無法儲存至磁碟"
+msgstr "無法寫入裝置"
 
 #. TRANSLATORS: the device could not be found in sysfs
 #: ../contrib/device-rebind/pk-device-rebind.c:175
-#, fuzzy
 msgid "Device could not be found"
-msgstr "找不到套件"
+msgstr "找不到裝置"
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:202
-#, fuzzy
 msgid "Failed to unregister driver"
-msgstr "建立目錄失敗:"
+msgstr "無法解除註冊驅動程式"
 
 #. TRANSLATORS: we failed to bind the old driver
 #: ../contrib/device-rebind/pk-device-rebind.c:211
-#, fuzzy
 msgid "Failed to register driver"
-msgstr "建立目錄失敗:"
+msgstr "無法註冊驅動程式"
 
 #. TRANSLATORS: user did not specify a device sysfs path that exists
 #: ../contrib/device-rebind/pk-device-rebind.c:260
-#, fuzzy
 msgid "Device path not found"
-msgstr "找不到目錄"
+msgstr "找不到裝置路徑"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:268
 msgid "Incorrect device path specified"
-msgstr ""
+msgstr "指定的裝置路徑錯誤"
+
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "顯示額外的除錯資訊"
 
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
-msgstr ""
+msgstr "不真正的改動硬體,只模擬結果"
 
 #. TRANSLATORS: command line option: a list of files to install
 #: ../contrib/device-rebind/pk-device-rebind.c:299
 msgid "Device paths"
-msgstr ""
+msgstr "裝置路徑"
 
 #. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
 #: ../contrib/device-rebind/pk-device-rebind.c:314
-#, fuzzy
 msgid "PackageKit Device Reloader"
-msgstr "PackageKit 服務套件"
+msgstr "PackageKit 裝置重新載入程式"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:322
 msgid "You need to specify at least one valid device path"
-msgstr ""
+msgstr "請指定至少一個正確的裝置路徑"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:332
 msgid "This script can only be used by the root user"
-msgstr ""
+msgstr "只有 root 使用者才可以使用這個 script"
 
 #. TRANSLATORS: we're going to verify the path first
 #: ../contrib/device-rebind/pk-device-rebind.c:341
 msgid "Verifying device path"
-msgstr ""
+msgstr "驗證裝置路徑"
 
 #. TRANSLATORS: user did not specify a device sysfs path that exists
 #: ../contrib/device-rebind/pk-device-rebind.c:346
-#, fuzzy
 msgid "Failed to verify device path"
-msgstr "搜尋檔案失敗"
+msgstr "驗證裝置路徑失敗"
 
 #. TRANSLATORS: we're going to try
 #: ../contrib/device-rebind/pk-device-rebind.c:360
 msgid "Attempting to rebind device"
-msgstr ""
+msgstr "試圖重新 bind 裝置"
 
 #. TRANSLATORS: we failed to release the current driver
 #: ../contrib/device-rebind/pk-device-rebind.c:365
-#, fuzzy
 msgid "Failed to rebind device"
-msgstr "建立目錄失敗:"
+msgstr "重新 bind 裝置失敗"
 
 #: ../data/packagekit-catalog.xml.in.h:1
 msgid "PackageKit Catalog"
@@ -1271,6 +1068,607 @@ msgstr "PackageKit 套件清單"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit 服務套件"
 
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
+#, c-format
+msgid "Please enter a number from 1 to %i: "
+msgstr "請輸入一組由 1 到 %i 的數字:"
+
+#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
+msgid "More than one package matches:"
+msgstr "超過一個符合的套件:"
+
+#. TRANSLATORS: This finds out which package in the list to use
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
+msgid "Please choose the correct package: "
+msgstr "請選擇正確的套件:"
+
+#. TRANSLATORS: This is when the transaction status is not known
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
+msgid "Unknown state"
+msgstr "不明的狀態"
+
+#. TRANSLATORS: transaction state, the daemon is in the process of starting
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
+msgid "Starting"
+msgstr "開始"
+
+#. TRANSLATORS: transaction state, the transaction is waiting for another to complete
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
+msgid "Waiting in queue"
+msgstr "在佇列中等待"
+
+#. TRANSLATORS: transaction state, just started
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
+msgid "Running"
+msgstr "執行中"
+
+#. TRANSLATORS: transaction state, is querying data
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
+msgid "Querying"
+msgstr "查詢中"
+
+#. TRANSLATORS: transaction state, getting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
+msgid "Getting information"
+msgstr "正在取得資訊"
+
+#. TRANSLATORS: transaction state, removing packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
+msgid "Removing packages"
+msgstr "移除套件中"
+
+#. TRANSLATORS: transaction state, downloading package files
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
+msgid "Downloading packages"
+msgstr "下載套件中"
+
+#. TRANSLATORS: transaction state, refreshing internal lists
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
+msgid "Refreshing software list"
+msgstr "正在更新軟體清單"
+
+#. TRANSLATORS: transaction state, installing updates
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
+msgid "Installing updates"
+msgstr "安裝更新"
+
+#. TRANSLATORS: transaction state, removing old packages, and cleaning config files
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
+msgid "Cleaning up packages"
+msgstr "正在清除套件"
+
+#. TRANSLATORS: transaction state, obsoleting old packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
+msgid "Obsoleting packages"
+msgstr "正在淘汰套件"
+
+#. TRANSLATORS: transaction state, checking the transaction before we do it
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
+msgid "Resolving dependencies"
+msgstr "正在解決相依性問題"
+
+#. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
+msgid "Checking signatures"
+msgstr "正在檢查安全性簽署"
+
+#. TRANSLATORS: transaction state, when we return to a previous system state
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
+msgid "Rolling back"
+msgstr "正在回溯"
+
+#. TRANSLATORS: transaction state, when we're doing a test transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
+msgid "Testing changes"
+msgstr "正在檢查變更"
+
+#. TRANSLATORS: transaction state, when we're writing to the system package database
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
+msgid "Committing changes"
+msgstr "正在進行變動"
+
+#. TRANSLATORS: transaction state, requesting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
+msgid "Requesting data"
+msgstr "求取資料中"
+
+#. TRANSLATORS: transaction state, all done!
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
+msgid "Finished"
+msgstr "完成"
+
+#. TRANSLATORS: transaction state, in the process of cancelling
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
+msgid "Cancelling"
+msgstr "取消"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
+msgid "Downloading repository information"
+msgstr "正在下載軟體庫資訊"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
+msgid "Downloading list of packages"
+msgstr "下載套件清單中"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
+msgid "Downloading file lists"
+msgstr "下載檔案清單中"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
+msgid "Downloading lists of changes"
+msgstr "下載變更的清單中"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
+msgid "Downloading groups"
+msgstr "下載群組中"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
+msgid "Downloading update information"
+msgstr "正在下載更新資訊"
+
+#. TRANSLATORS: transaction state, repackaging delta files
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
+msgid "Repackaging files"
+msgstr "重新壓製檔案"
+
+#. TRANSLATORS: transaction state, loading databases
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
+msgid "Loading cache"
+msgstr "正在載入快取"
+
+#. TRANSLATORS: transaction state, scanning for running processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
+msgid "Scanning applications"
+msgstr "掃描應用程式"
+
+#. TRANSLATORS: transaction state, generating a list of packages installed on the system
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
+msgid "Generating package lists"
+msgstr "正在產生套件清單"
+
+#. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
+msgid "Waiting for package manager lock"
+msgstr "正在等待套件管理員解除鎖定"
+
+#. TRANSLATORS: transaction state, waiting for user to type in a password
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
+msgid "Waiting for authentication"
+msgstr "正在等待授權"
+
+#. TRANSLATORS: transaction state, we are updating the list of processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
+msgid "Updating running applications"
+msgstr "正在更新執行中的應用程式"
+
+#. TRANSLATORS: transaction state, we are checking executable files currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
+msgid "Checking applications in use"
+msgstr "檢查使用中的應用程式"
+
+#. TRANSLATORS: transaction state, we are checking for libraries currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
+msgid "Checking libraries in use"
+msgstr "檢查使用中的函式庫"
+
+#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
+msgid "Copying files"
+msgstr "複製檔案"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
+msgid "Trivial"
+msgstr "不重要的"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
+msgid "Normal"
+msgstr "正常的"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
+msgid "Important"
+msgstr "重要的"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
+msgid "Security"
+msgstr "安全性"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
+msgid "Bug fix "
+msgstr "修正 bug"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
+msgid "Enhancement"
+msgstr "加強"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
+msgid "Blocked"
+msgstr "已阻絕的"
+
+#. TRANSLATORS: The state of a package
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
+msgid "Installed"
+msgstr "已安裝的"
+
+#. TRANSLATORS: The state of a package, i.e. not installed
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
+msgid "Available"
+msgstr "可用的"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
+msgid "Downloading"
+msgstr "下載中"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
+msgid "Updating"
+msgstr "更新中"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
+msgid "Installing"
+msgstr "安裝中"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
+msgid "Removing"
+msgstr "移除中"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
+msgid "Cleaning up"
+msgstr "清除中"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
+msgid "Obsoleting"
+msgstr "已淘汰的"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
+msgid "Reinstalling"
+msgstr "重新安裝中"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
+msgid "Downloaded"
+msgstr "已下載的"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
+msgid "Removed"
+msgstr "已移除的"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
+msgid "Cleaned up"
+msgstr "已清除的"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
+msgid "Obsoleted"
+msgstr "已淘汰的"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
+msgid "Reinstalled"
+msgstr "已重新安裝的"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
+msgid "Unknown role type"
+msgstr "未知的類型"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
+msgid "Getting dependencies"
+msgstr "取得相依性中"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
+msgid "Getting update details"
+msgstr "正在取得更新套件"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
+msgid "Getting details"
+msgstr "正在取得詳細資料"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
+msgid "Getting requires"
+msgstr "正在取得所需的"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
+msgid "Getting updates"
+msgstr "正在取得更新"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
+msgid "Searching by details"
+msgstr "藉由詳細資料搜尋"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
+msgid "Searching by file"
+msgstr "藉由檔案搜尋"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
+msgid "Searching groups"
+msgstr "搜尋群組"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
+msgid "Searching by name"
+msgstr "藉由名稱搜尋"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
+msgid "Installing files"
+msgstr "正在安裝檔案"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
+msgid "Refreshing cache"
+msgstr "更新快取"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
+msgid "Updating packages"
+msgstr "正在更新套件"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
+msgid "Updating system"
+msgstr "正在更新系統"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
+msgid "Canceling"
+msgstr "取消中"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
+msgid "Getting repositories"
+msgstr "正在取得軟體庫"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
+msgid "Enabling repository"
+msgstr "正在啟用軟體庫"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
+msgid "Setting data"
+msgstr "正在設定資料"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
+msgid "Resolving"
+msgstr "正在解決"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
+msgid "Getting file list"
+msgstr "正在取得檔案清單"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
+msgid "Getting provides"
+msgstr "正在取得提供套件的資料"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
+msgid "Installing signature"
+msgstr "正在安裝簽名"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
+msgid "Getting packages"
+msgstr "正在取得套件"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
+msgid "Accepting EULA"
+msgstr "正在接受 EULA"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
+msgid "Getting upgrades"
+msgstr "正在取得更新"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
+msgid "Getting categories"
+msgstr "正在取得類別"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
+msgid "Getting transactions"
+msgstr "正在取得交易"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
+msgid "Simulating install"
+msgstr "正在模擬安裝"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
+msgid "Simulating remove"
+msgstr "正在模擬移除"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
+msgid "Simulating update"
+msgstr "正在模擬更新"
+
+#. TRANSLATORS: ask the user if they are comfortable installing insecure packages
+#: ../lib/packagekit-glib2/pk-task-text.c:69
+msgid "Do you want to allow installing of unsigned software?"
+msgstr "是否允許安裝未簽署的軟體?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:74
+msgid "The unsigned software will not be installed."
+msgstr "不會安裝未簽署的軟體。"
+
+#. TRANSLATORS: the package repository is signed by a key that is not recognised
+#: ../lib/packagekit-glib2/pk-task-text.c:123
+msgid "Software source signature required"
+msgstr "需要軟體來源簽章"
+
+#. TRANSLATORS: the package repository name
+#: ../lib/packagekit-glib2/pk-task-text.c:129
+msgid "Software source name"
+msgstr "軟體來源名稱"
+
+#. TRANSLATORS: the key URL
+#: ../lib/packagekit-glib2/pk-task-text.c:132
+msgid "Key URL"
+msgstr "金鑰的 URL"
+
+#. TRANSLATORS: the username of the key
+#: ../lib/packagekit-glib2/pk-task-text.c:135
+msgid "Key user"
+msgstr "金鑰的使用者"
+
+#. TRANSLATORS: the key ID, usually a few hex digits
+#: ../lib/packagekit-glib2/pk-task-text.c:138
+msgid "Key ID"
+msgstr "金鑰 ID"
+
+#. TRANSLATORS: the key fingerprint, again, yet more hex
+#: ../lib/packagekit-glib2/pk-task-text.c:141
+msgid "Key fingerprint"
+msgstr "金鑰的指紋"
+
+#. TRANSLATORS: the timestamp (a bit like a machine readable time)
+#: ../lib/packagekit-glib2/pk-task-text.c:144
+msgid "Key Timestamp"
+msgstr "金鑰的時間戳記"
+
+#. TRANSLATORS: ask the user if they want to import
+#: ../lib/packagekit-glib2/pk-task-text.c:157
+msgid "Do you accept this signature?"
+msgstr "您是否接受此簽章?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:162
+msgid "The signature was not accepted."
+msgstr "簽章未被接受。"
+
+#. TRANSLATORS: this is another name for a software licence that has to be read before installing
+#: ../lib/packagekit-glib2/pk-task-text.c:205
+msgid "End user licence agreement required"
+msgstr "需要終端用戶授權協議"
+
+#. TRANSLATORS: the EULA text itself (long and boring)
+#: ../lib/packagekit-glib2/pk-task-text.c:214
+msgid "Agreement"
+msgstr "協議"
+
+#. TRANSLATORS: ask the user if they've read and accepted the EULA
+#: ../lib/packagekit-glib2/pk-task-text.c:223
+msgid "Do you accept this agreement?"
+msgstr "您是否接受此協議?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:228
+msgid "The agreement was not accepted."
+msgstr "協議未被接受。"
+
+#. TRANSLATORS: the user needs to change media inserted into the computer
+#: ../lib/packagekit-glib2/pk-task-text.c:267
+msgid "Media change required"
+msgstr "需要變更媒介"
+
+#. TRANSLATORS: the type, e.g. DVD, CD, etc
+#: ../lib/packagekit-glib2/pk-task-text.c:270
+msgid "Media type"
+msgstr "媒介類型"
+
+#. TRANSLATORS: the media label, usually like 'disk-1of3'
+#: ../lib/packagekit-glib2/pk-task-text.c:273
+msgid "Media label"
+msgstr "媒介的標籤"
+
+#. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
+#: ../lib/packagekit-glib2/pk-task-text.c:276
+msgid "Text"
+msgstr "文字"
+
+#. TRANSLATORS: ask the user to insert the media
+#: ../lib/packagekit-glib2/pk-task-text.c:282
+msgid "Please insert the correct media"
+msgstr "請插入正確的媒介"
+
+#. TRANSLATORS: tell the user we've not done anything as they are lazy
+#: ../lib/packagekit-glib2/pk-task-text.c:287
+msgid "The correct media was not inserted."
+msgstr "並未插入正確的媒介"
+
+#. TRANSLATORS: When processing, we might have to remove other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:302
+msgid "The following packages have to be removed:"
+msgstr "下列套件必須被移除掉:"
+
+#. TRANSLATORS: When processing, we might have to install other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:307
+msgid "The following packages have to be installed:"
+msgstr "必須安裝以下套件:"
+
+#. TRANSLATORS: When processing, we might have to update other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:312
+msgid "The following packages have to be updated:"
+msgstr "必須更新以下套件:"
+
+#. TRANSLATORS: When processing, we might have to reinstall other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:317
+msgid "The following packages have to be reinstalled:"
+msgstr "必須重新安裝以下套件:"
+
+#. TRANSLATORS: When processing, we might have to downgrade other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:322
+msgid "The following packages have to be downgraded:"
+msgstr "必須降級以下套件:"
+
+#. TRANSLATORS: ask the user if the proposed changes are okay
+#: ../lib/packagekit-glib2/pk-task-text.c:382
+msgid "Proceed with changes?"
+msgstr "是否進行變更?"
+
+#. TRANSLATORS: tell the user we didn't do anything
+#: ../lib/packagekit-glib2/pk-task-text.c:387
+msgid "The transaction did not proceed."
+msgstr "交易並未進行。"
+
 #. SECURITY:
 #. - Normal users do not require admin authentication to accept new
 #. licence agreements.
@@ -1286,8 +1684,7 @@ msgid "Authentication is required to accept a EULA"
 msgstr "要接受 EULA 需先經過身份認證"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:9
-msgid ""
-"Authentication is required to cancel a task that was not started by yourself"
+msgid "Authentication is required to cancel a task that was not started by yourself"
 msgstr "若要取消一項並非您自行啟動的工作,您必須先經過身份認證"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:10
@@ -1313,9 +1710,8 @@ msgid "Authentication is required to refresh the system sources"
 msgstr "要刷新系統來源需先經過身份認證"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:15
-#, fuzzy
 msgid "Authentication is required to reload the device with a new driver"
-msgstr "要刷新系統來源需先經過身份認證"
+msgstr "要使用新的驅動程式來重新載入裝置,需要先經過身份認證"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:16
 msgid "Authentication is required to remove packages"
@@ -1390,7 +1786,7 @@ msgstr "刷新系統來源"
 #.
 #: ../policy/org.freedesktop.packagekit.policy.in.h:58
 msgid "Reload a device"
-msgstr ""
+msgstr "重新載入裝置"
 
 #. SECURITY:
 #. - Normal users require admin authentication to remove packages as
@@ -1466,88 +1862,110 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf 檔案尚未安裝在系統目錄中:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "欲使用的套件後端,例如「dummy」"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "Daemon 化並由終端機分離"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "停用閒置計時器"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "顯示版本並退出"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "經過了短暫的延遲後退出"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "引擎載入後退出"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit 服務"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "無法連至系統 bus"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "嘗試啟動時發生錯誤:"
 
-#: ../src/pk-polkit-action-lookup.c:147
-#, fuzzy
+#: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
-msgstr "沒有需要安裝的新套件"
+msgstr "要安裝 debug 套件,需要啟用額外資源"
 
 #. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:168 ../src/pk-polkit-action-lookup.c:187
+#: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
-msgstr ""
+msgstr "軟體並非來自受信任的來源。"
 
-#: ../src/pk-polkit-action-lookup.c:173
+#: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
-msgstr ""
+msgstr "除非您確定安裝這套件是安全的,否則請勿更新。"
 
-#: ../src/pk-polkit-action-lookup.c:174
+#: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
-msgstr ""
+msgstr "除非您確定安裝這些套件是安全的,否則請勿更新。"
 
-#: ../src/pk-polkit-action-lookup.c:192
+#: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
-msgstr ""
+msgstr "除非您確定安裝這套件是安全的,否則請勿安裝。"
 
-#: ../src/pk-polkit-action-lookup.c:193
+#: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
-msgstr ""
-
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:199
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr ""
+msgstr "除非您確定安裝這些套件是安全的,否則請勿安裝。"
 
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:274
-#, fuzzy
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
-msgstr "更新套件"
+msgstr "許多套件"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:334
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
-msgstr ""
+msgstr "只有受信任的"
+
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "顯示所有檔案的 debug 資訊"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "debug 這些特定模組"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "debug 這些特定功能"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "將 debug 資料寫入檔案"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "Debug 的選項"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "顯示 debug 選項"
+
commit 991ff162ed8758c9fca86e4ac7141ff67ffaa42a
Author: sandeeps <sandeeps at fedoraproject.org>
Date:   Wed Dec 9 13:31:22 2009 +0000

    Sending translation for Marathi

diff --git a/po/mr.po b/po/mr.po
index 72871d1..6c81148 100644
--- a/po/mr.po
+++ b/po/mr.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-25 02:41+0000\n"
-"PO-Revision-Date: 2009-09-25 10:49+0530\n"
+"POT-Creation-Date: 2009-12-07 08:29+0000\n"
+"PO-Revision-Date: 2009-12-09 17:39+0530\n"
 "Last-Translator: Sandeep Shedmake <sshedmak at redhat.com>\n"
 "Language-Team: Marathi <fedora-trans-mr at redhat.com>\n"
 "MIME-Version: 1.0\n"
@@ -19,124 +19,127 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n!=1);\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "व्यवहार"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "प्रणाली वेळ"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "यशस्वी"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "True"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "False"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:336
 msgid "Role"
 msgstr "Role"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "कालावधी"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(सेकंद)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:350
 msgid "Command line"
 msgstr "आदेश ओळ"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "वापरकर्ता ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "वापरकर्ता नाव"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "वास्तविक नाव"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "प्रभावीत संकुल:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "प्रभावीत संकुल: काहिच नाही"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "वितरण"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "प्रकार"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "सारांश"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "प्रवर्ग"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "मुख्य"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "नाव"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "चिन्ह"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "अद्ययावत विषयी तपशील:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:105
-#: ../lib/packagekit-glib2/pk-task-text.c:172
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
 #: ../src/pk-polkit-action-lookup.c:361
 msgid "Package"
 msgid_plural "Packages"
@@ -144,141 +147,161 @@ msgstr[0] "संकुल"
 msgstr[1] "संकुले"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "अद्ययावत"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "जुणे"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:175
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "विक्रेता"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "बगजीला"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "पुन्हा सुरू करा"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "अद्ययावत पाठ्य"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "बदल"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "स्तर"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "वितरण दिनांक"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "अद्ययावतीत"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "कार्यक्षम केले"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "अकार्यक्षम केले"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "प्रणाली पुन्हा चालू करणे आवश्यक:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "सत्र पुन्हा चालू करणे आवश्यक:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "प्रणाली पुनः चालू करणे (सुरक्षा) आवश्यक:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "सत्र पुनः चालू करणे (सुरक्षा) आवश्यक:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "अनुप्रयोग पुन्हा चालू करणे आवश्यक:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "संकुल वर्णन"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "संदेश:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "फाइन नाही"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "संकुल फाइल"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "टक्केवारी"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "स्तर"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "परिणाम:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "आंतरीक त्रुटी"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:422
-#: ../contrib/command-not-found/pk-command-not-found.c:563
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "व्यवहार अपयशी"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "यावेळी सुधारणा उपलब्ध नाही."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "अद्ययावत पूर्ण करण्याकरीता कृपया संगणक पुन्हा चालू करा."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "कृपया वापरकर्ता बदला व अद्ययावत पूर्ण करण्याकरीता प्रवेश करा."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -287,7 +310,7 @@ msgstr ""
 "पुनःचालू करा."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -296,19 +319,19 @@ msgstr ""
 "पुनः प्रवेश करा."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "हे साधन कुठलेही उपलब्ध संकुल शोधू शकते नाही: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "हे साधन प्रतिष्ठापीत संकुल शोधू शकले नाही: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "हे साधन संकुल शोधू शकले नाही: %s"
@@ -317,428 +340,439 @@ msgstr "हे साधन संकुल शोधू शकले नाहà
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "हे साधन सर्व संकुल शोधू शकले नाही: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "डिमन व्यवहारच्या मधोमध क्रॅश झाले!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit कन्सोल संवाद"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "उपआदेश:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "शेवटच्यावेळी पूर्ण केलेली कृतीचे वेळ प्राप्त करण्यास अपयशी"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:987 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:276
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:511
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "अगाऊ डिबगींग माहिती दाखवा"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:990 ../client/pk-monitor.c:278
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "कार्यक्रम आवृत्ती दाखवा व बाहेर पडा"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:993
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "चाळणी निश्चित करा, उ.दा. प्रतिष्ठापीत"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:996
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "कृती पूर्ण केल्याविना बाहेर पडा"
 
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "खात्री न करता संकुल प्रतिष्ठापीत करा"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "योग्य नेटवर्क बँडविड्थ व कमी पावरचा वापर करून आदेश चालवा"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "चलचित्र विजेट्स्चा वापर करण्याऐवजी, पडद्यावर मशीनवरील वाचनजोगी आऊटपुटची छपाई करा"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1022
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit सह संपर्क साधण्यास अपयशी"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1074
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "निश्चित चाळणी अवैध नुरूप आढळली"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1093
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "शोध प्रकार आवश्यक, उ.दा. नाव"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1100 ../client/pk-console.c:1112
-#: ../client/pk-console.c:1124 ../client/pk-console.c:1136
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "शोध संज्ञा आवश्यक"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1146
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "अवैध शोध प्रकार"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1152
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "प्रतिष्ठापनकरीता संकुलचे नाव आवश्यक आहे"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1161
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "प्रतिष्ठपन करीता फाइलचेनाव आवश्यक आहे"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "प्रकार, key_id व package_id आवश्यक आहे"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1184
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "काढून टाकण्याजोगी संकुल नाव"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1193
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "लक्ष्य डिरेक्ट्री व डाऊनलोडजोगी संकुल नावे आवश्यक आहे"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1200
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "डिरेक्ट्री आढळली नाही"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1209
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "परवाना ओळख (eula-id) आवश्यक आहे"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1220
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "transaction identifier (tid) आवश्यक आहे"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1241
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "निर्धारण करीता संकुल नाव आवश्यक आहे"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1252 ../client/pk-console.c:1263
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "रेपॉजिटरी नाव आवश्यक आहे"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1274
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "रेपो नाव, बाब व मूल्य आवश्यक आहे"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1291
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "कृती, उ.दा. 'update-system' आवश्यक आहे"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1298
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "वर्तमान भूमिका आवश्यक आहे"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1308 ../client/pk-console.c:1323
-#: ../client/pk-console.c:1332 ../client/pk-console.c:1352
-#: ../client/pk-console.c:1361 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "संकुल नाव आवश्यक आहे"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1341
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "संकुल द्वारे पुरविलेली अक्षरमाळा आवश्यक आहे"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1421
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "पर्याय '%s' समर्थीत नाही"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1431
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "आदेश अपयशी"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "वगळण्याजोगी अवलंबनचे फाइल नाव निश्चित करा"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "आऊटपुट फाइल किंवा डिरेक्ट्री (वगळल्यास वर्तमान डिरेक्ट्रीचा वापर करा)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "सेवा पॅक अंतर्गत समाविष्ट करण्याजोगी संकुल"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "सेवा पॅक अंतर्गत सर्व उपलब्ध अद्ययावत समाविष्ट करा"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package किंवा --updates पर्याय निवडले नाही."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "दोन्ही पर्याय निवडले."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "आऊटपुट डिरेक्ट्री किंवा फाइल नाव आवश्यक आहे"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "डीमन सुरू होण्यास अपयशी ठरले"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "संकुल व्यवस्थापक या प्रकारची कार्य कार्यान्वीत करू शकत नाही."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
 msgstr "PackageKit ला libarchive समर्थन सह बिल्ट न केल्यामुळे Service पैक बनवणे शक्य नाही."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "फाइल निश्चित केल्यास, सेवा पॅक नाव यानुरूप समाप्त व्हायला हवे"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "समान नावाचे पॅक आधिपासूनच अस्तित्वात आहे, तुम्हाला खोडून पुन्हा लिहायचे?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "पॅक खोडून पुन्हा लिहीले गेले नाही."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "डिरेक्ट्री बनविण्यास अपयशी:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "संकुल सूची उघडण्यास अपयशी."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "संकुल नाव शोधत आहे."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "संकुल '%s' आढळले नाही: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "सेवा पॅक बनवत आहे..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "सेवा पॅक '%s' बनविले"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' बनविण्यास अपयशी: %s"
 
-#: ../client/pk-monitor.c:206
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "डीमन स्तर प्राप्त करण्यास अपयशी"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:294
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "पॅकेजकिट मॉनिटर"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "संकुल माहिती प्राप्त करत आहे..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s चालवा"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "प्रतिष्ठापीत आवृत्ती"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "आता आवृत्ती %s चालवा"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "आता चालवा"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "आवृत्ती %s करीता अद्ययावत करा"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "%s आता प्रतिष्ठापीत करा"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "आवृत्ती"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "तुमच्या प्रणाली करीता संकुल आढळले नाही"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "प्रतिष्ठापन करत आहे..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:357
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "सॉफ्टवेयर स्रोत विषयी तपशील डाऊनलोड करत आहे."
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "फाइनसूची डाऊनलोड करत आहे (पूर्ण व्हायला जरा वेळ लागेल)."
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:365
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "संकुल व्यवस्थापक कुलूपबंदकरीता प्रतिक्षेत."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:369
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "संकुलांची सूची लोड करत आहे."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:413
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "फाइल करीता शोध करण्यास अपयशी"
 
+#. TRANSLATORS: we failed to launch the executable, the error follows
+#: ../contrib/command-not-found/pk-command-not-found.c:566
+msgid "Failed to launch:"
+msgstr "सुरू करण्यास अपयशी:"
+
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:554
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "संकुल प्रतिष्ठापीत करणे अशक्य"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit आदेश आढळले नाही"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:660
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "आदेश आढळले नाही."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:667
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "समान आदेश यानुरूप आहे:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:676
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "समान आदेश चालवा:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:688
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "समान आदेश यानुरूप आहे:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:704
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "कृपया चालविण्याजोगी आदेश निवडा"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:720
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "ही फाइल या संकुल द्वारे पुरविली जाते:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:725
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "आदेश '%2$s' पुरविण्याकरीता संकुल '%1$s' प्रतिष्ठापीत करायचे?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:743
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "ही फाइल या संकुल द्वारे पुरविले जाते:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:753
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "योग्य संकुल यानुरूप आहे:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:762
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "प्रतिष्ठापन करीता कृपया संकुल निवडा"
 
@@ -754,183 +788,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "संकुल %s शोधण्यास अपयशी, किंवा आधिपासूनच प्रतिष्ठापीत असेल: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:514
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "संकुल वास्तविकरित्या प्रतिष्ठापीत करू नका, व फक्त प्रतिष्ठापनजोगी घटक सिम्यूलेट करा"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:517
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "कोर संकुलचे अवलंबन प्रतिष्ठापीत करू नका"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:520
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "माहिती किंवा प्रगती दाखवू नका"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:535
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "पॅकेजकिट डिबगइंफो इन्सटॉलर"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "ERROR: प्रतिष्ठापनजोगी संकुल नाव निश्चित करा."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:579
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "स्रोत यादी प्राप्त करत आहे"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:664
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:748
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:792
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:859
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:903
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "अपयशी."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:604
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:679
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:807
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:918
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ठिक."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:607
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i कार्यान्वीत व %i अकार्यान्वीत स्रोत आढळले."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:614
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "डिबगींग स्रोत शोधत आहे"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:647
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i अकार्यान्वीत debuginfo repos आढळले."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:654
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "डिबगींग स्रोत कार्यान्वीत करत आहे"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:682
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i डिबगींग स्रोत कार्यान्वीत केले."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:689
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "डिबगींग संकुल शोधत आहे"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "संकुल %s शोधण्यास अपयशी: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:724
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "debuginfo संकुल %s शोधण्यास अपयशी: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:752
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "प्रतिष्ठापन करीता संकुल आढळले नाही."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:766
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i संकुल आढळले:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:782
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "या संकुलवर अवलंबीत संकुल शोधत आहे"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "अवलंबन संकुल आढळले नाही: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:811
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i अगाऊ संकुल शोधत आहे."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:815
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "अगाऊ संकुल आवश्यक नाही."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "प्रतिष्ठापन करीता %i संकुल आढळले:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "सिम्यूलेट पद्धती नुरूप संकुल प्रतिष्ठापीत करत नाही"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:849
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "संकुल प्रतिष्ठापीत करत आहे"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "संकुल प्रतिष्ठापीत करणे अशक्य: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:894
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "पूर्वी कार्यान्वीत केलेले स्रोत अकार्यान्वीत करत आहे"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:906
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "डिबगींग स्रोत अकार्यान्वीत करण्यास अशक्य: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:921
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i डिबगींग स्रोत अकार्यान्वीत केले."
@@ -976,6 +1010,10 @@ msgstr "साधनाचा मार्ग आढळला नाही"
 msgid "Incorrect device path specified"
 msgstr "अयोग्य साधनाचे मार्ग निर्देशीत केले"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "अगाऊ डिबगींग माहिती दाखवा"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1033,604 +1071,604 @@ msgstr "PackageKit संकुल सूची"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit सेवा पॅक"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:55
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
 msgstr "कृपया 1 ते %i क्रमांक निवडा: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:177
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "एकापेक्षा जास्त संकुल जुळवणी:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:186
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "कृपया योग्य संकुल निवडा: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:238
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "अपरिचीत स्तर"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "सुरू करत आहे"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "queue मध्ये प्रतीक्षा करत आहे"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "चालवत आहे"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "चौकशी करत आहे"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "माहिती प्राप्त करत आहे"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "संकुल काढून टाकत आहे"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "संकुल डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "सॉफ्टवेअर सूची ताजी करत आहे"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "सुधारणा प्रतिष्ठापीत करत आहे"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "संकुल नष्ट करत आहे"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "संकुल जुणे करत आहे"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "अवलंबनचे निवारण करत आहे"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "स्वाक्षरी तपासत आहे"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "रोलबॅक करत आहे"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "बदलावांची चाचणी करत आहे"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "बदलाव कमीट करत आहे"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "डाटाकरीता विनंती करत आहे"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "पूर्ण झाले"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "रद्द करत आहे"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "रेपॉजिटरी माहिती डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "संकुलांची सूची डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "फाइल सूची डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "बदलावांची सूची डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "गट डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "सुधारणा माहिती डाऊनलोड करत आहे"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "फाइल्स्ला पुनःपॅकेज करत आहे"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "कॅशे लोड करत आहे"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "ऍप्लिकेशन्स् स्कॅन करत आहे"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "संकुल सूची निर्माण करत आहे"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "संकुल व्यवस्थापक लॉकसाठी प्रतीक्षा करत आहे"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "ओळख पटवण्यासाठी प्रतीक्षा करत आहे"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "कार्यरत ऍप्लिकेशन्स्ची सुधारणा करत आहे"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "वापरणीतील ऍप्लिकेशन्स् तपासत आहे"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "वापरणीतील लायब्ररीज् तपासत आहे"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "फाइल्चे प्रत बनवत आहे"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:400
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "सामान्य"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "सामान्य"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "महत्वाचे"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "सुरक्षा"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "बगचे निवारन"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "सुधारणा"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "ब्लॉक्ड्"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:429
-#: ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "प्रतिष्ठापीत"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:434
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "उपलब्ध"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:452
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "डाऊनलोड करत आहे"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "सुधारीत करत आहे"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "प्रतिष्ठापन करत आहे"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "काढून टाकत आहे"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "सुस्थीत करत आहे"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "जुणे करत आहे"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "पुनःप्रतिष्ठापीत करत आहे"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:494
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "डाऊनलोड केले"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "काढून टाकले"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "सुस्थीत केले"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "जुणे केले"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "पुनःप्रतिष्ठापीत केले"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:536
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "अपरिचीत भूमीका प्रकार"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "अवलंबन प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "सुधारणा तपशील प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "तपशील प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "requires प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "सुधारणा प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "तपशीलप्रमाणे शोधत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "फाइलप्रमाणे शोधत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "गट शोधत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "नावाप्रमाणे शोधत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "फाइल्स् प्रतिष्ठापीत करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "कॅशे ताजे करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "संकुल सुधारीत करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "प्रणाली सुधारीत करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "रद्द करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "रेपॉजिटरी प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "रेपॉजिटरी कार्यक्षम करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "डाटा सेट करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "नीवारन करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "फाइल सूची प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "provides प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "मुद्रा प्रतिष्ठापीत करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "संकुल प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULA स्वीकारत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "सुधारणा प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "क्षेत्र प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "व्यवहार प्राप्त करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "प्रतिष्ठापन सिम्यूलेट करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "काढून टाकणे सिम्यूलेट करत आहे"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "सुधारणा सिम्यूलेट करत आहे"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:64
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "तुम्हाला विनास्वाक्षरी सॉफ्टवेअरचे प्रतिष्ठापन स्वीकारायचे?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:69
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "विनास्वाक्षरी सॉफ्टेवअर प्रतिष्ठापीत केले जाणार नाही."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:102
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "सॉफ्टवेअर स्रोत स्वाक्षरी आवश्यक आहे"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:108
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "सॉफ्टवेअर स्रोतचे नाव"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:111
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "किचे URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:114
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "किचा वापरकर्ता"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:117
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "किचे ID"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:120
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "किचे फिंगरप्रिंट"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:123
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "किचे टाइमस्टॅम्प"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:129
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "तुम्ही ही स्वाक्षरी स्वीकारता?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:134
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "स्वाक्षरी स्वीकारली गेली नाही."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:169
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "वापरकर्ता परवाना करार आवश्यक आहे"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:178
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "करार"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:184
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "तुम्हाला हे करार स्वीकारायचे?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:189
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "करार स्वीकारले गेले नाही."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:219
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "मिडीया बदलाव आवश्यक"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:222
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "मिडीया प्रकार"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:225
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "मिडीया लेबल"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:228
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "मजकूर"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:232
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "कृपया योग्य मिडीया अंतर्भूत करा"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:237
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "योग्य मिडीया अंतर्भूत केले नाही."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:252
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "खालिल संकुल काढून टाकणे आवश्यक आहे:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:257
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "खालील संकुल प्रतिष्ठापीत करणे आवश्यक आहे:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:262
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "खालील संकुल सुधारीत करणे आवश्यक आहे:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:267
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "खालील संकुलांचे पुनःप्रतिष्ठापन आवश्यक आहे:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:272
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "खालील संकुलांची एक आवृत्ती कमी करणे आवश्यक आहे:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:331
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "बदलांशी पुढे जायचे?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:336
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "व्यवहार पुढे कार्यान्वीत झाले नाही."
 
@@ -1827,47 +1865,47 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf फाइल प्रणाली डिरेक्ट्री अंतर्गत प्रतिष्ठापीत नाही:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "वापरण्याजोगी संकुल बॅकएन्ड, उ.दा. dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "डिमन बनवा व टर्मिनल पासून वेगळे करा"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "idle timer अकार्यान्वीत करा"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "आवृत्ती दाखवा व बाहेर पडा"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "लहान विलंब नंतर बाहेर पडा"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "इंजीन दाखल केल्यावर बाहेर पडा"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit सेवा"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "प्रणाली बस सह जुळवणी स्थपीत करण्यास अशक्य"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "सुरू करतेवेळी त्रुटी आढळली:"
 
@@ -1911,3 +1949,31 @@ msgstr "अनेक संकुले"
 msgid "Only trusted"
 msgstr "फक्त विश्वासर्ह"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "सर्व फाइल्स्करीता डिबगींग माहिती दाखवा"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "या ठराविक विभाग डिबग करा"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "या ठराविक फंक्शन्स् डिबग करा"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "फाइलमध्ये डिबगींग माहिती लॉग करा"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "डिबगींग पर्याय"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "डिबगींग पर्याय दाखवा"
+
commit 508e4d195c7310bce2202b7431d99f2c82593dcd
Author: ifelix <ifelix at fedoraproject.org>
Date:   Wed Dec 9 10:27:38 2009 +0000

    Sending translation for Tamil

diff --git a/po/ta.po b/po/ta.po
index e4a7511..854d66b 100644
--- a/po/ta.po
+++ b/po/ta.po
@@ -6,320 +6,332 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.ta\n"
-"Report-Msgid-Bugs-To: https://bugs.freedesktop.org/enter_bug.cgi?product=PackageKit&component=General\n"
-"POT-Creation-Date: 2009-10-02 15:25+0000\n"
-"PO-Revision-Date: 2009-10-31 16:16+0530\n"
-"Last-Translator: I. Felix <ifelix at redhat.com>\n"
-"Language-Team: Tamil <fedora-trans-ta at redhat.com>\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-12-08 08:21+0000\n"
+"PO-Revision-Date: 2009-12-09 15:52+0530\n"
+"Last-Translator: \n"
+"Language-Team: American English <kde-i18n-doc at kde.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n!=1);\\n\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
-"\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\\n"
 "\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175
+#: ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "பரிமாற்றம்"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "கணினி நேரம்"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "வெற்றியடைதல்"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "சரி"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "தவறு"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181
+#: ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "பங்கு"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "இடைவெளி"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
-msgstr "(நொடிகள்"
+msgstr "(நொடிகள்)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190
+#: ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "கட்டளை வரி"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "பயனர் ஐடி"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "பயனர் பெயர்"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "உண்மையான பெயர்"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "பாதிக்கப்பட்ட தொகுதிகள்:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "பாதிக்கப்பட்ட தொகுதிகள்: ஒன்றுமில்லாத"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "விநியோகம்"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "வகை"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252
+#: ../client/pk-console.c:291
 msgid "Summary"
 msgstr "சுருக்கம்"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "வகை"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "பெற்றோர்"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "பெயர்"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "சின்னம்"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "மேம்படுத்துதல் பற்றிய விவரங்கள்:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:107
-#: ../lib/packagekit-glib2/pk-task-text.c:174
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../client/pk-console.c:346
+#: ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "தொகுப்பு"
 msgstr[1] "தொகுப்புகள்"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "மேம்படுத்தல்கள"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "நீக்கப்பட்டது"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:177
+#: ../client/pk-console.c:357
+#: ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "விற்பனையாளர்"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "பக்ஸிலா"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "மறுதுவக்கு"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "மேம்படுத்தப்பட்ட உரை"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "மாற்றங்கள்"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "நிலை"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "வழங்கப்பட்டது"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../client/pk-console.c:389
+#: ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "மேம்படுத்தப்பட்டது"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "செயல்படுத்தப்பட்டது"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "செயல்நீக்கப்பட்டது"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "கணினிக்கு மறுதுவக்கம் தேவைப்படுகிறது:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "அமர்வுக்கு மறுதுவக்கம் தேவைப்படுகிறது:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "கணினிக்கு மறுதுவக்கம் (பாதுகாப்பு) தேவைப்படுகிறது:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "அமர்வுக்கு மறுதுவக்கம் (பாதுகாப்பு) தேவைப்படுகிறது:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "பயன்பாடிற்கு மறுதுவக்கம் தேவைப்படுகிறது:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "தொகுப்பு விளக்கம்"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "செய்தி:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "கோப்புகள் இல்லை"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "தொகுப்பு கோப்புகள்"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "சதவீதம்"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "நிலை"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "முடிவுகள்:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "உட்புற பிழை"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:426
-#: ../contrib/command-not-found/pk-command-not-found.c:593
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr " பரிமாற்றம் செயல்படவில்லை"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "இந்த முறை மேம்படுத்தல்கள் கிடைக்கப் பெறவில்லை."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "கணினியை மீண்டும் துவக்கி மேம்படுத்துதலை முடிக்கவும்."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "வெளியேறிவிட்டு மற்றும் மேம்படுத்துதலை முடிக்க உள்நுழையவும்."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
-msgid ""
-"Please restart the computer to complete the update as important security "
-"updates have been installed."
+#: ../client/pk-console.c:814
+msgid "Please restart the computer to complete the update as important security updates have been installed."
 msgstr "முக்கியமான மேம்படுத்தல்களை நிறுவ கணினியை மீண்டும் துவக்கி மேம்படுத்துதலை முடிக்கவும்."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
-msgid ""
-"Please logout and login to complete the update as important security updates "
-"have been installed."
-msgstr ""
-"முக்கியமான பாதுகாப்பு மேம்படுத்தல்களை நிறுவ வெளியேறிவிட்டு மற்றும் மேம்படுத்துதலை "
-"முடிக்க உள்நுழையவும்."
+#: ../client/pk-console.c:817
+msgid "Please logout and login to complete the update as important security updates have been installed."
+msgstr "முக்கியமான பாதுகாப்பு மேம்படுத்தல்களை நிறுவ வெளியேறிவிட்டு மற்றும் மேம்படுத்துதலை முடிக்க உள்நுழையவும்."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "இந்த கருவி இருக்கும் தொகுப்பை தேட முடியவில்லை: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "இந்த கருவி நிறுவப்பட்ட தொகுப்பை தேட முடியவில்லை: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896
+#: ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "இந்த கருவி தொகுப்பை தேட முடியவில்லை: %s"
@@ -328,445 +340,447 @@ msgstr "இந்த கருவி தொகுப்பை தேட முà®
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952
+#: ../client/pk-console.c:980
+#: ../client/pk-console.c:1008
+#: ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "இந்த கருவி அனைத்து தொகுப்புகளையும் தேட முடியவில்லை: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "மத்திய பரிமாற்றத்தின் போது டோமோன் நொறுக்கப்பட்டது!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit பணியக முகப்பு"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "துணைக்கட்டளைகள்:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "இந்த செயல் கடைசியாக முடிவடையும் வரை நேரத்தை பெற்றிருப்பதில் தோல்வி"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:989 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:281
-#: ../contrib/command-not-found/pk-command-not-found.c:646
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:512
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "கூடுதல் பிழைதிருத்த தகவலைக் காட்டு"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:992 ../client/pk-monitor.c:283
+#: ../client/pk-console.c:1244
+#: ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "நிகழ்ச்சி பதிப்பு மற்றும் வெளியேறுவதைக் காட்டு"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:995
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "வடோப்பினை"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:998
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "செயல் முடிவடை வரை காத்திருக்காமல் வெளியேறு"
 
 #. command line argument, do we ask questions
-#: ../client/pk-console.c:1001
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
 msgid "Install the packages without asking for confirmation"
 msgstr "உறுதிபடுத்துவதை கேட்காமலே தொகுப்புகளை நிறுவு"
 
 #. TRANSLATORS: command line argument, this command is not a priority
-#: ../client/pk-console.c:1004
+#: ../client/pk-console.c:1256
 msgid "Run the command using idle network bandwidth and also using less power"
 msgstr "தனி பிணைய அலைவரிசை மற்றும் குறைந்த பவரைப் பயன்படுத்தி கட்டளையை இயக்கவும்"
 
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "உயிராக்க விட்ஜெட்டை பயன்படுத்துவதற்கு பதில் கணினி வாசிக்கும் வெளிப்பாடாக திரைக்கு அச்சிடு."
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1030
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit தொடர்பு கொள்ள முடியவில்லை்வி."
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1086
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "வடிப்பி குறிப்பிடுவது தவறானது"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1105
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "ஒரு தேடும் வகை தேவைப்படுகிறது, எ.கா. பெயர்"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1112 ../client/pk-console.c:1124
-#: ../client/pk-console.c:1136 ../client/pk-console.c:1148
+#: ../client/pk-console.c:1365
+#: ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389
+#: ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "ஒரு தேடும் சொல் தேவைப்படுகிறது"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1158
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "தவறான தேடும் வகை"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1164
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "தொகுப்பு பெயர் நிறுவ தேவைப்படுகிறது"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "நிறுவ ஒரு கோப்புபெயர் தேவைப்படுகிறது"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1185
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "ஒரு வகை, விசை_ஐடி மற்றும் தொகுப்பு_ஐடி தேவைப்படுகிறது"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1196
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "நீக்குவதற்கு ஒரு தொகுப்பு பெயர் தேவைப்படுகிறது"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1205
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "ஒரு இலக்கு அடைவு மற்றும் தொகுப்பு பெயர்கள் பதிவிறக்க தேவைப்படுகிறது"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1212
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "அடைவு காணப்படவில்லை"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1221
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "ஒரு உரிமம் எடுத்துகாட்டுபவர் (eula-id) தேவைப்படுகிறது"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1232
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "பரிமாற்ற கண்டுபிடிப்பாளர் (tid) தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1253
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "தொகுப்பு பெயர் மறுதீர்வுக்கு தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1264 ../client/pk-console.c:1275
+#: ../client/pk-console.c:1517
+#: ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "நம்பகமான ஒரு பெயர் தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1286
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "ஒரு ரெபோ பெநர், அளவுரு மற்றும் மதிப்பு தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1303
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "செயலுக்கு, எ.கா. 'மேம்படுத்தப்பட்ட கணினி' தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1310
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "ஒரு சரியான திருப்பம் தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1320 ../client/pk-console.c:1335
-#: ../client/pk-console.c:1344 ../client/pk-console.c:1364
-#: ../client/pk-console.c:1373 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573
+#: ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597
+#: ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626
+#: ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "ஒரு தொகுப்பு பெயர் தேவைப்படுகிறது"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1353
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "ஒரு தொகுப்பால் வழங்கப்படும் சரம் தேவைப்படுகிறது"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1433
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr " '%s' விருப்பம் துணைபுரியவில்லை"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1443
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "கட்டளை தோல்வியுற்றது"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "நீக்கப்பட்ட சார்புகளுடைய கோப்பு பெயயை அமை"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "வெளியேறும் கோப்பு அல்லது அடைவு (தற்போது பயன்படுத்தப்படுகிற அடைவு தவிர்க்கப்பட்டால்)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "தொகுப்பு சேவை தொகுப்பில் போடப்பட வேண்டும்"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "சேவை தொகுப்பிலுள்ள அனைத்து மேம்படுத்துதலையும் போடவும்"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr " --package அல்லது --updates விருப்பம் தேர்ந்தெடுக்கப்பட்டது."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "இரண்டு விருப்பங்களும் தேர்ந்தெடுக்கப்பட்டது."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "ஒரு வெளிப்பாட அடைவு அல்லது கோப்பு பெயர் தேவைப்படுகிறது"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "துவக்கத்தில் டீமான் தோல்வியுற்றது"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "தொகுப்பு மேலாளர் இந்த வகையான செயலை செய்ய முடியாது."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
-msgid ""
-"Service packs cannot be created as PackageKit was not built with libarchive "
-"support."
+#: ../client/pk-generate-pack.c:348
+msgid "Service packs cannot be created as PackageKit was not built with libarchive support."
 msgstr "சேவை பொதிகள் libarchive சேவையுடன் PackageKitஆக உருவாக்க முடியாது"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "ஒரு கோப்பினை குறிப்பிட்டால், இறுதியில் சேவை தொகுப்பு பெயர் வேண்டும்"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "ஒரே பெயருடைய தொகுப்பு ஏற்கனவே வெளியேற்றப்பட்டது, அதை மீண்டும் மேலெழுத விரும்புகிறீர்களா?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "இந்த தொகுப்பு மேலெழுதப்படவில்லை."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "அடைவினை உருவாக்குவதில் தோல்வி:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "தொகுப்பு பட்டியலை திறப்பதில் தோல்வி."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "தொகுப்பு பெயரை தேடுகிறது."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "தொகுப்பு '%s'ஐ காணமுடியவில்லை: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "சேவை தொகுப்பை உருவாக்குகிறது..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "சேவை தொகுப்பு '%s'ஐ உருவாக்கியது"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' உருவாக்குவதில் தோல்வி: %s"
 
-#: ../client/pk-monitor.c:211
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "டீமான் நிலையை பெற முடியவில்லை"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit திரை"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "தொகுப்புகளின் தகவலை பெறுகிறது..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%sஐ இயக்கு"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "நிறுவப்பட்ட பதிப்பு"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "பதிப்பு %sஐ இப்போது இயக்கு"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "இப்போது இயக்கு"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "%s பதிப்பினை புதுப்பி"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "இப்போது  %sஐ நிறுவவும்"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "பதிப்பு"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "உங்கள் கணினியில் தொகுப்புகள் காணப்படவில்லை"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "நிறுவுகிறது..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "மென்பொருள் மூலங்கள் பற்றிய விவரங்களை பதிவிறக்குகிறது."
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:365
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "கோப்பு பட்டியல்களை பதிவிறக்குகிறது (முடிக்க இதற்கு சில நேரம் எடுக்கலாம்)"
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:369
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "தொகுப்பு மேலாளர் பூட்டுக்கு காத்திருக்கிறது."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:373
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "தொகுப்புகளின் பட்டியலை ஏற்றுகிறது"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:417
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "கோப்பிற்காக தேடுவதில் தோல்வி"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:556
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "கடண்டுபிடிப்பத்தில் தோல்வி:"
 
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:584
-#| msgid "Could not install packages: %s"
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "தொகுப்புகளை நிறுவ முடியவில்லை"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:662
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit கட்டளை காணப்படவில்லை"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:690
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "கட்டளைக் காணப்படவில்லை."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "ஒரே மாதிரியான கட்டளைகளாவன:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:706
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "ஒரே மாதிரியான கட்டளையை இயக்கு:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:718
-#: ../contrib/command-not-found/pk-command-not-found.c:727
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "ஒரே மாதிரியான கட்டளைகள்:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:734
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "இயக்குவதற்கு ஒரு கட்டளையை தேர்ந்தெடு"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:750
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "இந்த கோப்பில் தொகுப்பு வழங்குவது:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:755
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "'%s' கட்டளை வழங்குவதற்கு '%s' தொகுப்பை நிறுவு?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:775
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "இந்த கோப்பில் தொகுப்புகள் வழங்குவ:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:785
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "சரியான தொகுப்புகள்:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:794
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "நிறுவுவதற்கு ஒரு கோப்பினை தேர்ந்தெடு"
 
@@ -782,183 +796,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "தொகுப்பு %sஐ காண முடியவில்லை அல்லது ஏற்கனவே நிறுவப்பட்டது: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:515
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "எந்த தொகுப்புகளையும் நிறுவவில்லை, என்ன நிறுவ வேண்டும் என கணக்கிடுகிறது"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "கோர் தொகுப்புகளின் சார்புகளை நிறுவவில்லை"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "விவரங்கள் அல்லது முன்னேற்றத்தை காட்ட வேண்டாம்"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:539
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Debuginfo நிறுவி"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:554
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "பிழை: நிறுவ தொகுப்பு பெயர்களை குறிப்பிடவும்"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:590
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "மூலங்களின் பட்டியல் பெறப்படுகிறது"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:600
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:675
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:759
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:870
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:914
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "FAILED."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:615
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:655
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:774
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:818
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:885
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:929
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "சரி."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:618
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i செயல்படுத்தப்பட்டது மற்றும் %i செயல்நீக்கப்பட்ட மூலங்கள் காணப்பட்டது."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:625
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "பிழைத்திருத்த மூலங்களை தேடுகிறது"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:658
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i செயல்நீக்கப்பட்ட debuginfo repoகளை கண்டது."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:665
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "பிழைத்திருத்த மூலங்களை செயல்படுத்துகிறது"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:693
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "செயல்நீக்கப்பட்ட %i பிழைத்திருத்த மூலங்கள்."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:700
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "பிழைத்திருத்த தொகுப்புகளை தேடுகிறது."
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:712
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "தொகுப்பு %sஐ காண முடியவில்லை: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:735
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "தொகுப்பு %sஐ காண முடியவில்லை: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "நிறுவ தொகுப்புகள் எதுவும் காணப்படவில்லை."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:777
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i தொகுப்புகள் காணப்பட்டது:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:793
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "இந்த தொகுப்புகளை சார்ந்துள்ள தொகுப்புகளை தேடுகிறது"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:806
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "சார்பு தொகுப்பை காண முடியவில்லை: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:822
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i கூடுதல் தொகுப்புகள் காணப்பட்டது."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:826
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "கூடுதல் தொகுப்புகள் எதுவும் தேவைப்படவில்லை"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:835
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "நிறுவ %i தொகுப்புகள் காணப்பட்டது:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "கணக்கீடு முறைமையில் தொகுப்புகள் நிறுவப்படவில்லை"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:860
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "நிறுவப்பட்ட தொகுப்புகள்"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:873
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "தொகுப்புகளை நிறுவ முடியவில்லை: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:905
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "முன்பு செயல்படுத்தப்பட்ட மூலங்களை செயல்நீக்குகிறது"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:917
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "பிழைத்திருத்த மூலங்களை செயல்நீக்க முடியவில்லை: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:932
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "செயல்நீக்கப்பட்ட %i பிழைத்திருத்த மூலங்கள்."
@@ -1004,6 +1018,10 @@ msgstr "சாதன பாதை காணப்படவில்லை"
 msgid "Incorrect device path specified"
 msgstr "தவறான சாதற பாதை குறிப்பிடப்பட்டது"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "கூடுதல் பிழைதிருத்த தகவலைக் காட்டு"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1067,599 +1085,598 @@ msgid "Please enter a number from 1 to %i: "
 msgstr "1 லிருந்து %i வரை எண்னை உள்ளீடவும் : "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:181
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "ஒன்றுக்கு மேற்பட்ட தொகுப்புகள் பொருந்துகிறது:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:190
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "சரியான தொகுப்பினை தேர்ந்தெடுக்கவும்: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "தெரியாத நிலை"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "துவக்குகிறது"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "வரிசைக்கு காத்திருக்கிறது"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "இயங்குகிறது"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "வினாயிடுகிறது"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "தகவலை பெறுகிறது"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "தொகுப்புகளை நீக்குகிறது"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "தொகுப்புகளை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "மென்பொருள் பட்டியலை புதுப்பிக்கிறது"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "மேம்படுத்தல்களை நிறுவுகிறது"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "தொகுப்புகளை துடைக்கிறது"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "தொகுப்புகளை நீக்குகிறது"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "சார்புகளை தீர்க்கிறது"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "கையொப்பத்தை சரிபார்க்கிறது"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "பின்னால்"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "மாற்றங்களை சோதிக்கிறது"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "மாற்றங்களை சமர்ப்பிக்கிறது"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "தரவுக்கு விண்ணப்பிக்கிறது"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "முடிந்தது"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "ரத்து செய்கிறது"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "தொகுபதிவக தகவலை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "தொகுப்புகளின் பட்டியலை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "கோப்பு பட்டியல்களை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "தொகுப்புகளின் மாற்றங்களை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "குழுக்களை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "மேம்படுத்தல் தகவலை பதிவிறக்குகிறது"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "கோப்புகளை மறுபேக் செய்கிறது"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "கேஷை ஏற்றுகிறது"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "பயன்பாடுகளை ஸ்கேன் செய்கிறது"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "தொகுப்புகளின் பட்டியலை உருவாக்குகிறது"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "தொகுப்பு மேலாளர் பூட்டுக்கு காத்திருக்கிறது"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "அங்கீகாரத்திற்கு காத்திருக்கிறது"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "இயங்கும் பயன்பாடுகளை மேம்படுத்துகிறது"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "பயனிலுள்ள பயன்பாடுகளை சரிபார்க்கிறது"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "பயனிலுள்ள நூலகங்களை சரிபார்க்கிறது"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:386
-#| msgid "No files"
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "கோப்புகளை நகலெடுக்கிறது"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "சாதாரணமானது"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "இயல்பான"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "முக்கியமானது"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "பாதுகாப்பு"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "பிழைத்திருத்தம்"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "மேம்படுத்தல்"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:428
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "தடுக்கப்பட்டது"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:433
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "நிறுவப்பட்டது"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:438
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "இருப்பவை"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "பதிவிறக்குகிறது"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "மேம்படுத்துகிறது"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "நிறுவுகிறது"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "நீக்குகிறது"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "துடைக்கிறது"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "நீக்குகிறது"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:480
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "மீண்டும் நிநிறுவுகிற.."
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "பதிவிறக்கப்பட்டது"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "நீக்கப்பட்டது"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "துடைக்கப்பட்டது"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "நீக்கப்பட்டது"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:522
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "மறு நிறுவப்பட்டது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "தெரியாத பங்கு வகை"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "சார்புகளை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "மேம்படுத்தல் விவரங்களை பெறப்படுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "விவரங்களை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "தேவைகளை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "மேம்படுத்தல்களை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "விவரங்களின் படி தேடுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "கோப்பால் தேடுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "குழுக்களை தேடுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "பெயரால் தேடுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "கோப்புகளை நிறுவுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "கேஷை புதுப்பிக்கிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "தொகுப்புகளை மேம்படுத்துகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "கணினியை மேம்படுத்துகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "ரத்து செய்கிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "தொகுபதிவகங்களை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "தொகுபதிவகத்தை செயல்படுத்துகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "தரவை அமைக்கிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "தீர்க்கிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "கோப்பு பட்டியலை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "கொடுக்கப்பட்டவற்றை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "கையொப்பத்தை நிறுவுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "தொகுப்புகளை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULAவை ஏற்கிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "மேம்படுத்தல்களை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "வகைகளை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "பரிமாற்றங்களை பெறுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "நிறுவலை கணக்கிடுகிறது"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "கணக்கிடுதலை நீக்கு"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:676
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "மேம்படுத்தல் கணக்கிடுகிறது"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:66
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "கையொப்பமிடாத மென்பொருளை நிறுவ அனுமதிக்கவா?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:71
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "கையொப்பமிடப்படாத மென்பொருள் நிறுவப்படவில்லை."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:104
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "மென்பொருள் மூல கையெழுத்து தேவைப்படுகிறது"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:110
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "மென்பொருள் மூல பெயர்"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:113
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "விசை URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:116
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "விசை பயனர்"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:119
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "விசை ஐடி"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:122
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "விசை விரல் ரேகை"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:125
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "விசை நேர முத்திரை"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:131
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "நீங்கள் இந்த கையெமுத்து ஏற்றுக் கொள்கிறீர்களா ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:136
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "கையேழுத்து ஏற்றுக் கொள்ளப்படவில்லை."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:171
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "இறுதியான பயனரின் உரிம ஒப்பந்தம் தேவைப்படுகிறது"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:180
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "ஒப்பந்தம்"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:186
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "நீங்கள் இந்த ஒப்பந்தத்தை ஏற்றுக் கொள்கிறீர்களா?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:191
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "இந்த ஒப்பந்தம் ஏற்றுக் கொள்ளப்படவில்லை."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:221
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "ஊடக மாற்றம் தேவைப்படுகிறது"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:224
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "ஊடக வகை"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:227
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "ஊடக லேபிள்"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:230
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "உரை"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:234
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "சரியான ஊடகத்தை நுழைக்கவும்: "
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:239
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "சரியான ஊடகம் நுழைக்கப்படவில்லை."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:254
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "பின்வரும் தொகுப்புகளை நீக்கப்பட வேண்டியவை:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:259
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "பின்வரும் தொகுப்புகளை நிறுவப்பட வேண்டியவை:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:264
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "பின்வரும் தொகுப்புகள் மேம்படுத்த வேண்டியவை:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:269
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "பின்வரும் தொகுப்புகளை மீண்டும் நிறுவப்பட வேண்டியவை:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:274
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "பின்வரும் தொகுப்புகளை தரமிறக்க வேண்டியவை:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:333
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "மாற்றங்களுடன் தொடர வேண்டுமா?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:338
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "பரிமாற்றம் செயல்படவில்லை."
 
@@ -1686,9 +1703,7 @@ msgid "Authentication is required to change software source parameters"
 msgstr "மென்பொருள் மூல அளவுருகளை மாற்றுவதற்கு அங்கீகாரம் தேவைப்படுகிறது"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:11
-msgid ""
-"Authentication is required to consider a key used for signing packages as "
-"trusted"
+msgid "Authentication is required to consider a key used for signing packages as trusted"
 msgstr "நம்ப்பபட்ட தொகுப்புகளை கையெழுத்திட ஒரு விசையை பயன்படுத்த அங்கீகாரம் தேவைப்படுகிறது"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:12
@@ -1716,9 +1731,7 @@ msgid "Authentication is required to rollback a transaction"
 msgstr "ஒரு பரிமாற்றத்தை திரும்ப பெறுவதற்கு அங்கீகாரம் தேவைப்படுகிறது"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:18
-msgid ""
-"Authentication is required to set the network proxy used for downloading "
-"packages"
+msgid "Authentication is required to set the network proxy used for downloading packages"
 msgstr "தொகுப்புகளை பதிவிறக்க பயன்படும் பிணைய பிராக்ஸியை அமைக்க அங்கீகாரம் தேவைப்படுகிறது"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:19
@@ -1850,53 +1863,51 @@ msgstr "சரியான பயனர் இயங்கக்கூடியà
 
 #. TRANSLATORS: or we are installed in a prefix
 #: ../src/pk-main.c:93
-msgid ""
-"The org.freedesktop.PackageKit.conf file is not installed in the system "
-"directory:"
+msgid "The org.freedesktop.PackageKit.conf file is not installed in the system directory:"
 msgstr "கணினி அடைவில் org.freedesktop.PackageKit.conf கோப்பு நிறுவப்படவில்லை:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "பயன்படுத்த வேண்டிய தொகுப்பிடுதல் பின்தளம், எ.கா டம்மி"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "டீமான் செய்யப்பட்ட மற்றும் முனையத்திலிருந்து நீக்கக்கூடியது"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "வெற்று நேரங்காட்டியை செயல்நீக்கு"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "பதிப்பு மற்றும் வெளியேறுவதைக் காட்டு"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "ஒரு சிறிய தாமதத்திற்கு பின் வெளியேறு"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "வெளியேறிய பின் எந்திரம் ஏற்றப்பட்டது"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit சேவை"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "கணினி பஸ்ஸுடன் இணைக்க முடியவில்லை"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "துவக்க முயற்சிப்பதில் பிழை:"
 
@@ -1905,7 +1916,8 @@ msgid "To install debugging packages, extra sources need to be enabled"
 msgstr "பிழைத்திருத்த தொகுப்புகளை நிறுவ, கூடுதல் மூலங்களை செயல்படுத்த வேண்டும்"
 
 #. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
+#: ../src/pk-polkit-action-lookup.c:171
+#: ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
 msgstr "இந்த மென்பொருள் ஒரு நம்பப்பட்ட மூலத்திலிருந்து இல்லை."
 
@@ -1925,18 +1937,45 @@ msgstr "இதை பாதுகாக்க நீங்கள் ஏதாவ
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "இதை பாதுகாக்க நீங்கள் ஏதாவது செய்யும் வரை இந்த தொகுப்புகளை நிறுவ முடியாது."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "முறையற்ற மென்பொருள் உங்கள் கணினியை சேதப்படுத்தலாம் அல்லது மற்ற கெடுதலைச் செய்யலாம்."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "நிறைய தொகுப்புகள்"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "நம்பக்கூடிய மட்டும்"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "அனைத்து கோப்புகளுக்கான பிழைதிருத்த தகவலைக் காட்டு"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "இந்த குறிப்பட்ட தொகுதிகளை பிழைதிருத்து"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "இந்த குறிப்பிட்ட செயல்பாடுகளின் பிழைதிருத்து"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "ஒரு கோப்பிக்கு பிழைதிருத்த வி"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "பிழைதிருத்த விருபங்கள்"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "பிழைதிருத்த விருபங்களைக் காட்டு"
+
+#~ msgid "Malicious software can damage your computer or cause other harm."
+#~ msgstr ""
+#~ "முறையற்ற மென்பொருள் உங்கள் கணினியை சேதப்படுத்தலாம் அல்லது மற்ற கெடுதலைச் செய்யலாம்."
+
commit 1cbe1ea5b65c73d78a10a8645ae8dc100bf28af6
Author: anipeter <anipeter at fedoraproject.org>
Date:   Wed Dec 9 07:14:31 2009 +0000

    Sending translation for Malayalam

diff --git a/po/ml.po b/po/ml.po
index 3b0ec7f..06ed625 100644
--- a/po/ml.po
+++ b/po/ml.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.ml\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-25 02:41+0000\n"
-"PO-Revision-Date: 2009-09-25 13:34+0530\n"
+"POT-Creation-Date: 2009-12-08 08:21+0000\n"
+"PO-Revision-Date: 2009-12-09 12:13+0530\n"
 "Last-Translator: \n"
 "Language-Team:  <en at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -18,266 +18,289 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "ഇടപാടു്"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "സിസ്റ്റം സമയം"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "ഇടപാടു് പൂര്‍ത്തിയായി"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "True"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "False"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "റോള്‍"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "സമയം"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(സെക്കന്‍ഡുകള്‍)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "കമാന്‍ഡ് ലൈന്‍"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ഉപയോക്താവിനുള്ള ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "ഉപയോക്തൃനാമം"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "യഥാര്‍ത്ഥ പേരു്"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "ബാധിച്ച പാക്കേജുകള്‍:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "ബാധിച്ച പാക്കേജുകള്‍: ഒന്നുമില്ല"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "വിതരണം"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "തരം"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "സമ്മറി"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "വിഭാഗം"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "പേരന്റ്"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "പേരു്"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "ചിഹ്നം"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "പരിഷ്കരണങ്ങള്‍ സംബന്ധിച്ചുള്ള വിശദാംശങ്ങള്‍:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:105
-#: ../lib/packagekit-glib2/pk-task-text.c:172
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "പാക്കേജ്"
 msgstr[1] "പാക്കേജുകള്‍"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "പരിഷ്കരണങ്ങള്‍"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "വേണ്ടെന്നു് വച്ചവ"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:175
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "കച്ചവടക്കാരന്‍"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "വീണ്ടും ആരംഭിക്കുക"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "പരിഷ്കരിച്ച വാചകം"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "മാറ്റങ്ങള്‍"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "അവസ്ഥ"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "നല്‍കിയതു്"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "പരിഷ്കരിച്ചിരിക്കുന്നു"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "പ്രവര്‍ത്തന സജ്ജം"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "പ്രവര്‍ത്തന രഹിതം"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "സിസ്റ്റം വീണ്ടും ആരംഭിക്കുന്നതു് ആവശ്യമുള്ളതു്:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "സെഷന്‍ വീണ്ടും ആരംഭിക്കേണ്ടതുണ്ടു്:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "സിസ്റ്റം വീണ്ടും ആരംഭിക്കുന്നതു് (സുരക്ഷാ പരിഷ്കരണം) ആവശ്യമുള്ളതു്:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "സെഷന്‍ വീണ്ടും ആരംഭിക്കുന്നതു് (സുരക്ഷാ പരിഷ്കരണം) ആവശ്യമുള്ളതു്:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "പ്രയോഗം വീണ്ടും ആരംഭിക്കേണ്ടതു് ആവശ്യമുള്ളതു്:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "പാക്കേജ് വിശദാംശങ്ങള്‍"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "സന്ദേശം:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "ഫയലുകള്‍ ലഭ്യമല്ല"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "പാക്കേജിലുള്ള ഫയലുകള്‍"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "ശതമാനം"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "അവസ്ഥ"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "ഫലങ്ങള്‍:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "ഗുരുതര പിശക്"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:422
-#: ../contrib/command-not-found/pk-command-not-found.c:563
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "ഇടപാടു് പരാജയപ്പെട്ടു"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "ഒരു പരിഷ്കരണങ്ങളും ഇപ്പോള്‍ ലഭ്യമല്ല."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "പരിഷ്കരണങ്ങള്‍ പൂര്‍ത്തിയാക്കുന്നതിനായി ദയവായി നിങ്ങളുടെ കമ്പ്യൂട്ടര്‍ വീണ്ടും ആരംഭിക്കുക."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "പരിഷ്കരണങ്ങള്‍ പൂര്‍ത്തിയാക്കുന്നതിനായി ദയവായി ലോഗൌട്ട് ചെയ്ത് ലോഗിന്‍ ചെയ്യുക."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -286,7 +309,7 @@ msgstr ""
 "വീണ്ടും ആരംഭിക്കുക."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -295,19 +318,19 @@ msgstr ""
 "ചെയ്യുക."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "ലഭ്യമായ പാക്കേജ് കണ്ടുപിടിക്കുവാന്‍ ഈ പ്രയോഗത്തിനു് സാധ്യമായില്ല: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്ത പാക്കേജുകള്‍ കണ്ടുപിടിക്കുവാന്‍ ഈ പ്രയോഗത്തിനു് സാധ്യമായില്ല: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "പാക്കേജ് കണ്ടുപിടിക്കുവാന്‍ ഈ പ്രയോഗത്തിനു് സാധ്യമായില്ല: %s"
@@ -316,430 +339,441 @@ msgstr "പാക്കേജ് കണ്ടുപിടിക്കുവാà´
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "എല്ലാ പാക്കേജുകളും കണ്ടുപിടിക്കുവാന്‍ ഈ പ്രയോഗത്തിനു് സാധ്യമായില്ല: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "ഡെമണ്‍ തകര്‍ന്നിരിക്കുന്നു!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "പാക്കേജ്കിറ്റ് കണ്‍സോള്‍ ഇന്റര്‍ഫെയിസ്"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "സബ്കമാന്‍ഡുകള്‍:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "ഈ പ്രവര്‍ത്തി അവസാനമായി പൂര്‍ത്തിയാക്കിയ സമയം ലഭ്യമായില്ല"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:987 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:276
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:511
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "കൂടുതല്‍ ഡീബഗ്ഗിങ് വിവരം കാണിക്കുക"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:990 ../client/pk-monitor.c:278
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "പ്രോഗ്രാമിന്റെ പതിപ്പ് കാണിച്ചശേഷം പുറത്ത് കടക്കുക"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:993
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "ഫില്‍‌റ്റര്‍ ക്രമികരിക്കുക, e.g. ഇന്‍സ്റ്റോള്‍ ചെയ്തിരിക്കുന്നു"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:996
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "പൂര്‍ത്തിയാകുന്നതിനുള്ള പ്രവര്‍ത്തികള്‍ക്കായി കാത്തിരിക്കാതെ പുറത്ത് കടക്കുക"
 
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "രണ്ടാമതുറപ്പിക്കാതെ പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുക"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "സ്ഥിരമായ നെറ്റ്‌വര്‍ക്ക് ബാന്‍ഡ്‌വിഡ്തും കുറഞ്ഞ പവറും ഉപയോഗിച്ചു് കമാന്‍ഡ് പ്രവര്‍ത്തിപ്പുക്കുക"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "ആനിമേറ്റഡ് വിഡ്ജറ്റുകള്‍ ഉപയോഗിക്കുന്നതിനേക്കാള്‍ മഷീന്‍ മനസ്സിലാക്കുന്ന ഔട്ട്പുട്ട് സ്ക്രീനിലേക്ക് പ്രിന്റ് ചെയ്യുക"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1022
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit-മായി ബന്ധപ്പെടുവാന്‍ സാധിച്ചില്ല"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1074
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "നല്‍കിയ ഫില്‍‌റ്റര്‍ തെറ്റാണു്"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1093
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "തെരയുന്നതിനുള്ള തരം ആവശ്യമുണ്ടു്, ഉദാ. പേരു്"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1100 ../client/pk-console.c:1112
-#: ../client/pk-console.c:1124 ../client/pk-console.c:1136
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "തെരയുന്നതിനുള്ള വാചകം ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1146
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "തെറ്റായ തരത്തിലുള്ള തെരച്ചില്‍"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1152
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്യുവാനുള്ള പാക്കേജിന്റെ പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1161
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്യുവാനുള്ള ഫയലിന്റെ പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "ഏത് തരം, key_id, package_id എന്നിവ ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1184
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "നീക്കം ചെയ്യുവാനുള്ള പാക്കേജിന്റെ പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1193
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "ഏതു് ഡയറക്ടറി എന്നും ഡൌണ്‍ലോട് ചെയ്യുവാനുള്ള പാക്കേജുകളും ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1200
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "ഡയറക്ടറി ലഭ്യമല്ല"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1209
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "ലൈസന്‍സ് ഐഡന്റിഫയര്‍ (eula-id) ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1220
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "ഒരു ട്രാന്‍സാക്ഷന്‍ ഐഡന്റിഫയര്‍ (tid) ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1241
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "റിസോള്‍വ് ചെയ്യുവാനുള്ള പാക്കേജിന്റെ പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1252 ../client/pk-console.c:1263
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "സംഭരണിയ്ക്കുള്ള പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1274
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "ഒരു റിപ്പോയുടെ പേരും പരാമീറ്റരും മൂല്ല്യവും ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1291
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "ഒരു പ്രവര്‍ത്തി ആവശ്യമുണ്ടു്, ഉദാ. 'update-system'"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1298
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "ശരിയായ റോള്‍ ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1308 ../client/pk-console.c:1323
-#: ../client/pk-console.c:1332 ../client/pk-console.c:1352
-#: ../client/pk-console.c:1361 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "പാക്കേജിന്റ് പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1341
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "പാക്കേജ് ലഭ്യമാക്കുന്ന സ്ട്രിങ് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1421
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "'%s' എന്ന ഐച്ഛികത്തിനുള്ള പിന്തുണ ലഭ്യമല്ല"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1431
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "നിര്‍ദ്ദേശം പരാജയപ്പെട്ടു"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "ചേര്‍ക്കേണ്ടാത്ത ഡിപന്‍ഡസികളുടെ ഫയല്‍ നാമം സജ്ജമാക്കുക"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr ""
 "ഔട്ട്പുട്ട് ഫയല്‍ അല്ലെങ്കില്‍ ഡയറക്ടറി (നല്‍കിയിട്ടില്ല എങ്കില്‍ നിലവിലുള്ള ഡയറക്ടറി ആണു് "
 "ഉപയോഗിക്കുന്നതു്)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "സര്‍വീസ് പാക്കിലേക്ക് ചേര്‍ക്കേണ്ട പാക്കേജ്"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "സര്‍വീസ് പാക്കില്‍ ലഭ്യമായ എല്ലാ പരിഷ്കരണങ്ങളും നല്‍കുക"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package അല്ലെങ്കില്‍ --updates എച്ഛികം തെരഞ്ഞെടുത്തിട്ടില്ല."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "രണ്ടു് ഐച്ഛികങ്ങളും തെരഞ്ഞെടുത്തിട്ടില്ല."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "ഒരു ഔട്ട്പുട്ട് ഡയറക്ടറി അല്ലെങ്കില്‍ ഫയലിന്റെ പേരു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "ആരംഭിക്കുന്നതില്‍ ഡെമണ്‍ പരാജയപ്പെട്ടു"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "പാക്കേജ് നിരീക്ഷകനു് ഈ തരത്തിലുള്ള പ്രക്രിയ നടത്തുവാന്‍ സാധ്യമല്ല"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
 msgstr "libarchive പിന്തുണ ഇല്ലാതെ PackageKit ഉണ്ടാക്കിയതിനാല്‍, സര്‍വീസ് പാക്കുകള്‍ ലഭ്യമാകുന്നതല്ല."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "ഒരു ഫയല്‍ നല്‍കുന്നു എങ്കില്‍, സര്‍വീസ് പാക്ക് അവസാനിക്കേണ്ടതു്"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "ഇതേ പേരില്‍ ഒരു ഫയല്‍ നിലവിലുണ്ടു്, അതു് മാറ്റി എഴുതണമോ?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "ഫയല്‍ തിരുത്തിയെഴുതിയിട്ടില്ല."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "ഡയറക്ടറി ഉണ്ടാക്കുന്നതില്‍ പരാജയം:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "പാക്കേജുകളുടെ പട്ടിക തുറക്കുന്നതില്‍ പരാജയം."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "പാക്കേജിന്റെ പേര് കണ്ടുപിടിക്കുന്നു."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "'%s' എന്ന പാക്കേജ് കണ്ടുപിടിക്കുവാനായില്ല: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "സര്‍വീസ് പാക്ക് ഉണ്ടാക്കുന്നു..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "'%s' സര്‍വീസ് പാക്ക് ഉണ്ടാക്കിയിരിക്കുന്നു"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' ഉണ്ടാക്കുന്നതില്‍ പരാജയം: %s"
 
-#: ../client/pk-monitor.c:206
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "ഡെമണ്‍ അവസ്ഥ ലഭ്യമാക്കുന്നതില്‍ പരാജയം"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:294
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "പാക്കേജ്കിറ്റ് നിരീക്ഷകന്‍"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "പാക്കേജ് സംബന്ധിച്ചുള്ള വിവരം ലഭ്യമാകുന്നു..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s പ്രവര്‍ത്തിപ്പിക്കുക"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്തിരിക്കുന്ന പതിപ്പ്"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "%s എന്ന പതിപ്പ് ഉടന്‍ പ്രവര്‍ത്തിപ്പിക്കുക"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "ഉടന്‍ പ്രവര്‍ത്തിപ്പിക്കുക"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "%s എന്ന പതിപ്പിലേക്ക് പരിഷ്കരിക്കുക"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "%s ഉടന്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുക"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "പതിപ്പ്"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "നിങ്ങളുടെ സിസ്റ്റമില്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതിനുള്ള പാക്കേജുകള്‍ ലഭ്യമല്ല"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:357
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "സോഫ്റ്റ്‌വെയര്‍ സോഴ്സുകളെപ്പറ്റിയുള്ള വിവരങ്ങള്‍ ഡൌണ്‍ലോട് ചെയ്യുന്നു."
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "ഫയല്‍ലിസ്റ്റുകള്‍ ഡൌണ്‍ലോട് ചെയ്യുന്നു (ഇതല്‍പം സമയമെടുക്കുന്നു)."
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:365
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "പാക്കേജ് മാനേജര്‍ ലോക്കിനായി കാത്തിരിക്കുന്നു."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:369
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "പാക്കേജുകളുടെ പട്ടിക ലഭ്യമാക്കുന്നു."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:413
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "ഫയല്‍ കണ്ടുപിടിക്കുന്നതില്‍ പരാജയപ്പെട്ടു"
 
+#. TRANSLATORS: we failed to launch the executable, the error follows
+#: ../contrib/command-not-found/pk-command-not-found.c:566
+msgid "Failed to launch:"
+msgstr "ലഭ്യമാക്കുന്നതില്‍ പരാജയം:"
+
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:554
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതില്‍ പരാജയം"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "പാക്കേജ്കിറ്റ് കമാന്‍ഡ് ലഭ്യമായില്ല"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:660
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "കമാന്‍ഡ് ലഭ്യമായില്ല."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:667
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "ഇതു് പോലുള്ള കമാന്‍ഡ്:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:676
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "ഇതുപോലുള്ള കമാന്‍ഡ് പ്രവര്‍ത്തിക്കുക:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:688
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "ഇതു് പോലുള്ള കമാന്‍ഡുകള്‍:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:704
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "പ്രവര്‍ത്തിപ്പിക്കുന്നതിനുള്ള കമാന്‍ഡ് ദയവായി തെരഞ്ഞെടുക്കുക"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:720
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "ഈ ഫയല്‍ ലഭ്യമാക്കുന്ന പാക്കേജ്:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:725
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "'%s' പാക്കേജ് ഇന്‍സ്റ്റോള്‍ ചെയ്യുക, ഇതു് '%s' നിര്‍ദ്ദേശം നല്‍കുന്നു?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:743
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "ഈ ഫയല്‍ ലഭ്യമാക്കുന്ന പാക്കേജുകള്‍:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:753
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "ഉചിതമായ പാക്കേജുകള്‍:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:762
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "ദയവായി ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതിനായി ഒരു പാക്കേജ് തെരഞ്ഞെടുക്കുക"
 
@@ -755,183 +789,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "%s എന്ന പാക്കേജ് നിലവില്‍ ലഭ്യമല്ല അല്ലെങ്കില്‍ കമ്പ്യൂട്ടറില്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്തിരിക്കുന്നു: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:514
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യേണ്ട പകരം, ഇന്‍സ്റ്റോള്‍ ചെയ്യേണ്ടവ സിമുലേറ്റ് ചെയ്യുക"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:517
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "കോര്‍ പാക്കേജുകളുടെ ഡിപന്‍ഡന്‍സികള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യരുതു്"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:520
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "വിവരം അല്ലെങ്കില്‍ പുരോഗതി ലഭ്യമാക്കേണ്ട"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:535
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Debuginfo Installer"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "പിശക്: ഇന്‍സ്റ്റോള്‍ ചെയ്യുവാനുള്ള പാക്കേജുകള്‍ വ്യക്തമാക്കുക."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:579
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "റിപ്പോസിറ്ററികളുടെ വിവരം ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:664
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:748
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:792
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:859
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:903
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "FAILED."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:604
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:679
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:807
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:918
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ശരി."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:607
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i സജ്ജമാക്കിയവയും %i പ്രവര്‍ത്തന രഹിതവുമായ സോഴ്സുകള്‍ ലഭ്യമാണു്."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:614
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "ഡീബഗ്ഗിങ് സോഴ്സുകള്‍ ലഭ്യമാക്കുന്നു"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:647
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "പ്രവര്‍ത്തന രഹിതമായ %i debuginfo റിപ്പോകള്‍ ലഭ്യമാക്കിയിരിക്കുന്നു."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:654
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "ഡീബഗ്ഗിങ് സോഴ്സുകള്‍ സജ്ജമാക്കുന്നു"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:682
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i ഡീബഗ്ഗിങ് സോഴ്സുകള്‍ സജ്ജമാക്കിയിരിക്കുന്നു."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:689
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "എല്ലാ റിപ്പോകളിലുമുള്ള പാക്കേജുകള്‍ (ഡീബഗ്ഗിങ്) കണ്ടുപിടിക്കുന്നു."
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "%s എന്ന പാക്കേജ് കണ്ടുപിടിക്കുവാനായില്ല: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:724
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "debuginfo പാക്കേജ് %s കണ്ടുപിടിക്കുവാനായില്ല: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:752
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്യുവാന്‍ പാക്കേജുകള്‍ ലഭ്യമായില്ല."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:766
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i പാക്കേജുകള്‍ ലഭ്യമായി:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:782
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "ഈ പാക്കേജുകളെ ആശ്രയിക്കുന്ന പാക്കേജുകള്‍ ലഭ്യമാക്കുന്നു"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "ഡിപന്‍ഡന്റ് പാക്കേജുകള്‍ കണ്ടുപിടിക്കുവാനായില്ല: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:811
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "അധികമായ %i പാക്കേജുകള്‍ ലഭ്യമായിരിക്കുന്നു."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:815
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "അധികമായ പാക്കേജുകള്‍ ആവശ്യമില്ല."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "%i പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുവാനുണ്ടു്:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "സിമുലേറ്റ് മോഡില്‍ പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതല്ല"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:849
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുവാന്‍ സാധ്യമല്ല: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:894
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "മുമ്പ് സജ്ജമാക്കിയ സോഴ്സുകള്‍ പ്രവര്‍ത്തന രഹിതമാക്കുന്നു"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:906
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "ഡീബഗ്ഗിങ് സോഴ്സുകള്‍ പ്രവര്‍ത്തന രഹിതമാക്കുവാന്‍ സാധിച്ചില്ല: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:921
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i ഡീബഗ്ഗിങ് സോഴ്സുകള്‍ പ്രവര്‍ത്തന രഹിതമാക്കിയിരിക്കുന്നു."
@@ -977,6 +1011,10 @@ msgstr "ഡിവൈസ് പാഥ് ലഭ്യമല്ല"
 msgid "Incorrect device path specified"
 msgstr "തെറ്റായ ഡിവൈസ് പാഥ് നല്‍കിയിരിക്കുന്നു"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "കൂടുതല്‍ ഡീബഗ്ഗിങ് വിവരം കാണിക്കുക"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1034,604 +1072,604 @@ msgstr "പാക്കേജ്കിറ്റിനുള്ള പാക്à´
 msgid "PackageKit Service Pack"
 msgstr "പാക്കേജ്കിറ്റിനുള്ള സര്‍വീസ് പാക്ക്"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:55
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
 msgstr "ദയവായി 1 മുതല്‍ %i വരെയുള്ള ഒരു അക്കം നല്‍കുക: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:177
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "ഒന്നില്‍ കൂടുതല്‍ ചേരുന്ന പാക്കേജുകള്‍:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:186
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "ദയവായി ശരിയായ പാക്കേജ് തെരഞ്ഞെടുക്കുക: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:238
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "അപരിചിതമായ അവസ്ഥ"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "ആരംഭിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "ക്യൂവില്‍ കാത്തിരിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "പ്രവര്‍ത്തിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "ക്വറി ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "വിവരം ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "പാക്കേജുകള്‍ നീക്കം ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "പാക്കേജുകള്‍ ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "സോഫ്റ്റ്‌വെയര്‍ പട്ടി പുതുക്കുന്നുു"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "പരിഷ്കാരങ്ങള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "പാക്കേജുകള്‍ വെടിപ്പാക്കുന്നു"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "പാക്കേജുകള്‍ ഇല്ലാതാക്കുന്നു"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "ഡിപെന്‍ഡന്‍സികള്‍ റിസോള്‍വ് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "ഒപ്പുകള്‍ പരിശോധിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "റോളിങ് ബാക്ക്"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "മാറ്റങ്ങള്‍ പരീക്ഷിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "മാറ്റങ്ങള്‍ സമര്‍പ്പിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "ഡേറ്റാ ആവശ്യപ്പെടുന്നു"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "പൂര്‍ത്തിയാക്കി"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "റദ്ദാക്കുന്നു"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "റിപ്പോസിറ്ററി വിവരം ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "പാക്കേജുകളുടെ പട്ടിക ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "ഫയല്‍ പട്ടികകള്‍‌ ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "മാറ്റങ്ങളുടെ പട്ടിക ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "ഗ്രൂപ്പുകള്‍ ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "പരിഷ്കരണ വിവരം ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "ഫയലുകള്‍ വീണ്ടും പാക്കേജ് ചെയ്യുന്നു"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "കാഷ് ലഭ്യമാക്കുന്നു"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "പ്രയോഗങ്ങള്‍ പരിശോധിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "പാക്കേജ് പട്ടികകള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "പാക്കേജ് മാനേജര്‍ ലോക്കിനായി കാത്തിരിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "ആധികാരികതയ്ക്കായി കാത്തിരിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "പ്രവര്‍ത്തിക്കുന്ന പ്രയോഗങ്ങള്‍ പരിഷ്കരിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "ഉപയോഗിത്തിലുള്ള പ്രയോഗങ്ങള്‍ പരിശോധിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "ഉപയോഗത്തിലുള്ള ലൈബ്രറികള്‍ പരിശോധിക്കുന്നു"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "ഫയലുകള്‍ പകര്‍ത്തുന്നു"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:400
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "ഏറ്റവും പ്രധാനപ്പെട്ട"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "സാധാരണ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "പ്രധാനം"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "സുരക്ഷാ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "ബഗിനുള്ള പരിഹാരം"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "പുരോഗമിച്ചതു്"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "തടസ്സപ്പെട്ടതു്"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:429
-#: ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്തിരിക്കുന്ന"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:434
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "ലഭ്യം"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:452
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "ഡൌണ്‍ലോട് ചെയ്യുന്നു"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "പരിഷ്കരിക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "നീക്കം ചെയ്യുന്നു"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "വെടിപ്പാക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "വേണ്ടെന്നുവയ്ക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "വീണ്ടും ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:494
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "ഡൌണ്‍ലോട് ചെയ്തിരിക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "നീക്കം ചെയ്തിരിക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "വെടിപ്പാക്കിരിക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "വേണ്ടെന്നുവച്ചിരിക്കുന്നു"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "വീണ്ടും ഇന്‍സ്റ്റോള്‍ ചെയ്തിരിക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:536
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "അപരിചിതമായ റോള്‍ രീതി"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "ഡിപെന്‍ഡന്‍സികള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "പരിഷ്കരണങ്ങളുടെ വിശദാംശം ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "വിശദാംശങ്ങള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "ലഭ്യമാകുന്നതിനു് ആവശ്യമുള്ളതു്"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "പരിഷ്കാരങ്ങള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "വിശദാംശങ്ങള്‍ അനുസരിച്ചു് തെരയുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "ഫയലുകള്‍ അനുസരിച്ചു് തെരയുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "ഗ്രൂപ്പുകള്‍ അനുസരിച്ചു് തെരയുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "പേരനുസരിച്ചു് തെരയുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "ഫയലുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "കാഷ് പുതുക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "പാക്കേജുകള്‍ പരിഷ്കരിക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "സിസ്റ്റം പരിഷ്കരിക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "റദ്ദാക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "റിപ്പോസിറ്ററികള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "റിപ്പോസിറ്ററി പ്രവര്‍ത്തന സജ്ജമാക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "ഡേറ്റാ സജ്ജമാക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "പരിഹരിക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "ഫയലുകളുടെ പട്ടിക ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "ലഭ്യമാകുന്നവ നല്‍കുന്നതു്"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "ഒപ്പു് ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "പാക്കേജുകള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULA സ്വീകരിക്കുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "പരിഷ്കരണങ്ങള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "വിഭാഗങ്ങള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "ഇടപാടുകള്‍ ലഭ്യമാകുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "ഇന്‍സ്റ്റോള്‍ സിമുലേറ്റ് ചെയ്യുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "നീക്കം ചെയ്യുന്നതു് സിമുലേറ്റ് ചെയ്യുന്നു"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "പരിഷ്കാരങ്ങള്‍ സിമുലേറ്റ് ചെയ്യുന്നു"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:64
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "ഒപ്പില്ലാത്ത സോഫ്റ്റ്‌വെയര്‍ നിങ്ങള്‍ക്കു് ഇന്‍സ്റ്റോള്‍ ചെയ്യണമോ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:69
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "ഒപ്പിട്ടിട്ടില്ലാത്ത സോഫ്റ്റ്‌വെയര്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതല്ല."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:102
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "സോഫ്റ്റ്‌വെയര്‍ സോഴ്സ് ഒപ്പു് ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:108
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "സോഫ്റ്റ്‌വെയര്‍ സോഴ്സിന്റെ പേരു്"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:111
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "കീ യുആര്‍എല്‍"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:114
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "കീ ഉപയോക്താവു്"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:117
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "കീ ID"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:120
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "കീ വിരലടയാളം"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:123
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "കീ ടൈംസ്ടാമ്പ്"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:129
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "ഈ ഓപ്പ് നിങ്ങള്‍ അംഗീകരിക്കുന്നുവോ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:134
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "ഒപ്പ് സ്വീകരിക്കുന്നില്ല."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:169
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "ഉപയോക്താവിനുള്ള ലൈസന്‍സ് സമ്മതപ്പത്രം ആവശ്യമുണ്ടു്"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:178
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "സമ്മതപ്പത്രം"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:184
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "ഈ സമ്മതപ്പത്രം നിങ്ങള്‍ അംഗീകരിക്കുന്നുവോ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:189
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "സമ്മതപ്പത്രം സ്വീകരിക്കുന്നില്ല."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:219
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "മീഡിയാ മാറ്റേണ്ടതുണ്ടു്"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:222
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "മീഡിയാ തരം"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:225
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "മീഡിയാ ലേബല്‍"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:228
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "വാക്യം"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:232
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "ദയവായി ശരിയായ മീഡിയാ തെരഞ്ഞെടുക്കുക"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:237
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "ശരിയായ മീഡിയാ നല്‍കിയിട്ടില്ല."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:252
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "താഴെ പറയുന്ന പാക്കേജുകള്‍ നീക്കം ചെയ്യേണ്ടതുണ്ടു്."
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:257
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "താഴെ പറയുന്ന പാക്കേജുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യേണ്ടതാണു്:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:262
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "താഴെ പറയുന്ന പാക്കേജുകള്‍ പരിഷ്കരിക്കേണ്ടതുണ്ടു്:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:267
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "താഴെ പറയുന്ന പാക്കേജുകള്‍ വീണ്ടും ഇന്‍സ്റ്റോള്‍ ചെയ്യേണ്ടതുണ്ടു്:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:272
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "താഴെ പറയുന്ന പാക്കേജുകള്‍ ഡൌണ്‍ഗ്രേഡ് ചെയ്യേണ്ടതുണ്ടു്:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:331
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "മാറ്റങ്ങളുമായി മുമ്പോട്ട് പോകണമോ?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:336
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "ഇടപാടു് തുടര്‍ന്നില്ല."
 
@@ -1832,47 +1870,47 @@ msgid ""
 msgstr "സിസ്റ്റം ഡയറക്ടറിയില്‍ org.freedesktop.PackageKit.conf ഫയല്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്തിട്ടില്ല:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "ഉപയോഗിക്കുന്നതിനായി ബാക്കെന്‍ഡ് പാക്കേജ് ചെയ്യുന്നു, ഉദാ. dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "ഡെമണൈസ് ചെയ്ത് ടെര്‍മിനലില്‍ നിന്നും വേര്‍പെടുത്തുക"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "ഐഡില്‍ ടൈമര്‍ പ്രവര്‍ത്തന രഹിതമാക്കുക"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "പതിപ്പ് കാണിച്ചശേഷം പുറത്ത് കടക്കുക"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "ഒരു ചെറിയ താമസത്തിനു് ശേഷം പുറത്ത് കടക്കുക"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "എഞ്ചിന്‍ ലഭ്യമാക്കിയ ശേഷം പുറത്ത് കടക്കുക"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "പാക്കേജ്കിറ്റ് സര്‍വീസ്"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "സിസ്റ്റം ബസിലേക്ക് കണക്ട് ചെയ്യുവാന്‍ സാധ്യമായില്ല"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "ആരംഭിക്കുന്നതിനിടെ പിശക് സംഭവിച്ചിരിക്കുന്നു:"
 
@@ -1901,18 +1939,41 @@ msgstr "ഈ പാക്കേജ് സുരക്ഷിതമാണു് എ
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "ഈ പാക്കേജ് സുരക്ഷിതമാണു് എന്നുറപ്പു് വരുത്താതെ ഇതു് ഇന്‍സ്റ്റോള്‍ ചെയ്യരുതു്."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "അപകടകരമായ സോഫ്റ്റ്‌വെയര്‍ നിങ്ങളുടെ കമ്പ്യൂട്ടറിനെ നശിപ്പിക്കുന്നു."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "അനവധി പാക്കേജുകള്‍"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "ട്രസ്റ്റഡ് മാത്രം"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "എല്ലാ ഫയലുകള്‍ക്കുമുള്ള ഡീബഗ്ഗിങ് വിവരം കാണിക്കുക"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "ഈ ഘടകങ്ങള്‍ ഡീബഗ് ചെയ്യുക"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "ഈ ഫംഷനുകള്‍ ഡീബഗ് ചെയ്യുക"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "ഡീബഗ് ചെയ്യുന്ന ഡേറ്റാ ഒരു ഫയലിലേക്ക് സൂക്ഷിക്കുക"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "ഡീബഗ്ഗിങിനുള്ള ഉപാധികള്‍"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "ഡീബഗ്ഗിങിനുള്ള ഉപാധികള്‍ കാണിക്കുക"
+
commit 127d67cbdade00675bd0fed0af54de7522df31f8
Author: ypoyarko <ypoyarko at fedoraproject.org>
Date:   Wed Dec 9 06:14:29 2009 +0000

    Sending translation for Russian

diff --git a/po/ru.po b/po/ru.po
index 208cd52..8006bc4 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -1,3 +1,5 @@
+# translation of ru.po to Russian
+# translation of ru.po to
 # PACKAGEKIT RUSSIAN TRANSLATION.
 # Copyright (C) 2006, 2008, 2009 Free Software Foundation, Inc.
 #
@@ -5,279 +7,306 @@
 #
 # Ivan Ignatyev <ivan.ignatyev at auditory.ru>, 2008, 2009.
 # Alexey Kostyuk <unitoff at gmail.com>, 2009.
+# Yulia <ypoyarko at redhat.com>, 2009.
 msgid ""
 msgstr ""
-"Project-Id-Version: PackageKit\n"
+"Project-Id-Version: ru\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-22 19:30+0000\n"
-"PO-Revision-Date: 2009-09-23 02:01+0400\n"
-"Last-Translator: Alexey Kostyuk <unitoff at gmail.com>\n"
-"Language-Team: Russian <fedora-trans-ru at redhat.com>\n"
+"POT-Creation-Date: 2009-12-09 02:27+0000\n"
+"PO-Revision-Date: 2009-12-09 17:12+1100\n"
+"Last-Translator: Yulia <ypoyarko at redhat.com>\n"
+"Language-Team: Russian\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:142
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "Транзакция"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:144
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "Системное время"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:146
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "Успешно"
 
-#: ../client/pk-console.c:146
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "Истина"
 
-#: ../client/pk-console.c:146
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "Ложь"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:148 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "Роль"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:153
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "Продолжительность"
 
-#: ../client/pk-console.c:153
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(секунды)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:157 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "Командная строка"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:159
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "Идентификатор пользователя"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:166
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "Имя пользователя"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:170
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "Настоящее имя"
 
-#: ../client/pk-console.c:178
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "Затронутые пакеты:"
 
-#: ../client/pk-console.c:180
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "Затронутые пакеты: Нет"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:200
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "Дистрибутив"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:202
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "Тип"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:204 ../client/pk-console.c:225
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "Суммарно"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:214
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "Категория"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:216
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "Идентификатор"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:219
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "Родитель"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:222
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "Имя"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:228
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "Иконка"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:242
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "Подробная информация об обновлении:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:248 ../lib/packagekit-glib2/pk-task-text.c:105
-#: ../lib/packagekit-glib2/pk-task-text.c:172
-#: ../src/pk-polkit-action-lookup.c:361
-#, fuzzy
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "Пакет"
-msgstr[1] "Пакет"
+msgstr[1] "Пакета"
+msgstr[2] "Пакетов"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:251
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "Обновления"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:255
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "Устаревшие"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:259 ../lib/packagekit-glib2/pk-task-text.c:175
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "Поставщик"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:263
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Система отслеживания ошибок Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:267
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:271
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "Перезапуск"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:275
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "Подробности обновления"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:279
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "Изменения"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:283
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "Статус"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:288
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "Выпущено"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:293 ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "Обновлено"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:311
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "Включено"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:314
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "Выключено"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:336
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "Необходим перезапуск системы для:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:339
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "Необходим перезапуск сеанса:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:342
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "Запрос перезапуска системы (безопасность):"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:345
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "Запрос перезапуска сессии (безопасность):"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:348
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "Необходим перезапуск приложения для:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:365
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "Описание пакета"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:383
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "Сообщение:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:397
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "Нет файлов"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:402
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "Файлы пакета"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "Проценты"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "Статус"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "Результаты:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:474
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "Фатальная ошибка"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:483
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "Сбой операции"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "На данный момент нет обновлений."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:551
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
-msgstr "Пожалуйста, перезагрузите компьютер, чтобы завершить обновление."
+msgstr "Перезагрузите компьютер, чтобы завершить обновление."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:554
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
-msgstr ""
-"Пожалуйста, выйдите из системы и войдите вновь, чтобы завершить обновление."
+msgstr "Пожалуйста, выйдите из системы и войдите вновь, чтобы завершить обновление."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:557
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -286,7 +315,7 @@ msgstr ""
 "безопасности."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:560
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -295,19 +324,19 @@ msgstr ""
 "обновления безопасности."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:583
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "Этот инструмент не нашёл доступный пакет: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:611
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "Этот инструмент не нашёл установленный пакет: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:639 ../client/pk-console.c:667
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "Этот инструмент не нашёл пакет: %s"
@@ -316,224 +345,227 @@ msgstr "Этот инструмент не нашёл пакет: %s"
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:695 ../client/pk-console.c:723
-#: ../client/pk-console.c:751 ../client/pk-console.c:779
-#: ../client/pk-console.c:807
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "Этот инструмент не нашёл все пакеты: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:836
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "Демон сломался в середине транзакции!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:870
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
-msgstr "Консольный Интерфейс PackageKit"
+msgstr "Интерфейс консоли PackageKit"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:872
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "Подкоманды:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:951
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
-msgstr ""
-"Не удалось получить оставшееся время, это действие было завершено последним"
-
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:986 ../client/pk-generate-pack.c:222
-#: ../client/pk-monitor.c:275
-#: ../contrib/command-not-found/pk-command-not-found.c:614
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:511
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "Показать дополнительную отладочную информацию"
+msgstr "Не удалось получить время, с тех пор как это действие было в последний раз завершено"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:989 ../client/pk-monitor.c:277
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "Показать версию программы и выйти"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:992
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
-msgstr "Установите фильтр, к примеру, установленные программы"
+msgstr "Определить фильтр, к примеру, установленные программы"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:995
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "Выйти, не ожидая завершения задач"
 
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "Установить пакеты без запроса подтверждения"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "Выполнить команду, используя свободные ресурсы полосы пропускания и минимум энергии"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "Вывести на экран в простом формате без анимации элементов"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1020
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "Не удалось соединиться с PackageKit"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1072
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "Указанный фильтр не верен"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1091
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "Необходимо ввести поисковый запрос, например имя пакета"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1098 ../client/pk-console.c:1110
-#: ../client/pk-console.c:1122 ../client/pk-console.c:1134
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "Необходим поисковый термин"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1144
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "Неверный тип поиска"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1150
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "Запрос названия пакета для установки"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1159
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "Запрос имени файла для установки"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1171
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "Требуется указать тип, key_id или package_id"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1182
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "Для удаления необходимо указать имя пакета"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1191
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "Запрос директории назначения и имени пакетов для загрузки"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1198
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "Каталог не найден"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1207
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "Необходим идентификатор лицензии (eula-id)"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1218
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "Необходим идентификатор транзакции (tid)"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1239
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "Для сопоставления необходимо имя пакета"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1250 ../client/pk-console.c:1261
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "Необходимо имя репозитория"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1272
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "Необходимо указать имя, параметр и значение репозитория"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1289
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "Необходимо указать действие, например 'update-system'"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1296
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "Необходимо выбрать роль"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1306 ../client/pk-console.c:1321
-#: ../client/pk-console.c:1330 ../client/pk-console.c:1350
-#: ../client/pk-console.c:1359 ../client/pk-generate-pack.c:285
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "Необходимо указать имя пакета"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1339
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "Необходим пакет предоставляемый строкой"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1419
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "Опция '%s' не поддерживается"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1429
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "Ошибка команды"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:225
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "Укажите имена файлов зависимостей, которые требуется исключить"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:228
-msgid ""
-"The output file or directory (the current directory is used if ommitted)"
-msgstr ""
-"Выходной файл или каталог (используется текущий каталог, если не указан иной)"
+#: ../client/pk-generate-pack.c:240
+msgid "The output file or directory (the current directory is used if ommitted)"
+msgstr "Выходной файл или каталог (используется текущий каталог, если не указан иной)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:231
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "Пакет, который необходимо поместить в пакет обновления"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:234
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "Поместить все доступные обновления в пакет обновлений"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:269
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "Ни опции --package или --updates указано."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:277
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "Оба варианта выбрано."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:293
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "Необходимо указать конечный каталог или имя файла"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:311
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "Сбой запуска демона"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:322 ../client/pk-generate-pack.c:328
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "Менеджер пакетов не может выполнить такого рода операции."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -542,207 +574,212 @@ msgstr ""
 "libarchive"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:346
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "Если указан файл, то имя пакета обновления должно существовать"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:362
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "Пакет с таким именем уже существует, Вы желаете переписать его?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:365
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "Пакет не был перезаписан."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:378
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "Не удалось создать каталог."
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:390
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "Не удалось открыть список пакетов."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:399
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "Поиск пакета по имени."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:403
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "Не удалось найти пакет '%s': %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:411
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "Создание пакета обновления..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:426
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "Пакет обновления создан '%s'"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:431
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "Не удалось создать '%s': %s"
 
-#: ../client/pk-monitor.c:205
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "Не удалось получить состояние демона"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:292
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "Монитор PackageKit"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "Получение информации о пакете..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "Выполнить %s"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "Установленная версия"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "Запустить версию %s сейчас"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "Выполнить сейчас"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "Обновление до версии %s"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "Установить %s сейчас"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "Версия"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "Для Вашей системы не найдено пакетов"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "Установка..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:358
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "Загрузка подробностей об источнике программ."
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:362
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "Загрузка списка файлов (это может занять некоторое время)"
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:366
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "Ожидание разблокирования пакетного менеджера."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:370
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "Загрузка списка пакетов"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:444
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "Ошибка при поиске файлов"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:570
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "Не удалось запустить:"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "Не удалось установить пакеты"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:630
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit Команда не найдена"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "Команда не найдена."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "Аналогичные команды:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "Выполните аналогичную команду:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "Аналогичные команды:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "Пожалуйста, выберите команду"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:764
 msgid "The package providing this file is:"
 msgstr "Этот пакет предоставляется этим файлом:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:769
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "Установить пакет '%s' предоставляющий команду '%s'?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:793
 msgid "Packages providing this file are:"
 msgstr "Пакеты предоставляемые этим файлом:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:803
 msgid "Suitable packages are:"
 msgstr "Подходящие пакеты:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:812
 msgid "Please choose a package to install"
 msgstr "Пожалуйста, выберете пакет для установки:"
 
@@ -758,184 +795,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "Пакет %s не найден, или уже установлен: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:514
-msgid ""
-"Don't actually install any packages, only simulate what would be installed"
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "Не устанавливать пакеты, а только симулировать их установку."
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:517
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "Не устанавливать зависимости базовых пакетов."
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:520
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "Не отображать информацию о прогрессе."
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:535
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit отчёт об ошибках установки"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "Ошибка: Укажите пакет или файл для установки"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:579
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "Получение списка источников"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:664
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:748
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:792
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:859
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:903
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "Ошибка."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:604
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:679
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:807
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:918
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "OK."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:607
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
-msgstr "Найдено %i включеных и %i отключенных источников."
+msgstr "Найдено %i включенных и %i отключенных источников."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:614
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "Поиск отладочных источников"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:647
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "Найдено %i отключенных репозиториев с описанием отладочной информации."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:654
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
-msgstr "Включение оладочного источника."
+msgstr "Включение отладочного источника."
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:682
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "Включен %i отладочных источника"
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:689
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "Поиск обновления пакета"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "Не удалось найти пакет %s: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:724
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "Не удалось найти отладочную информацию для пакета %s: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:752
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "Нет пакетов, нуждающихся в установке"
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:766
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "Найдено %i пакетов"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:782
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "Поиск пакетов, которые зависят от этих пакетов."
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "Не удалось найти зависимости пакетов: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:811
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "Найдено %i дополнительных пакетов."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:815
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "Не содержит дополнительных пакетов"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "Найдено %i пакетов для установки:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "В режиме симуляции пакеты не устанавливаются."
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:849
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "Установка пакетов"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "Невозможно установить пакеты: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:894
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "Отключение ранее включённых источников."
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:906
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "Не возможно отключить отладочный источник: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:921
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "Отключено %i отладочных источников."
@@ -981,6 +1017,10 @@ msgstr "Путь устройства не найден"
 msgid "Incorrect device path specified"
 msgstr "Указан неверный путь к устройству"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "Показать дополнительную отладочную информацию"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -994,7 +1034,7 @@ msgstr "Путь к устройству"
 #. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
 #: ../contrib/device-rebind/pk-device-rebind.c:314
 msgid "PackageKit Device Reloader"
-msgstr "PackageKit перезагружает устроство"
+msgstr "PackageKit перезагружает устройство"
 
 #. TRANSLATORS: user did not specify a valid device sysfs path
 #: ../contrib/device-rebind/pk-device-rebind.c:322
@@ -1038,604 +1078,604 @@ msgstr "Список пакетов PackageKit"
 msgid "PackageKit Service Pack"
 msgstr "Пакет обновления PackageKit"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:55
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
 msgstr "Пожалуйста, введите число от 1 до %i"
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:177
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "Найдено несколько подходящих пакетов"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:186
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "Пожалуйста, выберете корректный пакет:"
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:238
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "Неизвестное состояние"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "Начало"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "Ожидание в очереди"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "Запуск"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "Запрос"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "Получение информации"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "Удаление пакета"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "Загрузка пакетов"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "Обновление списка пакетов"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "установка обновлений"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "Очистка пакетов"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "Устаревшие пакеты"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "Разрешение зависимостей"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "Проверка сигнатур"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "Откат обратно"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "Тестирование изменений"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "Применение изменений"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "Запрос данных"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "Завершение"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "Прерывание"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "Загрузка информации из репозитория"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "Загрузка списка пакетов"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "Загрузка списка файлов"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "Загрузка списка изменений"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "Загрузка групп"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "Загрузка информации об обновлении"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
-msgstr "Перепаковка файлов"
+msgstr "Выполняется повторная сборка файлов"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
-msgstr "Загрузка кеша"
+msgstr "Выполняется загрузка в кэш"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "Сканирование приложений"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "создание списка пакетов"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "Пакетный менеджер заблокирован, ожидание"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "Ожидание аутентификации"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "Обновление запущенных приложений"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "Проверка используемых приложений"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "Проверка используемых библиотек"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "Копирование файлов"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:400
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "Простой"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "Нормальный"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "Важный"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
-msgstr "Безопастность"
+msgstr "Безопасность"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "Исправление ошибок"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "Усовершенствование"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
-msgstr "Блокированый"
+msgstr "Заблокирован"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:429
-#: ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "Установленный"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:434
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "Доступный"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:452
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "Загрузка"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "Обновленный"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "Установленный"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
-msgstr "Удаленние"
+msgstr "Удаление"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
-msgstr "Отчистка"
+msgstr "Очистка"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "Устаревший"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "Переустановка"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:494
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "Загруженный"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "Удаленный"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "Вычищенный"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "Устаревший"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
-msgstr "Переустановленно"
+msgstr "Переустановлено"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:536
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "Неизвестный тип"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "Загрузка зависимостей"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "Получение подробностей обновления"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "Получение подробностей"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "Получение запроса"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "Получение обновлений"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "Поиск по подробностям"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "Поиск по файлу"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "Поиск группы"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "Поиск по имени"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "Установка файлов"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
-msgstr "Обновление кеша"
+msgstr "Обновление кэша"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "Обновление пакетов"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "Обновление системы"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "Отмена"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "Получение репозиториев"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "Включение репозитория"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "Настройки данных"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "Разрешение"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "Получение списка файлов"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "Получение содержимого"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "Принятие подписи"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "Получение пакетов"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "Принять EULA"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "Получение обновлений"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "Получение категорий"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "Получение операций"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "Симуляция установки"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "Симуляция удаления"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "Симуляция обновления"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:64
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
-msgstr "Вы разрешаете установку неподписанных программ?"
+msgstr "Разрешить установку программ без подписи?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:69
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "Неподписанное программное обеспечение не будет установлено."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:102
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "Запрос подписи источника программ"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:108
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "Имя источника программ"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:111
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "URL ключа"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:114
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "Ключ пользователя"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:117
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "Идентификатор ключа"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:120
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "Ключ отпечатка пальца"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:123
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "Ключ Timestamp"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:129
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "Вы принимаете эту подпись?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:134
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "Эта подпись не может быть принята."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:169
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "Необходимо лицензионное соглашение с конечным пользователем."
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:178
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "Соглашение"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:184
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "Вы принимаете это соглашение?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:189
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "Соглашение не принято."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:219
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "Запрос смены носителя"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:222
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "Тип носителя"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:225
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "Метка носителя"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:228
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "Текст"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:232
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "Пожалуйста, вставьте корректный носитель"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:237
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "Корректный носитель не установлен."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:252
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "Следующие пакеты должны быть удалены:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:257
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "Следующие пакеты должны быть установлены:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:262
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "Следующие пакеты должны быть обновлены:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:267
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
-msgstr "Следующие пакеты должны быть переустановленны:"
+msgstr "Следующие пакеты должны быть переустановлены:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:272
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "Следующие пакеты должны быть пониженны:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:331
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "Продолжить с изменениями"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:336
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "Обработка запроса остановлена."
 
@@ -1654,10 +1694,8 @@ msgid "Authentication is required to accept a EULA"
 msgstr "Для принятия EULA необходима аутентификация"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:9
-msgid ""
-"Authentication is required to cancel a task that was not started by yourself"
-msgstr ""
-"Требуется аутентификация для отмены задачи, которая не была запущена Вами"
+msgid "Authentication is required to cancel a task that was not started by yourself"
+msgstr "Требуется аутентификация для отмены задачи, которая не была запущена Вами"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:10
 msgid "Authentication is required to change software source parameters"
@@ -1828,60 +1866,57 @@ msgstr "Это может случится по двум причинам:"
 #. TRANSLATORS: only allowed to be owned by root
 #: ../src/pk-main.c:91
 msgid "The correct user is not launching the executable (usually root)"
-msgstr ""
-"Нужный пользователь не запускает исполняемый файл (обычно привилегированный)"
+msgstr "Нужный пользователь не запускает исполняемый файл (обычно привилегированный)"
 
 #. TRANSLATORS: or we are installed in a prefix
 #: ../src/pk-main.c:93
 msgid ""
 "The org.freedesktop.PackageKit.conf file is not installed in the system "
 "directory:"
-msgstr ""
-"Файл org.freedesktop.PackageKit.conf не установлен в системной директории:"
+msgstr "Файл org.freedesktop.PackageKit.conf не установлен в системной директории:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
-msgstr ""
-"Использовать внутренний интерфейс пакетной системы, к примеру, заглушку"
+msgstr "Использовать внутренний интерфейс пакетной системы, к примеру, заглушку"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "Запустить в качестве демона и отсоединить от терминала"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "Отключить таймер неактивности"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "Показать версию и выйти"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "Выйти после небольшой задержки"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "Выйти после загрузки движка"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "Сервис PackageKit"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "Не удалось подсоединиться к системной шине"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "Ошибка при попытке запуска:"
 
@@ -1894,7 +1929,7 @@ msgstr ""
 #. TRANSLATORS: is not GPG signed
 #: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
-msgstr "Программа получена из недоверенного источника."
+msgstr "Программа получена не из доверенного источника."
 
 #: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
@@ -1906,233 +1941,47 @@ msgstr "Не обновляйте эти пакеты если вы не увеÑ
 
 #: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
-msgstr ""
-"Не устанавливайте этот пакет если вы не уверены в последствиях установки."
+msgstr "Не устанавливайте этот пакет если вы не уверены в последствиях установки."
 
 #: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
-msgstr ""
-"Не устанавливайте эти пакеты если вы не уверены в последствиях установки."
-
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr ""
-"Вредоносное программное обеспечение может повредить компьютер или причинить "
-"иной вред."
+msgstr "Не устанавливайте эти пакеты если вы не уверены в последствиях установки."
 
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "Много пакетов"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "Только доверенные"
 
-#~ msgid "Percentage"
-#~ msgstr "Проценты"
-
-#~ msgid "Please restart the application as it is being used."
-#~ msgstr "Пожалуйста, перезапустите приложение, так как оно используется."
-
-#~ msgid "The package %s is already installed"
-#~ msgstr "Пакет %s уже установлен"
-
-#~ msgid "This tool could not install the files: %s"
-#~ msgstr "Этот инструмент не может установить файлы: %s"
-
-#~ msgid "This tool could not remove %s: %s"
-#~ msgstr "Этот инструмент не может удалить %s: %s"
-
-#~ msgid "This tool could not remove the packages: %s"
-#~ msgstr "Этот инструмент не может удалить пакеты: %s"
-
-#~ msgid "Proceed removing additional packages?"
-#~ msgstr "Приступить к удалению дополнительных пакетов?"
-
-#~ msgid "The package removal was canceled!"
-#~ msgstr "Удаление пакета было отменено!"
-
-#~ msgid "This tool could not download the package %s as it could not be found"
-#~ msgstr ""
-#~ "Этот инструмент не может загрузить пакет %s , так как он не может быть "
-#~ "найден"
-
-#~ msgid "This tool could not download the packages: %s"
-#~ msgstr "Этот инструмент не может загрузить пакеты: %s"
-
-#~ msgid "This tool could not update %s: %s"
-#~ msgstr "Этот инструмент не может обновить %s: %s"
-
-#~ msgid "This tool could not get the requirements for %s: %s"
-#~ msgstr "Этот инструмент не может получить требования для  %s: %s"
-
-#~ msgid "This tool could not get the dependencies for %s: %s"
-#~ msgstr "Этот инструмент не может получить зависимости для %s: %s"
-
-#~ msgid "This tool could not get package details for %s: %s"
-#~ msgstr "Этот инструмент не может получить детальную информацию для %s: %s"
-
-#~ msgid "This tool could not find the files for %s: %s"
-#~ msgstr "Этот инструмент не может найти файлы для %s: %s"
-
-#~ msgid "This tool could not get the file list for %s: %s"
-#~ msgstr "Этот инструмент не может получить список файлов для %s: %s"
-
-#~ msgid "File already exists: %s"
-#~ msgstr "Файл уже существует: %s"
-
-#~ msgid "This tool could not get package list: %s"
-#~ msgstr "Этот инструмент не может получить список пакетов: %s"
-
-#~ msgid "Failed to save to disk"
-#~ msgstr "Не удалось сохранить на диск"
-
-#~ msgid "File does not exist: %s"
-#~ msgstr "Файл не существует: %s"
-
-#~ msgid "Packages to add"
-#~ msgstr "Пакеты для добавления"
-
-#~ msgid "Packages to remove"
-#~ msgstr "Пакеты для удаления"
-
-#~ msgid "No new packages need to be installed"
-#~ msgstr "Нет новых пакетов, нуждающихся в установке"
-
-#~ msgid "not found."
-#~ msgstr "не найдено."
-
-#~ msgid "No packages can be found to install"
-#~ msgstr "Для установки не найдено пакетов"
-
-#~ msgid "This tool could not find the update details for %s: %s"
-#~ msgstr "Этот инструмент не может найти сведения об обновлении для %s: %s"
-
-#~ msgid "This tool could not get the update details for %s: %s"
-#~ msgstr "Этот инструмент не может получить сведения об обновлении для %s: %s"
-
-#~ msgid "Error:"
-#~ msgstr "Ошибка:"
-
-#~ msgid "Do you agree to this license?"
-#~ msgstr "Согласны ли Вы с этой лицензией?"
-
-#~ msgid "The license was refused."
-#~ msgstr "В лицензии было отказано."
-
-#~ msgid "This tool could not connect to system DBUS."
-#~ msgstr "Этот инструмент не может подсоединиться к системе DBUS."
-
-#~ msgid "A list file name to create is required"
-#~ msgstr "Список файлов, которые необходимо создать"
-
-#~ msgid "A list file to open is required"
-#~ msgstr "Список файлов, которые необходимо открыть"
-
-#~ msgid "Incorrect privileges for this operation"
-#~ msgstr "У Вас недостаточно прав для выполнения этой операции"
-
-#~ msgid "The package could not be found"
-#~ msgstr "Этот пакет не может быть найден"
-
-#, fuzzy
-#~ msgid "You need to specify a search type, e.g. name"
-#~ msgstr "Укажите тип поиска"
-
-#~ msgid "You need to specify a search term"
-#~ msgstr "Укажите условия поиска"
-
-#~ msgid "You need to specify a package to remove"
-#~ msgstr "Укажите пакет для удаления"
-
-#~ msgid "You need to specify a package name to resolve"
-#~ msgstr "Укажите имя пакета для показа"
-
-#, fuzzy
-#~ msgid "You need to specify a repository name"
-#~ msgstr "Укажите имя репозитория"
-
-#~ msgid "You need to specify a correct role"
-#~ msgstr "Укажите корректую роль"
-
-#, fuzzy
-#~ msgid "You need to specify a package to find the details for"
-#~ msgstr "Укажите пакет, для которого искать файлы"
-
-#~ msgid "You need to specify a package to find the files for"
-#~ msgstr "Укажите пакет, для которого искать файлы"
-
-#, fuzzy
-#~ msgid "You need to specify a list file to open"
-#~ msgstr "Укажите временной промежуток"
-
-#~ msgid "Install local file"
-#~ msgstr "Установить локальный файл"
-
-#~ msgid "Okay to import key?"
-#~ msgstr "Можно импортировать ключ?"
-
-#~ msgid "Did not import key"
-#~ msgstr "Ключ не импортирован"
-
-#~ msgid "Do you agree?"
-#~ msgstr "Вы согласны?"
-
-#, fuzzy
-#~ msgid "Could not find package to remove"
-#~ msgstr "Не удалось найти  для удаления пакет с таким именем"
-
-#, fuzzy
-#~ msgid "Could not find package to update"
-#~ msgstr "Не найдено совпадений в пакетах"
-
-#, fuzzy
-#~ msgid "Could not find what packages require"
-#~ msgstr "Не удалось найти пакеты, требующие этот пакет"
-
-#, fuzzy
-#~ msgid "Could not find details for"
-#~ msgstr "Не удалось найти файлов этого пакета"
-
-#, fuzzy
-#~ msgid "Could not set database readonly"
-#~ msgstr "Не удалось открыть базу данных: %s"
-
-#~ msgid "Could not open database: %s"
-#~ msgstr "Не удалось открыть базу данных: %s"
-
-#~ msgid "You probably need to run this program as the root user"
-#~ msgstr ""
-#~ "Вам вероятно следует запустить эту программу от имени привилегированного "
-#~ "пользователя"
-
-#~ msgid "Authentication is required to install a local file"
-#~ msgstr "Для установки локальных файлов необходима аутентификация"
-
-#~ msgid "Authentication is required to install a security signature"
-#~ msgstr "Для установки цифровой подписи необходима аутентификация"
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "Показать отладочную информацию для всех файлов"
 
-#~ msgid "Authentication is required to update all packages"
-#~ msgstr "Для обновления всех пакетов необходима аутентификация"
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "Отладка выбранных модулей"
 
-#~ msgid "Update all packages"
-#~ msgstr "Обновить все пакеты"
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "Отладка выбранных функций"
 
-#~ msgid ""
-#~ "Could not find a package with that name to install, or package already "
-#~ "installed"
-#~ msgstr ""
-#~ "Не удалось найти для установки пакет с таким именем, или пакет уже "
-#~ "установлен"
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "Сохранить отладочную информацию в журнал"
 
-#~ msgid "Could not find a package with that name to update"
-#~ msgstr "Не удалось найти для обновления пакет с таким именем"
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "Параметры отладки"
 
-#~ msgid "Could not find a description for this package"
-#~ msgstr "Не удалось найти описания для этого пакета"
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "Показать параметры отладки"
 
-#~ msgid "You need to specify a package to find the description for"
-#~ msgstr "Укажите пакет, для которого искать описание"
commit 25ea95d544fe4c2ec00dcce4b0a5e553e4fd64c6
Author: hedda <hedda at fedoraproject.org>
Date:   Wed Dec 9 00:07:39 2009 +0000

    Sending translation for German

diff --git a/po/de.po b/po/de.po
index 6b9bcea..169ed88 100644
--- a/po/de.po
+++ b/po/de.po
@@ -1,9 +1,11 @@
+# translation of packagekit.master.de.po to
 # German translation of policycoreutils.
-# Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
 # #
 # # package - Paket
 # # service pack - Service-Pack
 # #
+#
 # Holger Wansing <linux at wansing-online.de>, 2006.
 # Timo Trinks <ttrinks at redhat.com>, 2006, 2007.
 # Michael Schönitzer <michael at schoenitzer.de>, 2007.
@@ -15,1216 +17,978 @@
 # Fabian Affolter <fab at fedoraproject.org>, 2009.
 # Christian Kirbach <Christian.Kirbach at googlemail.com>, 2009.
 # Marcus Nitzschke <kenda at fedoraproject.org>, 2009.
-#
+# Hedda Peters <hpeters at redhat.com>, 2009.
 msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.de\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-08-27 02:34+0000\n"
-"PO-Revision-Date: 2009-08-27 10:36+0100\n"
-"Last-Translator: Marcus Nitzschke <kenda at fedoraproject.org>\n"
-"Language-Team: German <gnome-de at gnome.org>\n"
+"POT-Creation-Date: 2009-12-08 02:28+0000\n"
+"PO-Revision-Date: 2009-12-09 10:06+1000\n"
+"Last-Translator: Hedda Peters <hpeters at redhat.com>\n"
+"Language-Team: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: KBabel 1.11.4\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:235
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "Transaktion"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:237
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "Systemzeit"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:239
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "Erfolgreich"
 
-#. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:239
-#: ../client/pk-console.c:468
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "Wahr"
 
-#: ../client/pk-console.c:239
-#: ../client/pk-console.c:468
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "Falsch"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:241
-#: ../src/pk-polkit-action-lookup.c:327
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "Rolle"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "Dauer"
 
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(Sekunden)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:250
-#: ../src/pk-polkit-action-lookup.c:341
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "Befehlszeile"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "Benutzerkennung"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:259
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "Benutzername"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:263
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "Echter Name"
 
-#: ../client/pk-console.c:271
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "Beteiligte Pakete:"
 
-#: ../client/pk-console.c:273
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "Beteilige Pakete: Keine"
 
-#. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../client/pk-console.c:334
-msgid "The following packages have to be removed:"
-msgstr "Die folgenden Pakete müssen entfernt werden:"
-
-#. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../client/pk-console.c:337
-msgid "The following packages have to be installed:"
-msgstr "Die folgenden Pakete müssen installiert werden:"
-
-#. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../client/pk-console.c:340
-msgid "The following packages have to be updated:"
-msgstr "Die folgenden Pakete müssen aktualisiert werden:"
-
-#. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../client/pk-console.c:343
-msgid "The following packages have to be reinstalled:"
-msgstr "Die folgenden Pakete müssen neu installiert werden:"
-
-#. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../client/pk-console.c:346
-msgid "The following packages have to be downgraded:"
-msgstr "Die folgenden Pakete müssen heruntergestuft werden:"
-
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:360
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "Distribution"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:362
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "Typ"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:364
-#: ../client/pk-console.c:387
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "Zusammenfassung"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:376
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "Kategorie"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:378
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "Kennung"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:381
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "Elternteil"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "Name"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:390
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "Symbol"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:405
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "Details zur Aktualisierung:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
+#. TRANSLATORS: the package that is not signed by a known key
+#. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:407
-#: ../src/pk-polkit-action-lookup.c:352
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "Paket"
 msgstr[1] "Pakete"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:410
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "Aktualisierungen"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:414
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "Veraltete"
 
 #. TRANSLATORS: details about the update, the vendor URLs
-#: ../client/pk-console.c:418
+#. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "Hersteller"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:422
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:426
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:430
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "Neustart"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:434
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "Text aktualisieren"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:438
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "Änderungen"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:442
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "Status"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:447
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "Veröffentlicht"
 
 #. TRANSLATORS: details about the update, date the update was updated
-#: ../client/pk-console.c:452
+#. TRANSLATORS: The action of the package, in past tense
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "Aktualisiert"
 
-#: ../client/pk-console.c:539
-#: ../client/pk-console.c:541
-msgid "Percentage"
-msgstr "Prozentsatz"
+#. TRANSLATORS: if the repo is enabled
+#: ../client/pk-console.c:425
+msgid "Enabled"
+msgstr "Aktiviertakti"
 
-#: ../client/pk-console.c:541
-msgid "Unknown"
-msgstr "Unbekannt"
+#. TRANSLATORS: if the repo is disabled
+#: ../client/pk-console.c:428
+msgid "Disabled"
+msgstr "Deaktiviert"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:583
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "Ein Neustart wird erfordert von:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:586
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "Ein Neustart der Sitzung ist erforderlich:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:589
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "Ein Neustart (zur Verbesserung der Sicherheit) wird erfordert von:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:592
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "Ein Neustart der Sitzung (zur Verbesserung der Sicherheit) ist erforderlich:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:595
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "Ein Programm-Neustart wird benötigt von:"
 
-#. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:650
-msgid "Please restart the computer to complete the update."
-msgstr "Bitte starten Sie den Computer neu, um das Update abzuschließen."
-
-#. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:653
-msgid "Please logout and login to complete the update."
-msgstr "Bitte erneut anmelden, um die Aktualisierung abzuschließen."
-
-#. TRANSLATORS: a package needs to restart the application
-#: ../client/pk-console.c:656
-msgid "Please restart the application as it is being used."
-msgstr "Starten Sie die Anwendung neu, da sie benutzt wird."
+#. TRANSLATORS: This a list of details about the package
+#: ../client/pk-console.c:507
+msgid "Package description"
+msgstr "Paketbeschreibung"
 
-#. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:659
-msgid "Please restart the computer to complete the update as important security updates have been installed."
-msgstr "Bitte starten Sie den Computer neu, um die Aktualisierung abzuschließen, denn es sind wichtige Sicherheitsaktualisierungen installiert worden."
+#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
+#: ../client/pk-console.c:538
+msgid "Message:"
+msgstr "Hinweis:"
 
-#. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:662
-msgid "Please logout and login to complete the update as important security updates have been installed."
-msgstr "Bitte erneut anmelden, um die Aktualisierung abzuschließen, denn es sind wichtige Sicherheitsaktualisierungen installiert worden."
+#. TRANSLATORS: This where the package has no files
+#: ../client/pk-console.c:559
+msgid "No files"
+msgstr "Keine Dateien"
 
-#. TRANSLATORS: The package is already installed on the system
-#: ../client/pk-console.c:794
-#, c-format
-msgid "The package %s is already installed"
-msgstr "Das Paket »%s« ist bereits installiert"
+#. TRANSLATORS: This a list files contained in the package
+#: ../client/pk-console.c:564
+msgid "Package files"
+msgstr "Paketdateien"
 
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:802
-#, c-format
-msgid "The package %s could not be installed: %s"
-msgstr "Das Paket »%s« konnte nicht installiert werden: %s"
-
-#. TRANSLATORS: There was a programming error that shouldn't happen. The detailed error follows
-#: ../client/pk-console.c:828
-#: ../client/pk-console.c:876
-#: ../client/pk-console.c:900
-#: ../client/pk-console.c:948
-#: ../client/pk-console.c:1044
-#: ../client/pk-console.c:1157
-#: ../client/pk-console.c:1218
-#: ../client/pk-tools-common.c:62
-#: ../client/pk-tools-common.c:81
-#: ../client/pk-tools-common.c:89
-#, c-format
-msgid "Internal error: %s"
-msgstr "Interner Fehler: %s"
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "Prozentsatz"
 
-#. TRANSLATORS: We are checking if it's okay to remove a list of packages
-#: ../client/pk-console.c:860
-#: ../client/pk-console.c:932
-#: ../client/pk-console.c:1250
-msgid "Proceed with changes?"
-msgstr "Mit Änderungen fortfahren?"
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "Status"
 
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:865
-#: ../client/pk-console.c:937
-msgid "The package install was canceled!"
-msgstr "Das Installieren der Pakete wurde abgebrochen!"
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "Ergebnisse:"
 
-#. TRANSLATORS: There was an error installing the packages. The detailed error follows
-#: ../client/pk-console.c:884
-#: ../client/pk-console.c:1618
-#, c-format
-msgid "This tool could not install the packages: %s"
-msgstr "Folgende Pakete konnten nicht installiert werden: %s"
+#. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
+#: ../client/pk-console.c:685
+msgid "Fatal error"
+msgstr "Schwerwiegender Fehler"
 
-#. TRANSLATORS: There was an error installing the files. The detailed error follows
-#: ../client/pk-console.c:956
-#, c-format
-msgid "This tool could not install the files: %s"
-msgstr "Folgende Dateien konnten nicht installiert werden: %s"
+#. TRANSLATORS: the transaction failed in a way we could not expect
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
+msgid "The transaction failed"
+msgstr "Die Transaktion scheiterte"
 
-#. TRANSLATORS: The package name was not found in the installed list. The detailed error follows
-#: ../client/pk-console.c:1012
-#, c-format
-msgid "This tool could not remove %s: %s"
-msgstr "»%s« konnte nicht entfernt werden: %s"
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "Derzeit sind keine Aktualisierungen verfügbar."
 
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:1035
-#: ../client/pk-console.c:1073
-#: ../client/pk-console.c:1102
-#, c-format
-msgid "This tool could not remove the packages: %s"
-msgstr "Folgende Pakete konnten nicht entfernt werden: %s"
+#. TRANSLATORS: a package needs to restart their system
+#: ../client/pk-console.c:808
+msgid "Please restart the computer to complete the update."
+msgstr "Bitte starten Sie den Computer neu, um die Aktualisierung abzuschliessen."
 
-#. TRANSLATORS: We are checking if it's okay to remove a list of packages
-#: ../client/pk-console.c:1088
-msgid "Proceed with additional packages?"
-msgstr "Mit zusätzlichen Paketen fortfahren?"
+#. TRANSLATORS: a package needs to restart the session
+#: ../client/pk-console.c:811
+msgid "Please logout and login to complete the update."
+msgstr "Bitte erneut anmelden, um die Aktualisierung abzuschliessen."
 
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:1093
-msgid "The package removal was canceled!"
-msgstr "Das Entfernen der Pakete wurde abgebrochen!"
+#. TRANSLATORS: a package needs to restart their system (due to security)
+#: ../client/pk-console.c:814
+msgid ""
+"Please restart the computer to complete the update as important security "
+"updates have been installed."
+msgstr ""
+"Bitte starten Sie den Computer neu, um die Aktualisierung abzuschliessen, "
+"denn es sind wichtige Sicherheitsaktualisierungen installiert worden."
 
-#. TRANSLATORS: The package name was not found in any software sources
-#: ../client/pk-console.c:1134
-#, c-format
-msgid "This tool could not download the package %s as it could not be found"
-msgstr "Das Paket »%s« konnte nicht heruntergeladen werden, weil es nicht gefunden wurde"
+#. TRANSLATORS: a package needs to restart the session (due to security)
+#: ../client/pk-console.c:817
+msgid ""
+"Please logout and login to complete the update as important security updates "
+"have been installed."
+msgstr ""
+"Bitte erneut anmelden, um die Aktualisierung abzuschliessen, denn es sind "
+"wichtige Sicherheitsaktualisierungen installiert worden."
 
-#. TRANSLATORS: Could not download the packages for some reason. The detailed error follows
-#: ../client/pk-console.c:1165
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
+#: ../client/pk-console.c:840
 #, c-format
-msgid "This tool could not download the packages: %s"
-msgstr "Folgende Pakete konnten nicht heruntergeladen werden: %s"
+msgid "This tool could not find any available package: %s"
+msgstr "Dieses Tool konnte keine verfügbaren Pakete finden: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1197
-#: ../client/pk-console.c:1209
-#: ../client/pk-console.c:1264
+#: ../client/pk-console.c:868
 #, c-format
-msgid "This tool could not update %s: %s"
-msgstr "»%s« konnte nicht aktualisiert werden: %s"
-
-#. TRANSLATORS: There was an error removing the packages. The detailed error follows
-#: ../client/pk-console.c:1255
-msgid "The package update was canceled!"
-msgstr "Das Aktualisieren der Pakete wurde abgebrochen!"
+msgid "This tool could not find the installed package: %s"
+msgstr "Dieses Tool konnte das installierte Paket nicht finden: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1288
-#: ../client/pk-console.c:1296
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
-msgid "This tool could not get the requirements for %s: %s"
-msgstr "Die Dateiliste für »%s« konnte nicht ermittelt werden: %s"
+msgid "This tool could not find the package: %s"
+msgstr "Dieses Tool konnte das Paket nicht finden: %s"
 
+#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
-#: ../client/pk-console.c:1318
-#: ../client/pk-console.c:1326
-#, c-format
-msgid "This tool could not get the dependencies for %s: %s"
-msgstr "Die Abhängigkeiten für »%s« konnte nicht ermittelt werden: %s"
-
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
-#: ../client/pk-console.c:1348
-#: ../client/pk-console.c:1356
-#, c-format
-msgid "This tool could not get package details for %s: %s"
-msgstr "Die Detailinformationen für »%s« konnten nicht ermittelt werden: %s"
-
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1378
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
-msgid "This tool could not find the files for %s: %s"
-msgstr "Die Dateien für »%s« konnten nicht gefunden werden: %s"
-
-#. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:1386
-#, c-format
-msgid "This tool could not get the file list for %s: %s"
-msgstr "Die Dateiliste für »%s« konnte nicht ermittelt werden: %s"
-
-#. TRANSLATORS: There was an error getting the list of packages. The filename follows
-#: ../client/pk-console.c:1408
-#, c-format
-msgid "File already exists: %s"
-msgstr "Datei ist bereits vorhanden: %s"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1413
-#: ../client/pk-console.c:1469
-#: ../client/pk-console.c:1544
-msgid "Getting package list"
-msgstr "Paketliste wird geholt"
-
-#. TRANSLATORS: There was an error getting the list of packages. The detailed error follows
-#: ../client/pk-console.c:1419
-#: ../client/pk-console.c:1475
-#: ../client/pk-console.c:1550
-#, c-format
-msgid "This tool could not get package list: %s"
-msgstr "Folgende Paketliste konnte nicht geholt werden: %s"
-
-#. TRANSLATORS: There was an error saving the list
-#: ../client/pk-console.c:1430
-#, c-format
-msgid "Failed to save to disk"
-msgstr "Speichern auf dem Datenträger ist fehlgeschlagen"
-
-#. TRANSLATORS: There was an error getting the list. The filename follows
-#: ../client/pk-console.c:1464
-#: ../client/pk-console.c:1539
-#, c-format
-msgid "File does not exist: %s"
-msgstr "Datei nicht vorhanden: %s"
-
-#. TRANSLATORS: header to a list of packages newly added
-#: ../client/pk-console.c:1496
-msgid "Packages to add"
-msgstr "Hinzuzufügende Pakete"
-
-#. TRANSLATORS: header to a list of packages removed
-#: ../client/pk-console.c:1504
-msgid "Packages to remove"
-msgstr "Zu entfernende Pakete"
-
-#. TRANSLATORS: We didn't find any differences
-#: ../client/pk-console.c:1572
-#, c-format
-msgid "No new packages need to be installed"
-msgstr "Es müssen keine neuen Pakete installiert werden"
-
-#. TRANSLATORS: follows a list of packages to install
-#: ../client/pk-console.c:1578
-msgid "To install"
-msgstr "Zum Installieren"
-
-#. TRANSLATORS: searching takes some time....
-#: ../client/pk-console.c:1590
-msgid "Searching for package: "
-msgstr "Suche nach Paket:"
-
-#. TRANSLATORS: package was not found -- this is the end of a string ended in ...
-#: ../client/pk-console.c:1594
-msgid "not found."
-msgstr "nicht gefunden."
-
-#. TRANSLATORS: We didn't find any packages to install
-#: ../client/pk-console.c:1605
-#, c-format
-msgid "No packages can be found to install"
-msgstr "Es können keine Pakete zum Installieren gefunden werden"
-
-#. TRANSLATORS: installing new packages from package list
-#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
-#: ../client/pk-console.c:1611
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:886
-#, c-format
-msgid "Installing packages"
-msgstr "Pakete werden installiert"
-
-#. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:1647
-#, c-format
-msgid "This tool could not find the update details for %s: %s"
-msgstr "Die Aktualisierungsinformationen für »%s« konnten nicht gefunden werden: %s"
-
-#. TRANSLATORS: There was an error getting the details about the update for the package. The detailed error follows
-#: ../client/pk-console.c:1655
-#, c-format
-msgid "This tool could not get the update details for %s: %s"
-msgstr "Die Aktualisierungsinformationen für »%s« konnten nicht ermittelt werden: %s"
-
-#. TRANSLATORS: This was an unhandled error, and we don't have _any_ context
-#: ../client/pk-console.c:1686
-msgid "Error:"
-msgstr "Fehler:"
-
-#. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:1700
-msgid "Package description"
-msgstr "Paketbeschreibung"
-
-#. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:1716
-msgid "Message:"
-msgstr "Hinweis:"
-
-#. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:1744
-msgid "Package files"
-msgstr "Paketdateien"
-
-#. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:1752
-msgid "No files"
-msgstr "Keine Dateien"
-
-#. TRANSLATORS: This a request for a GPG key signature from the backend, which the client will prompt for later
-#: ../client/pk-console.c:1775
-msgid "Repository signature required"
-msgstr "Signatur des Paketdepots wird benötigt"
-
-#. TRANSLATORS: This a prompt asking the user to import the security key
-#: ../client/pk-console.c:1785
-msgid "Do you accept this signature?"
-msgstr "Akzeptieren Sie diese Signatur?"
-
-#. TRANSLATORS: This is where the user declined the security key
-#: ../client/pk-console.c:1789
-msgid "The signature was not accepted."
-msgstr "Diese Signatur wurde nicht akzeptiert."
-
-#. TRANSLATORS: This a request for a EULA
-#: ../client/pk-console.c:1823
-msgid "End user license agreement required"
-msgstr "Lizenzvereinbarung für Endbenutzer ist erforderlich"
-
-#. TRANSLATORS: This a prompt asking the user to agree to the license
-#: ../client/pk-console.c:1830
-msgid "Do you agree to this license?"
-msgstr "Sind Sie mit dieser Lizenz einverstanden?"
-
-#. TRANSLATORS: This is where the user declined the license
-#: ../client/pk-console.c:1834
-msgid "The license was refused."
-msgstr "Die Lizenz wurde zurückgewiesen."
+msgid "This tool could not find all the packages: %s"
+msgstr "Dieses Tool konnte nicht alle Pakete finden: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:1863
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "Der Dämon stürzte während der Transaktion ab!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:1916
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "Schnittstelle zur PackageKit-Konsole"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:1918
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "Unterbefehle:"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:2011
-#: ../client/pk-generate-pack.c:185
-#: ../client/pk-monitor.c:128
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
-#: ../contrib/device-rebind/pk-device-rebind.c:293
-#: ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "Erweiterte Fehlerdiagnose-Informationen anzeigen"
+#. TRANSLATORS: we keep a database updated with the time that an action was last executed
+#: ../client/pk-console.c:1208
+msgid "Failed to get the time since this action was last completed"
+msgstr "Es war nicht möglich, die Zeit seit der letzten Fertigstellung festzustellen"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:2014
-#: ../client/pk-monitor.c:130
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "Programm-Version anzeigen und beenden"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:2017
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "Den Filter setzen, z.B. »installiert«"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:2020
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "Beenden, ohne auf Beendigung der Aktionen zu warten"
 
-#. TRANSLATORS: This is when we could not connect to the system bus, and is fatal
-#: ../client/pk-console.c:2047
-msgid "This tool could not connect to system DBUS."
-msgstr "Es konnte keine Verbindung zum System-DBUS aufgebaut werden."
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "Die Pakete ohne erneute Nachfrage installieren"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "Befehl ausführen unter Verwendung ungenutzer Netzwerkbandbreite und wenig Energie"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "Auf dem Bildschirm computerlesbare Ausgabe ausgeben, anstatt animierte Widgets zu verwenden"
+
+#. TRANSLATORS: we failed to contact the daemon
+#: ../client/pk-console.c:1281
+msgid "Failed to contact PackageKit"
+msgstr "PackageKit konnte nicht kontaktiert werden"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:2137
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "Der angegebene Filter war ungültig"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:2156
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "Eine Suchart ist nötig, z.B. »Name«"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:2163
-#: ../client/pk-console.c:2172
-#: ../client/pk-console.c:2181
-#: ../client/pk-console.c:2190
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "Ein Suchbegriff ist erforderlich"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:2197
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "Ungültige Suchart"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:2203
-msgid "A package name or filename to install is required"
-msgstr "Ein Paket- oder Dateiname ist zur Installation nötig"
+#: ../client/pk-console.c:1417
+msgid "A package name to install is required"
+msgstr "Ein zu installierender Paketname ist erforderlich"
+
+#. TRANSLATORS: the user did not specify what they wanted to install
+#: ../client/pk-console.c:1426
+msgid "A filename to install is required"
+msgstr "Ein zu installierender Dateiname ist erforderlich"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2212
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
-msgstr "Ein Typ, Schlüsselkennung und Paketkennung sind nötig"
+msgstr "Ein Typ, Schlüsselkennung und Paketkennung sind erforderlich"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:2221
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
-msgstr "Zum Entfernen wird ein Paketname benötigt"
+msgstr "Zum Entfernen ist ein Paketname erforderlich"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:2229
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
-msgstr "Es ist ein Zielordner und die Namen der Pakete zum Herunterladen notwendig"
+msgstr "Ein Zielverzeichnis und die Namen der Pakete zum Herunterladen sind erforderlich"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:2236
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
-msgstr "Ordner nicht gefunden"
+msgstr "Verzeichnis nicht gefunden"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2244
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "Eine Lizenzbezeichnung (eula-id) ist erforderlich"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:2254
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "Eine Transaktionsbezeichnung (tid) ist erforderlich"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:2271
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "Ein Paketname ist zur Auflösung erforderlich"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:2280
-#: ../client/pk-console.c:2289
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "Ein Depotname wird benötigt"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:2298
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "Ein Depotname, Parameter und Wert sind erforderlich"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:2312
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "Ein Vorgang, z.B. »update-system«, wird benötigt"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:2319
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "Eine korrekte Rolle wird benötigt"
 
-#. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:2326
-msgid "Failed to get the time since this action was last completed"
-msgstr "Es war nicht möglich, die Zeit seit der letzten Fertigstellung festzustellen"
-
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:2336
-#: ../client/pk-console.c:2348
-#: ../client/pk-console.c:2357
-#: ../client/pk-console.c:2375
-#: ../client/pk-console.c:2384
-#: ../client/pk-generate-pack.c:241
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "Ein Paketname wird benötigt"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:2366
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "Die Zeichenkette »Stellt bereit« wird benötigt"
 
-#. TRANSLATORS: The user didn't specify a filename to create as a list
-#: ../client/pk-console.c:2393
-msgid "A list file name to create is required"
-msgstr "Ein Dateiname ist zur Erstellung der Liste erforderlich"
-
-#. TRANSLATORS: The user didn't specify a filename to open as a list
-#: ../client/pk-console.c:2403
-#: ../client/pk-console.c:2413
-msgid "A list file to open is required"
-msgstr "Ein Dateiname ist zum Öffnen der Liste erforderlich"
-
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:2467
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "Option »%s« wird nicht unterstützt"
 
-#. TRANSLATORS: User does not have permission to do this
-#: ../client/pk-console.c:2480
-msgid "Incorrect privileges for this operation"
-msgstr "Sie haben nicht die notwendigen Rechte für diese Operation"
-
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:2483
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "Ausführung des Befehls fehlgeschlagen"
 
-#. TRANSLATORS: This is the state of the transaction
-#: ../client/pk-generate-pack.c:101
-msgid "Downloading"
-msgstr "Es wird heruntergeladen"
-
-#. TRANSLATORS: This is when the main packages are being downloaded
-#: ../client/pk-generate-pack.c:121
-msgid "Downloading packages"
-msgstr "Pakete werden heruntergeladen"
-
-#. TRANSLATORS: This is when the dependency packages are being downloaded
-#: ../client/pk-generate-pack.c:126
-msgid "Downloading dependencies"
-msgstr "Abhängigkeiten werden heruntergeladen"
-
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:188
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "Den Dateinamen der Abhängigkeiten festlegen, die ausgeschlossen werden"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:191
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
-msgstr "Die Ausgabedatei oder der Ausgabeordner (falls leer, wird der aktuelle Ordner verwendet)"
+msgstr ""
+"Die Ausgabedatei oder das Ausgabeverzeichnis (falls leer, wird das aktuelle "
+"Verzeichnis verwendet)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:194
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "Das Paket zum Hinzufügen in das Service-Pack"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:197
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "Alle verfügbaren Aktualisierungen zum Service-Pack hinzufügen"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:225
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "Weder »--package« noch »--updates« wurden als Option gewählt."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:233
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "Beide Optionen ausgewählt."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:249
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
-msgstr "Ein Ausgabeordner oder Dateiname ist erforderlich"
+msgstr "Ein Ausgabeverzeichnis oder Dateiname ist erforderlich"
+
+#. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
+#: ../client/pk-generate-pack.c:324
+msgid "The dameon failed to startup"
+msgstr "Der Daemon konnte nicht starten"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:267
-#: ../client/pk-generate-pack.c:273
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "Die Paketverwaltung kann diesen Aufgabentyp nicht ausführen."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:280
-msgid "Service packs cannot be created as PackageKit was not built with libarchive support."
-msgstr "Service-Packs können nicht erstellt werden, weil PackageKit ohne Unterstützung für »libarchive« erstellt wurde."
+#: ../client/pk-generate-pack.c:348
+msgid ""
+"Service packs cannot be created as PackageKit was not built with libarchive "
+"support."
+msgstr ""
+"Service-Packs können nicht erstellt werden, weil PackageKit ohne "
+"Unterstützung für »libarchive« erstellt wurde."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:291
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "Wenn Sie eine Datei angeben, dann muss der Name des Service-Packs enden mit"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:307
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
-msgstr "Ein Service-Pack mit dem selben Namen existiert bereits, soll es überschrieben werden?"
+msgstr ""
+"Ein Service-Pack mit dem selben Namen existiert bereits, soll es "
+"überschrieben werden?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:310
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "Das Service-Pack wurde nicht überschrieben."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:323
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
-msgstr "Ordner konnte nicht erstellt werden:"
+msgstr "Verzeichnis konnte nicht erstellt werden:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:333
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "Paketliste konnte nicht geöffnet werden."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:344
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "Paketnamen werden gesucht."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "Paket »%s« konnte nicht gefunden werden: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:365
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "Service-Pack wird erstellt …"
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:372
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "Service-Pack »%s« wurde erstellt"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:377
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "Erzeugen von »%s« ist fehlgeschlagen: %s"
 
+#: ../client/pk-monitor.c:210
+msgid "Failed to get daemon state"
+msgstr "Daemon-Status konnte nicht abgerufen werden"
+
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:146
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit-Monitor"
 
-#: ../client/pk-monitor.c:183
-msgid "Cannot show the list of transactions"
-msgstr "Liste der Transaktionen kann nicht angezeigt werden"
-
-#. TRANSLATORS: The package was not found in any software sources
-#: ../client/pk-tools-common.c:118
-#, c-format
-msgid "The package could not be found"
-msgstr "Das Paket konnte nicht gefunden werden"
-
-#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../client/pk-tools-common.c:130
-msgid "More than one package matches:"
-msgstr "Es passt mehr als ein Paket:"
-
-#. TRANSLATORS: This finds out which package in the list to use
-#: ../client/pk-tools-common.c:137
-msgid "Please choose the correct package: "
-msgstr "Bitte wählen Sie das richtige Paket: "
-
-#: ../client/pk-tools-common.c:162
-#, c-format
-msgid "Please enter a number from 1 to %i: "
-msgstr "Bitte geben Sie eine Zahl zwischen 1 und %i ein: "
-
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:466
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "Paket-Informationen werden gelesen …"
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:472
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s starten"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:478
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "Installierte Version"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:486
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "Jetzt Version %s starten"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:492
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "Jetzt ausführen"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:498
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "Aktualisierung auf Version %s"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:504
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "%s jetzt installieren"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:507
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "Version"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:512
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "Keine Pakete für Ihr System gefunden"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "Es wird installiert …"
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:349
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "Details über Softwarequellen werden heruntergeladen"
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:353
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "Dateilisten werden heruntergeladen (dies kann einen Moment dauern)"
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:357
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "Auf Blockierung des Paketmanagers wird gewartet"
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "Paketliste wird geladen."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:420
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "Die Suche nach der Datei ist fehlgeschlagen"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:557
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "Start ist fehlgeschlagen:"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "Die Pakete konnten nicht installiert werden"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit-Befehl wurde nicht gefunden"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "Befehl wurde nicht gefunden."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "Ein ähnlicher Befehl lautet:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "Ähnlichen Befehl ausführen:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "Ähnliche Befehle sind:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "Bitte wählen Sie einen Befehl zum Ausführen"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "Das folgende Paket stellt diese Datei bereit:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "Soll das Paket »%s« installiert werden, welches den Befehl »%s« bereitstellt?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "Pakete, die diese Datei bereitstellen, sind:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "Passende Pakete sind:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "Bitte wählen Sie ein Paket zum Installieren"
 
 #. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:187
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
 msgid "Starting install"
 msgstr "Installation wird begonnen"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:397
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
 #, c-format
 msgid "Failed to find the package %s, or already installed: %s"
-msgstr "Das Paket »%s« konnte nicht gefunden werden, oder es ist bereits installiert: %s"
+msgstr ""
+"Das Paket »%s« konnte nicht gefunden werden, oder es ist bereits installiert: "
+"%s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:553
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
-msgstr "Keine Pakete tatsächlich installieren, sondern nur die Installation simulieren"
+msgstr ""
+"Keine Pakete tatsächlich installieren, sondern nur die Installation "
+"simulieren"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "Keine Abhängigkeiten der Grundpakete installieren"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:559
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "Keine Informationen oder Fortschritt anzeigen"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:577
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Fehlerdiagnose-Installation"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "FEHLER: Sie müssen Paketnamen zum Installieren angeben."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:623
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "Quellenliste wird geholt"
 
+#. TRANSLATORS: operation was not successful
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
+msgid "FAILED."
+msgstr "FEHLGESCHLAGEN."
+
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:641
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:681
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:716
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:800
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:844
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:911
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:955
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "OK."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "Es wurden %i aktivierte und %i deaktivierte Quellen gefunden."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:651
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "Fehlerdiagnose-Quellen werden gesucht"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:684
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "Es wurden %i deaktivierte Fehlerdiagnose-Depots gefunden."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:691
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "Fehlerdiagnose-Quellen werden aktiviert"
 
-#. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:785
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:829
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:896
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:940
-msgid "FAILED."
-msgstr "FEHLGESCHLAGEN."
-
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:719
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i Fehlerdiagnose-Quellen wurden aktiviert."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:726
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "Fehlerdiagnose-Pakete werden gesucht."
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:738
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "Das Paket »%s« konnte nicht gefunden werden: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "Das Fehlerdiagnose-Paket »%s« konnte nicht gefunden werden: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:789
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "Es wurden keine Pakete zum Installieren gefunden."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "Es wurden %i Pakete gefunden:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:819
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "Es werden Pakete gesucht, die von diesen Paketen abhängen"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:832
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "Es konnten keine abhängigen Pakete gefunden werden: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "Es wurden %i zusätzliche Pakete gefunden."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:852
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "Es werden keine zusätzlichen Pakete benötigt."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:861
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "Es wurden %i Pakete zum Installieren gefunden:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "Es werden im Simulationsmodus keine Pakete installiert"
 
+#. TRANSLATORS: we are now installing the debuginfo packages we found earlier
+#. TRANSLATORS: transaction state, installing packages
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#, c-format
+msgid "Installing packages"
+msgstr "Pakete werden installiert"
+
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:899
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "Die Pakete konnten nicht installiert werden: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "Zuvor aktivierte Quellen werden deaktiviert"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:943
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "Die Fehlerdiagnose-Quellen konnten nicht deaktiviert werden: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:958
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i Fehlerdiagnose-Quellen wurden deaktiviert."
@@ -1270,6 +1034,10 @@ msgstr "Gerätepfad nicht gefunden"
 msgid "Incorrect device path specified"
 msgstr "Falschen Gerätepfad angegeben"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "Erweiterte Fehlerdiagnose-Informationen anzeigen"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1282,7 +1050,6 @@ msgstr "Gerätepfade"
 
 #. TRANSLATORS: tool that gets called when the device needs reloading after installing firmware
 #: ../contrib/device-rebind/pk-device-rebind.c:314
-#, fuzzy
 msgid "PackageKit Device Reloader"
 msgstr "PackageKit Geräte-Aktualisierer"
 
@@ -1328,6 +1095,607 @@ msgstr "PackageKit-Paketliste"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit Service-Pack"
 
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
+#, c-format
+msgid "Please enter a number from 1 to %i: "
+msgstr "Bitte geben Sie eine Zahl zwischen 1 und %i ein: "
+
+#. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
+msgid "More than one package matches:"
+msgstr "Es passt mehr als ein Paket:"
+
+#. TRANSLATORS: This finds out which package in the list to use
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
+msgid "Please choose the correct package: "
+msgstr "Bitte wählen Sie das richtige Paket: "
+
+#. TRANSLATORS: This is when the transaction status is not known
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
+msgid "Unknown state"
+msgstr "Unbekannter Status"
+
+#. TRANSLATORS: transaction state, the daemon is in the process of starting
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
+msgid "Starting"
+msgstr "Starten"
+
+#. TRANSLATORS: transaction state, the transaction is waiting for another to complete
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
+msgid "Waiting in queue"
+msgstr "Warten in Warteschlange"
+
+#. TRANSLATORS: transaction state, just started
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
+msgid "Running"
+msgstr "Ausführen"
+
+#. TRANSLATORS: transaction state, is querying data
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
+msgid "Querying"
+msgstr "Abfragen"
+
+#. TRANSLATORS: transaction state, getting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
+msgid "Getting information"
+msgstr "Informationen werden abgerufen"
+
+#. TRANSLATORS: transaction state, removing packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
+msgid "Removing packages"
+msgstr "Pakete werden entfernt"
+
+#. TRANSLATORS: transaction state, downloading package files
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
+msgid "Downloading packages"
+msgstr "Pakete werden heruntergeladen"
+
+#. TRANSLATORS: transaction state, refreshing internal lists
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
+msgid "Refreshing software list"
+msgstr "Software-Liste wird aktualisiert"
+
+#. TRANSLATORS: transaction state, installing updates
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
+msgid "Installing updates"
+msgstr "Aktualisierungen werden installiert"
+
+#. TRANSLATORS: transaction state, removing old packages, and cleaning config files
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
+msgid "Cleaning up packages"
+msgstr "Pakete werden bereinigt"
+
+#. TRANSLATORS: transaction state, obsoleting old packages
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
+msgid "Obsoleting packages"
+msgstr "Veraltete Pakete werden bereinigt"
+
+#. TRANSLATORS: transaction state, checking the transaction before we do it
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
+msgid "Resolving dependencies"
+msgstr "Abhängigkeiten werden aufgelöst"
+
+#. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
+msgid "Checking signatures"
+msgstr "Signaturen werden überprüft"
+
+#. TRANSLATORS: transaction state, when we return to a previous system state
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
+msgid "Rolling back"
+msgstr "Zurücksetzen"
+
+#. TRANSLATORS: transaction state, when we're doing a test transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
+msgid "Testing changes"
+msgstr "Änderungen werden getestet"
+
+#. TRANSLATORS: transaction state, when we're writing to the system package database
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
+msgid "Committing changes"
+msgstr "Änderungen werden gespeichert"
+
+#. TRANSLATORS: transaction state, requesting data from a server
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
+msgid "Requesting data"
+msgstr "Daten werden abgefragt"
+
+#. TRANSLATORS: transaction state, all done!
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
+msgid "Finished"
+msgstr "Fertig"
+
+#. TRANSLATORS: transaction state, in the process of cancelling
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
+msgid "Cancelling"
+msgstr "Abbruch"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
+msgid "Downloading repository information"
+msgstr "Depot-Informationen werden heruntergeladen"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
+msgid "Downloading list of packages"
+msgstr "Paketliste wird heruntergeladen"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
+msgid "Downloading file lists"
+msgstr "Dateiliste wird heruntergeladen"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
+msgid "Downloading lists of changes"
+msgstr "Änderungsliste wird heruntergeladen"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
+msgid "Downloading groups"
+msgstr "Gruppen werden heruntergeladen"
+
+#. TRANSLATORS: transaction state, downloading metadata
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
+msgid "Downloading update information"
+msgstr "Aktualisierungsinformationen werden heruntergeladen"
+
+#. TRANSLATORS: transaction state, repackaging delta files
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
+msgid "Repackaging files"
+msgstr "Dateien werden neu verpackt"
+
+#. TRANSLATORS: transaction state, loading databases
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
+msgid "Loading cache"
+msgstr "Cache wird geladen"
+
+#. TRANSLATORS: transaction state, scanning for running processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
+msgid "Scanning applications"
+msgstr "Applikationen werden überprüft"
+
+#. TRANSLATORS: transaction state, generating a list of packages installed on the system
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
+msgid "Generating package lists"
+msgstr "Paketlisten werden generiert"
+
+#. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
+msgid "Waiting for package manager lock"
+msgstr "Warten auf Sperre des Paketmanagers"
+
+#. TRANSLATORS: transaction state, waiting for user to type in a password
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
+msgid "Waiting for authentication"
+msgstr "Warten auf Authentifizierung"
+
+#. TRANSLATORS: transaction state, we are updating the list of processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
+msgid "Updating running applications"
+msgstr "Laufende Applikationen werden aktualisiert"
+
+#. TRANSLATORS: transaction state, we are checking executable files currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
+msgid "Checking applications in use"
+msgstr "Verwendete Applikationen werden überprüft"
+
+#. TRANSLATORS: transaction state, we are checking for libraries currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
+msgid "Checking libraries in use"
+msgstr "Verwendete Bibliotheken werden überprüft"
+
+#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
+msgid "Copying files"
+msgstr "Dateien werden kopiert"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
+msgid "Trivial"
+msgstr "Trivial"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
+msgid "Normal"
+msgstr "Normal"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
+msgid "Important"
+msgstr "Wichtig"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
+msgid "Security"
+msgstr "Sicherheit"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
+msgid "Bug fix "
+msgstr "Problembehebung"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
+msgid "Enhancement"
+msgstr "Verbesserung"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
+msgid "Blocked"
+msgstr "Blockiert"
+
+#. TRANSLATORS: The state of a package
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
+msgid "Installed"
+msgstr "Installiert"
+
+#. TRANSLATORS: The state of a package, i.e. not installed
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
+msgid "Available"
+msgstr "Verfügbar"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
+msgid "Downloading"
+msgstr "Herunterladen ..."
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
+msgid "Updating"
+msgstr "Aktualisieren ..."
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
+msgid "Installing"
+msgstr "Installieren ..."
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
+msgid "Removing"
+msgstr "Entfernen ..."
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
+msgid "Cleaning up"
+msgstr "Bereinigen ..."
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
+msgid "Obsoleting"
+msgstr "Veraltetes bereinigen ..."
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
+msgid "Reinstalling"
+msgstr "Neu installieren …"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
+msgid "Downloaded"
+msgstr "Heruntergeladen"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
+msgid "Removed"
+msgstr "Entfernt"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
+msgid "Cleaned up"
+msgstr "Bereinigt"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
+msgid "Obsoleted"
+msgstr "Veraltetes bereinigt"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
+msgid "Reinstalled"
+msgstr "Neu installiert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
+msgid "Unknown role type"
+msgstr "Unbekannter Rollentyp"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
+msgid "Getting dependencies"
+msgstr "Abhängigkeiten werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
+msgid "Getting update details"
+msgstr "Details der Aktualisierung werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
+msgid "Getting details"
+msgstr "Details werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
+msgid "Getting requires"
+msgstr "Anforderungen werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
+msgid "Getting updates"
+msgstr "Aktualisierungen werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
+msgid "Searching by details"
+msgstr "Suche nach Details"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
+msgid "Searching by file"
+msgstr "Suche nach Datei"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
+msgid "Searching groups"
+msgstr "Suche nach Gruppe"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
+msgid "Searching by name"
+msgstr "Suche nach Name"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
+msgid "Installing files"
+msgstr "Dateien werden installiert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
+msgid "Refreshing cache"
+msgstr "Cache wird aktualisiert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
+msgid "Updating packages"
+msgstr "Pakete werden aktualisiert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
+msgid "Updating system"
+msgstr "System wird aktualisiert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
+msgid "Canceling"
+msgstr "Abbruch"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
+msgid "Getting repositories"
+msgstr "Depots werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
+msgid "Enabling repository"
+msgstr "Depots werden aktiviert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
+msgid "Setting data"
+msgstr "Daten werden festgelegt"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
+msgid "Resolving"
+msgstr "Auflösen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
+msgid "Getting file list"
+msgstr "Dateiliste wird abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
+msgid "Getting provides"
+msgstr "Anbieter werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
+msgid "Installing signature"
+msgstr "Signatur wird installiert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
+msgid "Getting packages"
+msgstr "Pakete werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
+msgid "Accepting EULA"
+msgstr "EULA annehmen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
+msgid "Getting upgrades"
+msgstr "Aktualisierungen werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
+msgid "Getting categories"
+msgstr "Kategorien werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
+msgid "Getting transactions"
+msgstr "Transaktionen werden abgerufen"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
+msgid "Simulating install"
+msgstr "Installation wird simuliert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
+msgid "Simulating remove"
+msgstr "Entfernen wird simuliert"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
+msgid "Simulating update"
+msgstr "Aktualisierung wird simuliert"
+
+#. TRANSLATORS: ask the user if they are comfortable installing insecure packages
+#: ../lib/packagekit-glib2/pk-task-text.c:69
+msgid "Do you want to allow installing of unsigned software?"
+msgstr "Möchten Sie die Installation unsignierter Software zulassen?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:74
+msgid "The unsigned software will not be installed."
+msgstr "Die unsignierte Software wird nicht installiert."
+
+#. TRANSLATORS: the package repository is signed by a key that is not recognised
+#: ../lib/packagekit-glib2/pk-task-text.c:123
+msgid "Software source signature required"
+msgstr "Signatur der Software-Quelle wird benötigt"
+
+#. TRANSLATORS: the package repository name
+#: ../lib/packagekit-glib2/pk-task-text.c:129
+msgid "Software source name"
+msgstr "Name der Software-Quelle"
+
+#. TRANSLATORS: the key URL
+#: ../lib/packagekit-glib2/pk-task-text.c:132
+msgid "Key URL"
+msgstr "Schlüssel-URL"
+
+#. TRANSLATORS: the username of the key
+#: ../lib/packagekit-glib2/pk-task-text.c:135
+msgid "Key user"
+msgstr "Schlüssel-Benutzer"
+
+#. TRANSLATORS: the key ID, usually a few hex digits
+#: ../lib/packagekit-glib2/pk-task-text.c:138
+msgid "Key ID"
+msgstr "Schlüsselkennung"
+
+#. TRANSLATORS: the key fingerprint, again, yet more hex
+#: ../lib/packagekit-glib2/pk-task-text.c:141
+msgid "Key fingerprint"
+msgstr "Schlüssel-Fingerabdruck"
+
+#. TRANSLATORS: the timestamp (a bit like a machine readable time)
+#: ../lib/packagekit-glib2/pk-task-text.c:144
+msgid "Key Timestamp"
+msgstr "Schlüssel-Zeitstempel"
+
+#. TRANSLATORS: ask the user if they want to import
+#: ../lib/packagekit-glib2/pk-task-text.c:157
+msgid "Do you accept this signature?"
+msgstr "Akzeptieren Sie diese Signatur?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:162
+msgid "The signature was not accepted."
+msgstr "Diese Signatur wurde nicht akzeptiert."
+
+#. TRANSLATORS: this is another name for a software licence that has to be read before installing
+#: ../lib/packagekit-glib2/pk-task-text.c:205
+msgid "End user licence agreement required"
+msgstr "Lizenzvereinbarung für Endbenutzer ist erforderlich"
+
+#. TRANSLATORS: the EULA text itself (long and boring)
+#: ../lib/packagekit-glib2/pk-task-text.c:214
+msgid "Agreement"
+msgstr "Vereinbarung"
+
+#. TRANSLATORS: ask the user if they've read and accepted the EULA
+#: ../lib/packagekit-glib2/pk-task-text.c:223
+msgid "Do you accept this agreement?"
+msgstr "Akzeptieren Sie diese Vereinbarung?"
+
+#. TRANSLATORS: tell the user we've not done anything
+#: ../lib/packagekit-glib2/pk-task-text.c:228
+msgid "The agreement was not accepted."
+msgstr "Diese Vereinbarung wurde nicht akzeptiert."
+
+#. TRANSLATORS: the user needs to change media inserted into the computer
+#: ../lib/packagekit-glib2/pk-task-text.c:267
+msgid "Media change required"
+msgstr "Medienwechsel ist erforderlich"
+
+#. TRANSLATORS: the type, e.g. DVD, CD, etc
+#: ../lib/packagekit-glib2/pk-task-text.c:270
+msgid "Media type"
+msgstr "Medientyp"
+
+#. TRANSLATORS: the media label, usually like 'disk-1of3'
+#: ../lib/packagekit-glib2/pk-task-text.c:273
+msgid "Media label"
+msgstr "Medienkennung"
+
+#. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
+#: ../lib/packagekit-glib2/pk-task-text.c:276
+msgid "Text"
+msgstr "Text"
+
+#. TRANSLATORS: ask the user to insert the media
+#: ../lib/packagekit-glib2/pk-task-text.c:282
+msgid "Please insert the correct media"
+msgstr "Bitte legen Sie das richtige Medium ein"
+
+#. TRANSLATORS: tell the user we've not done anything as they are lazy
+#: ../lib/packagekit-glib2/pk-task-text.c:287
+msgid "The correct media was not inserted."
+msgstr "Das richtige Medium wurde nicht eingelegt."
+
+#. TRANSLATORS: When processing, we might have to remove other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:302
+msgid "The following packages have to be removed:"
+msgstr "Die folgenden Pakete müssen entfernt werden:"
+
+#. TRANSLATORS: When processing, we might have to install other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:307
+msgid "The following packages have to be installed:"
+msgstr "Die folgenden Pakete müssen installiert werden:"
+
+#. TRANSLATORS: When processing, we might have to update other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:312
+msgid "The following packages have to be updated:"
+msgstr "Die folgenden Pakete müssen aktualisiert werden:"
+
+#. TRANSLATORS: When processing, we might have to reinstall other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:317
+msgid "The following packages have to be reinstalled:"
+msgstr "Die folgenden Pakete müssen neu installiert werden:"
+
+#. TRANSLATORS: When processing, we might have to downgrade other dependencies
+#: ../lib/packagekit-glib2/pk-task-text.c:322
+msgid "The following packages have to be downgraded:"
+msgstr "Die folgenden Pakete müssen heruntergestuft werden:"
+
+#. TRANSLATORS: ask the user if the proposed changes are okay
+#: ../lib/packagekit-glib2/pk-task-text.c:382
+msgid "Proceed with changes?"
+msgstr "Mit Änderungen fortfahren?"
+
+#. TRANSLATORS: tell the user we didn't do anything
+#: ../lib/packagekit-glib2/pk-task-text.c:387
+msgid "The transaction did not proceed."
+msgstr "Die Transaktion wurde nicht weitergeführt"
+
 #. SECURITY:
 #. - Normal users do not require admin authentication to accept new
 #. licence agreements.
@@ -1344,14 +1712,20 @@ msgstr "Legitimation ist zum Annehmen der EULA erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:9
 msgid "Authentication is required to cancel a task that was not started by yourself"
-msgstr "Legitimation ist zum Abbrechen einer Aufgabe erforderlich, die nicht von Ihnen initiiert wurde"
+msgstr ""
+"Legitimation ist zum Abbrechen einer Aufgabe erforderlich, die nicht von "
+"Ihnen initiiert wurde"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:10
 msgid "Authentication is required to change software source parameters"
-msgstr "Legitimation ist zur Änderung der Einstellungen zu den Softwarequellen erforderlich"
+msgstr ""
+"Legitimation ist zur Änderung der Einstellungen zu den Softwarequellen "
+"erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:11
-msgid "Authentication is required to consider a key used for signing packages as trusted"
+msgid ""
+"Authentication is required to consider a key used for signing packages as "
+"trusted"
 msgstr "Legitimation ist zum Vertrauen eines Paketsignaturschlüssels erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:12
@@ -1360,7 +1734,9 @@ msgstr "Legitimation ist zum Installieren eines signierten Paketes erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:13
 msgid "Authentication is required to install an untrusted package"
-msgstr "Legitimation ist zum Installieren eines nicht vertrauenswürdigen Paketes erforderlich"
+msgstr ""
+"Legitimation ist zum Installieren eines nicht vertrauenswürdigen Paketes "
+"erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:14
 msgid "Authentication is required to refresh the system sources"
@@ -1379,8 +1755,12 @@ msgid "Authentication is required to rollback a transaction"
 msgstr "Legitimation ist zum Revidieren einer Transaktion erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:18
-msgid "Authentication is required to set the network proxy used for downloading packages"
-msgstr "Legitimation ist zum Festlegen eines Netzwerk-Proxys zum Herunterladen von Paketen erforderlich"
+msgid ""
+"Authentication is required to set the network proxy used for downloading "
+"packages"
+msgstr ""
+"Legitimation ist zum Festlegen eines Netzwerk-Proxys zum Herunterladen von "
+"Paketen erforderlich"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:19
 msgid "Authentication is required to update packages"
@@ -1511,215 +1891,122 @@ msgstr "Der korrekte Benutzer führt nicht das Programm aus (normalerweise root)
 
 #. TRANSLATORS: or we are installed in a prefix
 #: ../src/pk-main.c:93
-msgid "The org.freedesktop.PackageKit.conf file is not installed in the system directory:"
-msgstr "Die org.freedesktop.PackageKit.conf-Datei ist nicht auf Ihrem Rechner im Systemordner installiert:"
+msgid ""
+"The org.freedesktop.PackageKit.conf file is not installed in the system "
+"directory:"
+msgstr ""
+"Die org.freedesktop.PackageKit.conf-Datei ist nicht auf Ihrem Rechner im "
+"Systemverzeichnis installiert:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "Zu verwendendes Packaging-Backend, z.B. dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "In Dienst umwandeln und vom Terminal ablösen"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "Den Bereitschaftszähler deaktivieren"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "Version zeigen und beenden"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "Nach kurzer Verzögerung beenden"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "Nach Laden des Kerns beenden"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit-Dienst"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "Verbindung zum System-Bus konnte nicht hergestellt werden"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "Fehler beim Startversuch:"
 
-#: ../src/pk-polkit-action-lookup.c:147
+#: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
-msgstr "Zur Installation von Fehlerdiagnose-Paketen müssen zusätzliche Quellen aktiviert werden"
+msgstr ""
+"Zur Installation von Fehlerdiagnose-Paketen müssen zusätzliche Quellen "
+"aktiviert werden"
 
 #. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:168
-#: ../src/pk-polkit-action-lookup.c:187
+#: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
 msgstr "Sie Software stammt nicht aus einer vertrauenswürdigen Quelle."
 
-#: ../src/pk-polkit-action-lookup.c:173
+#: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
-msgstr "Aktualisieren Sie dieses Paket nur, wenn Sie überzeugt sind, dass dies sicher ist."
+msgstr ""
+"Aktualisieren Sie dieses Paket nur, wenn Sie überzeugt sind, dass dies "
+"sicher ist."
 
-#: ../src/pk-polkit-action-lookup.c:174
+#: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
 msgstr "Aktualisieren Sie diese Pakete nur, wenn Sie dies für sicher halten."
 
-#: ../src/pk-polkit-action-lookup.c:192
+#: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
 msgstr "Installieren Sie dieses Paket nur, wenn Sie dies für sicher halten."
 
-#: ../src/pk-polkit-action-lookup.c:193
+#: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "Installieren Sie diese Pakete nur, wenn Sie dies für sicher halten."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:199
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "Bösartige Software kann Ihren Computer beschädigen oder anderen Schaden anrichten."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:274
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "Viele Pakete"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:334
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "Nur vertrauenswürdige"
 
-#~ msgid "The action, one of 'create', 'add', or 'remove'"
-#~ msgstr "Aktion ('create', 'add' oder 'remove')"
-#~ msgid "Main cache file to use (if not specififed, default is used)"
-#~ msgstr ""
-#~ "Hauptzwischenspeicher-Datei (wenn nicht genannt, wird die Standarddatei "
-#~ "benutzt)"
-
-#, fuzzy
-#~ msgid "Source cache file to add to the main database"
-#~ msgstr ""
-#~ "Quellen-Zwischenspeicher, der zur Hauptdatenbank hinzugefügt werden soll"
-#~ msgid "Icon directory"
-#~ msgstr "Symbol-Verzeichnis"
-#~ msgid "Name of the remote repo"
-#~ msgstr "Name der entfernten Quelle"
-
-#, fuzzy
-#~ msgid "PackageKit Application Database Installer"
-#~ msgstr "PackageKit-Konsolen-Interface"
-
-#, fuzzy
-#~ msgid "Main database file to use (if not specififed, default is used)"
-#~ msgstr ""
-#~ "Hauptdatenbank-Datei (wenn nicht genannt, wird die Standard-Datei benutzt)"
-#~ msgid "You need to specify a search type, e.g. name"
-#~ msgstr "Sie müssen einen Suchtyp angeben, z.B. einen Namen"
-#~ msgid "You need to specify a search term"
-#~ msgstr "Sie müssen einen Suchwert angeben"
-#~ msgid "You need to specify a package to remove"
-#~ msgstr "Sie müssen ein Paket zum Löschen angeben"
-#~ msgid "You need to specify a package name to resolve"
-#~ msgstr "Sie müssen einen Paketnamen zum Auflösen angeben"
-#~ msgid "You need to specify a repository name"
-#~ msgstr "Sie müssen einen Repository-Namen angeben"
-#~ msgid "You need to specify an action, e.g. 'update-system'"
-#~ msgstr "Sie müssen eine Aktion angeben, z.B. 'update-system'"
-#~ msgid "You need to specify a correct role"
-#~ msgstr "Sie müssen eine korrekte Rolle angeben"
-#~ msgid "You need to specify a package to find the details for"
-#~ msgstr "Sie müssen ein Paket, für das nach Details gesucht wird, angeben"
-#~ msgid "You need to specify a package to find the files for"
-#~ msgstr "Sie müssen ein Paket, für das nach Dateien gesucht wird, angeben"
-#~ msgid "You need to specify a list file to open"
-#~ msgstr "Sie müssen eine Dateiliste zum Öffnen angeben"
-#~ msgid "This tool could not remove the packages: '%s'"
-#~ msgstr "Dieser Werkzeug konnte das Paket nicht entfernen: '%s'"
-#~ msgid "Could not find package to remove"
-#~ msgstr "Packet zum Löschen konnte nicht gefunden werden"
-#~ msgid "Cancelled!"
-#~ msgstr "Abbruch!"
-#~ msgid "Could not find package to download"
-#~ msgstr "Das Packet zum Herunterladen konnte nicht gefunden werden"
-#~ msgid "Could not find package to update"
-#~ msgstr "Das Packet zum Aktualisieren konnte nicht gefunden werden"
-#~ msgid "Could not find what packages require"
-#~ msgstr "Konnte nicht herausfinden, was die Packete benötigen"
-#~ msgid "Could not find details for"
-#~ msgstr "Konnte keine Details finden für"
-#~ msgid "Okay to import key?"
-#~ msgstr "Soll der Schlüssel importiert werden?"
-#~ msgid "Did not import key"
-#~ msgstr "Schlüssel wurde nicht importiert"
-#~ msgid "Did not agree to licence, task will fail"
-#~ msgstr "Sie stimmten der Lizenz nicht zu, die Aufgabe wird fehlschlagen"
-#~ msgid "failed to download: invalid package_id and/or directory"
-#~ msgstr ""
-#~ "Herunterladen fehlgeschlagen: Ungültige package_id und/oder ungültiges "
-#~ "Verzeichnis"
-#~ msgid "Could not find a valid metadata file"
-#~ msgstr "Eine gültige Metadata–Datei konnte nicht gefunden werden"
-#~ msgid "Okay to download the additional packages"
-#~ msgstr "Möchten Sie die zusätzlichen Packete herunterladen"
-#~ msgid "You need to specify the pack name and packages to be packed\n"
-#~ msgstr "Sie müssen einen Packnamen und Packete zum Packen angeben\n"
-#~ msgid ""
-#~ "Invalid name for the service pack, Specify a name with .servicepack "
-#~ "extension\n"
-#~ msgstr ""
-#~ "Ungültiger Name für ein Service Pack, geben Sie einen Namen an mit ."
-#~ "servicepack als Endung\n"
-#~ msgid "Could not set database readonly"
-#~ msgstr "Datenbank konnte nicht nur-lesbar gesetzt werden"
-#~ msgid "Could not open database: %s"
-#~ msgstr "Datenbank %s konnte nicht geöffnet werden"
-#~ msgid "You probably need to run this program as the root user"
-#~ msgstr "Sie sollten dieses Programm vermutlich als Benutzer root ausführen"
-#~ msgid "<span color='#%06x' underline='single' size='larger'>Run %s</span>"
-#~ msgstr ""
-#~ "<span color='#%06x' underline='single' size='larger'>%s wird ausgeführt</"
-#~ "span>"
-#~ msgid "<big>%s</big>"
-#~ msgstr "<big>%s</big>"
-#~ msgid ""
-#~ "\n"
-#~ "<span color='#%06x' underline='single'>Run version %s now</span>"
-#~ msgstr ""
-#~ "\n"
-#~ "<span color='#%06x' underline='single'>Version %s wird jetzt ausgeführt</"
-#~ "span>"
-#~ msgid ""
-#~ "\n"
-#~ "<span color='#%06x' underline='single'>Run now</span>"
-#~ msgstr ""
-#~ "\n"
-#~ "<span color='#%06x' underline='single'>Wird jetzt ausgeführt</span>"
-#~ msgid ""
-#~ "\n"
-#~ "<span color='#%06x' underline='single'>Upgrade to version %s</span>"
-#~ msgstr ""
-#~ "\n"
-#~ "<span color='#%06x' underline='single'>Aktualisiere zu Version %s</span>"
-#~ msgid ""
-#~ "<span color='#%06x' underline='single' size='larger'>Install %s Now</span>"
-#~ msgstr ""
-#~ "<span color='#%06x' underline='single' size='larger'>%s wird jetzt "
-#~ "installiert</span>"
-#~ msgid ""
-#~ "\n"
-#~ "<small>Version: %s</small>"
-#~ msgstr ""
-#~ "\n"
-#~ "<small>Version: %s</small>"
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "Fehlerdiagnose-Informationen für alle Dateien anzeigen"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "Diese spezifischen Module fehlerbereinigen"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "Diese spezifischen Funktionen fehlerbereinigen"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "Protokolldaten der Fehlerdiagnose in Datei schreiben"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "Optionen der Fehlerdiagnose"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "Fehlerdiagnose-Optionen anzeigen"
 
commit 9a528010e74b4b6e0bd2f5eb86ca5bae22947b51
Author: igor <igor at fedoraproject.org>
Date:   Tue Dec 8 17:20:41 2009 +0000

    Sending translation for Brazilian Portuguese

diff --git a/po/pt_BR.po b/po/pt_BR.po
index 93c9e1c..d046bac 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -8,8 +8,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PackageKit\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-10-05 09:38+0000\n"
-"PO-Revision-Date: 2009-10-05 11:42-0300\n"
+"POT-Creation-Date: 2009-12-08 14:25+0000\n"
+"PO-Revision-Date: 2009-12-08 15:19-0300\n"
 "Last-Translator: Igor Pires Soares <igor at projetofedora.org>\n"
 "Language-Team: Brazilian Portuguese <fedora-trans-pt_br at redhat.com>\n"
 "MIME-Version: 1.0\n"
@@ -20,295 +20,319 @@ msgstr ""
 "X-Poedit-Country: BRAZIL\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175
+#: ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "Transação"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "Horário do sistema"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "Concluído"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "Verdadeiro"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "Falso"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149
-#: ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181
+#: ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "Modo"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "Duração"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(segundos)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158
-#: ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190
+#: ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "Linha de comando"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ID do usuário"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "Nome de usuário"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "Nome real"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "Pacotes afetados:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "Pacotes afetados: nenhum"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "Distribuição"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "Tipo"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205
-#: ../client/pk-console.c:226
+#: ../client/pk-console.c:252
+#: ../client/pk-console.c:291
 msgid "Summary"
 msgstr "Sumário"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "Categoria"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "Pai"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "Nome"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "Ícone"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "Detalhes sobre a atualização:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249
-#: ../lib/packagekit-glib2/pk-task-text.c:107
-#: ../lib/packagekit-glib2/pk-task-text.c:174
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../client/pk-console.c:346
+#: ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "Pacote"
 msgstr[1] "Pacotes"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "Atualiza"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "Obsoletos"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260
-#: ../lib/packagekit-glib2/pk-task-text.c:177
+#: ../client/pk-console.c:357
+#: ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "Fornecedor"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "Reinício"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "Descrição da atualização"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "Alterações"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "Estado"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "Emissão"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294
-#: ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../client/pk-console.c:389
+#: ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "Atualizado em"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "Habilitado"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "Desabilitado"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "O reinício do sistema é requerido por:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "É necessário reiniciar a sessão:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "O reinício do sistema (por segurança) é requerido por:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "É necessário reiniciar a sessão (por segurança):"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "O reinício do aplicativo é requerido por:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "Descrição do pacote"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "Mensagem:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "Nenhum arquivo"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "Arquivos do pacote"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "Porcentagem"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "Status"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "Resultados:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "Erro fatal"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:430
-#: ../contrib/command-not-found/pk-command-not-found.c:597
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "Falha na transação"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "Não há atualizações disponíveis neste momento."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "Por favor, reinicie o computador para completar a atualização."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "Por favor, encerre a sessão e inicie-a novamente para completar a atualização."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
+#: ../client/pk-console.c:814
 msgid "Please restart the computer to complete the update as important security updates have been installed."
 msgstr "Por favor, reinicie o computador para completar a atualização pois importantes atualizações de segurança foram instaladas."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
+#: ../client/pk-console.c:817
 msgid "Please logout and login to complete the update as important security updates have been installed."
 msgstr "Por favor, encerre a sessão e inicie-a novamente para completar a atualização pois importantes atualizações de segurança foram instaladas."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "Esta ferramenta não pôde localizar nenhum pacote disponível: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "Esta ferramenta não pôde localizar o pacote instalado: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640
-#: ../client/pk-console.c:668
+#: ../client/pk-console.c:896
+#: ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "Esta ferramente não pôde localizar o pacote: %s"
@@ -317,360 +341,353 @@ msgstr "Esta ferramente não pôde localizar o pacote: %s"
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696
-#: ../client/pk-console.c:724
-#: ../client/pk-console.c:752
-#: ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952
+#: ../client/pk-console.c:980
+#: ../client/pk-console.c:1008
+#: ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "Esta ferramenta não pôde localizar todos os pacotes: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "O daemon travou no meio da transação!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "Interface em Console do PackageKit"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "Subcomandos:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "Falha ao obter o tempo em que essa ação foi completada pela última vez"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:989
-#: ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:281
-#: ../contrib/command-not-found/pk-command-not-found.c:651
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:512
-#: ../contrib/device-rebind/pk-device-rebind.c:293
-#: ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "Mostrar informações extras de depuração"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:992
-#: ../client/pk-monitor.c:283
+#: ../client/pk-console.c:1244
+#: ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "Mostrar a versão do programa e sair"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:995
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "Definir o filtro, p. ex.: instalados"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:998
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "Sair sem esperar pelo término das ações"
 
 #. command line argument, do we ask questions
-#: ../client/pk-console.c:1001
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
 msgid "Install the packages without asking for confirmation"
 msgstr "Instala os pacotes sem pedir confirmação"
 
 #. TRANSLATORS: command line argument, this command is not a priority
-#: ../client/pk-console.c:1004
+#: ../client/pk-console.c:1256
 msgid "Run the command using idle network bandwidth and also using less power"
 msgstr "Executa o comando usando a banda de rede ociosa e usando também menos energia"
 
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "Exibe na tela uma saída legível pela máquina, em vez de usar widgets animados"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1030
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "Falha ao contatar o PackageKit"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1086
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "O filtro especificado era inválido"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1105
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "Um tipo de pesquisa é requerido, p. ex. nome"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1112
-#: ../client/pk-console.c:1124
-#: ../client/pk-console.c:1136
-#: ../client/pk-console.c:1148
+#: ../client/pk-console.c:1365
+#: ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389
+#: ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "Um termo de pesquisa é requerido"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1158
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "Tipo de pesquisa inválido"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1164
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "O nome do pacote a ser instalado é requerido"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "O nome do arquivo a ser instalado é requerido"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1185
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "Um tipo, key_id e package_id são requeridos"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1196
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "O nome do pacote para remoção é requerido"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1205
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "O diretório de destino e os os nomes dos pacotes a serem baixados são requeridos"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1212
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "Diretório não encontrado"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1221
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "Um identificador de licença (eula-id) é requerido"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1232
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "Um identificador de transação (tid) é requerido"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1253
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "O nome de pacote a ser analisado é requerido"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1264
-#: ../client/pk-console.c:1275
+#: ../client/pk-console.c:1517
+#: ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "O nome do repositório é requerido"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1286
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "Um nome de repositório, parâmetro e um valor são requeridos"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1303
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "Uma ação, p. ex. \"update-system\" é requerida"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1310
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "Um modo correto é requerido"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1320
-#: ../client/pk-console.c:1335
-#: ../client/pk-console.c:1344
-#: ../client/pk-console.c:1364
-#: ../client/pk-console.c:1373
-#: ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573
+#: ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597
+#: ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626
+#: ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "O nome do pacote é requerido"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1353
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "É necessário especificar o que o pacote fornece"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1433
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "A opção \"%s\" não é suportada"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1443
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "O comando falhou"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "Defina o nome de arquivo das dependências a serem excluídas"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "O diretório ou arquivo de saída (o diretório atual é usado se omitido)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "O pacote a ser incluído no pacote de serviços"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "Incluir todas as atualizações disponíveis no pacote de serviços"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "Nenhuma das opções --package ou --updates foi selecionada."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "Ambas opções selecionadas."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "Um diretório ou arquivo de saída é requerido"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "O daemon falhou ao iniciar"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324
-#: ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "O gerenciador de pacotes não pode realizar este tipo de operação."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid "Service packs cannot be created as PackageKit was not built with libarchive support."
 msgstr "Os pacotes de serviço não podem ser criados já que o PackageKIt não foi compilado com suporte à libarchive."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "Se um arquivo for especificado, o nome do pacote de serviços deve terminar com"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "Um pacote de serviços com o mesmo nome já existe, você deseja sobrescrevê-lo?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "O pacote não foi sobrescrito"
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "Falha ao criar o diretório:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "Falha ao abrir a lista de pacotes"
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "Localizando o nome do pacote."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "Falha ao localizar o pacote \"%s\": %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "Criando o pacote de serviços"
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "Pacote de serviços \"%s\" criado"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "Falha ao criar \"%s\": %s"
 
-#: ../client/pk-monitor.c:211
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "Falha ao obter o estado do daemon"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "Monitor do PackageKit"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "Obtendo informações do pacote..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "Executar %s"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "Versão instalada"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "Executar a versão %s agora"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "Executar agora"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "Atualizar para a versão %s"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "Instalar %s agora"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "Versão"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "Nenhum pacote localizado para o seu sistema"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "Instalando..."
 
@@ -695,49 +712,49 @@ msgid "Loading list of packages."
 msgstr "Baixando lista de pacotes."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:421
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "Falha ao pesquisar pelo arquivo"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:560
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "Falha ao executar:"
 
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:588
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "Falha ao instalar pacotes"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:667
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "Comando do PackageKit não localizado"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "Comando não localizado."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:710
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "O comando similar é:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:720
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "Executar comando similar:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:734
-#: ../contrib/command-not-found/pk-command-not-found.c:743
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "Os comandos similares são:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:750
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "Por favor, escolha um comando a ser executado"
 
@@ -780,183 +797,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "Falha ao localizar o pacote %s ou ele já está instalado: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:515
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "Não instala os pacotes na realidade, apenas simula o que seria instalado"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "Não instala dependências dos pacotes principais"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "Não exibe informações ou o progresso"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:539
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "Instalador de Informações de Depuração do PackageKit"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:554
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "ERRO: Especifique os nomes dos pacotes a serem instalados."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:590
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "Obtendo lista de fontes"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:600
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:675
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:759
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:870
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:914
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "FALHOU."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:615
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:655
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:774
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:818
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:885
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:929
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "OK."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:618
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "Localizadas %i fontes habilitadas e %i desabilitadas."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:625
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "Localizando fontes de depuração"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:658
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i repositórios de informações de depuração desabilitados encontrados"
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:665
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "Habilitando fontes de depuração"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:693
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i fontes de depuração habilitadas."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:700
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "Localizando pacotes de depuração"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:712
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "Falha ao localizar o pacote %s: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:735
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "Falha ao localizar o pacote de depuração %s: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "Nenhum pacote localizado para ser instalado."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:777
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i pacotes localizados:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:793
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "Localizando pacotes que dependem destes pacotes"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:806
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "Não foi possível localizar os pacotes dependentes: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:822
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i pacotes extras localizados."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:826
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "Nenhum pacote extra é requerido."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:835
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "%i pacotes localizados para serem instalados:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "Os pacotes não serão instalados no modo de simulação"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:860
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "Instalando pacotes"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:873
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "Não foi possível instalar os pacotes: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:905
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "Desabilitando fontes habilitadas anteriormente"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:917
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "Não foi possível desabilitar as fontes de depuração: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:932
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i fontes de depuração desabilitadas."
@@ -1002,6 +1019,10 @@ msgstr "Caminho de dispositivo não localizado"
 msgid "Incorrect device path specified"
 msgstr "Caminho incorreto de dispositivo especificado"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "Mostrar informações extras de depuração"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1065,598 +1086,598 @@ msgid "Please enter a number from 1 to %i: "
 msgstr "Por favor, insira um número entre 1 e %i: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:181
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "Há mais de um pacote correspondente:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:190
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "Por favor, escolha o pacote correto: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "Estado desconhecido"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "Iniciando"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "Esperando na fila"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "Executando"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "Consultando"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "Obtendo informações"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "Removendo pacotes"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "Baixando pacotes"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "Recarregando lista de programas"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "Instalando atualizações"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "Limpando pacotes"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "Tornando pacotes obsoletos"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "Resolvendo dependências"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "Verificando assinaturas"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "Retrocedendo"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "Testando alterações"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "Submetendo alterações"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "Requisitando dados"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "Finalizado"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "Cancelando"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "Baixando informações do repositório"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "Baixando a lista de pacotes"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "Baixando listas de arquivos"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "Baixando a lista de alterações"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "Baixando grupos"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "Baixando informações de atualização"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "Reempacotando arquivos"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "Carregando cache"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "Analisando aplicativos"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "Gerando listas de pacotes"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "Esperando pelo bloqueio do gerenciador de pacotes"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "Esperando pela autenticação"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "Atualizando aplicativos em execução"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "Verificando aplicativos em uso"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "Verificando bibliotecas em uso"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:386
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "Copiando arquivos"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "Trivial"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "Normal"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "Importante"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "Segurança"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "Correção de erros"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "Melhoria"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:428
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "Bloqueado"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:433
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "Instalado"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:438
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "Disponível"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "Baixando"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "Atualizando"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "Instalando"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "Removendo"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "Limpando"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "Definindo como obsoleto"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:480
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "Reinstalando"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "Baixado"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "Removido"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "Limpo"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "Obsoleto"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:522
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "Reinstalado"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "Tipo de papel desconhecido"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "Obtendo dependências"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "Obtendo detalhes da atualização"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "Obtendo detalhes"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "Obtendo requerimentos"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "Obtendo atualizações"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "Pesquisando pelos detalhes"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "Pesquisando pelo arquivo"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "Pesquisando grupos"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "Pesquisando pelo nome"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "Instalando arquivos"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "Recarregando cache"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "Atualizando pacotes"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "Atualizando sistema"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "Cancelando"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "Obtendo repositórios"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "Habilitando repositório"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "Configurando dados"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "Resolvendo"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "Obtendo lista de arquivos"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "Obtendo o que é fornecido"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "Instalando assinatura"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "Obtendo pacotes"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "Aceitando a licença EULA"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "Obtendo atualizações"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "Obtendo categorias"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "Obtendo transações"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "Simulando instalação"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "Simulando remoção"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:676
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "Simulando atualização"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:66
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "Você quer permitir a instalação de programas não assinados?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:71
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "O pacote não assinado não será instalado."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:104
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "A assinatura da fonte de programas é requerida"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:110
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "Nome da fontes de programas"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:113
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "URL da chave"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:116
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "Usuário da chave"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:119
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "ID da chave"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:122
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "Impressão digital da chave"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:125
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "Carimbo de hora da chave"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:131
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "Você aceita essa assinatura?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:136
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "A assinatura não foi aceita."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:171
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "É necessário um contrato de licença para o usuário final"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:180
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "Contrato"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:186
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "Você aceita este contrato?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:191
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "O contrato não foi aceito."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:221
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "É necessário trocar a mídia"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:224
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "Tipo da mídia"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:227
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "Rótulo da mídia"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:230
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "Texto"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:234
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "Por favor, insira a mídia correta"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:239
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "A mídia correta não foi inserida."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:254
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "Os seguintes pacotes têm que ser removidos:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:259
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "Os seguintes pacotes têm que ser instalados:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:264
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "Os seguintes pacotes têm que ser atualizados:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:269
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "Os seguintes pacotes têm que ser reinstalados:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:274
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "Os seguintes pacotes têm que ser desatualizados:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:333
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "Continuar com as alterações?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:338
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "A transação não procedeu."
 
@@ -1847,47 +1868,47 @@ msgid "The org.freedesktop.PackageKit.conf file is not installed in the system d
 msgstr "O arquivo org.freedesktop.PackageKit.conf não está instalado no diretório do sistema:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "O backend de empacotamento a ser utilizado, p. ex.: dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "Tornar um daemon e separar do terminal"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "Desabilitar o tempo de ociosidade"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "Mostrar a versão e sair"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "Sair após um pequeno atraso"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "Sair após o carregamento do mecanismo"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "Serviço do PackageKit"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "Não foi possível conectar ao barramento do sistema"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "Erro ao tentar iniciar:"
 
@@ -1917,27 +1938,52 @@ msgstr "Não instale este pacote a não ser que você esteja certo de que é seg
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "Não instale estes pacotes a não ser que você esteja certo de que é seguro fazer isso."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "Programas maliciosos podem danificar o seu computador ou causar outros prejuízos."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "Muitos pacotes"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "Somente confiáveis"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "Mostrar informações de depuração para todos os arquivos"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "Depurar estes módulos específicos"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "Depurar estas funções específicas"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "Registrar dados de depuração em um arquivo"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "Opções de depuração"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "Mostrar opções de depuração"
+
+#~ msgid "Malicious software can damage your computer or cause other harm."
+#~ msgstr ""
+#~ "Programas maliciosos podem danificar o seu computador ou causar outros "
+#~ "prejuízos."
 #~ msgid "Transaction failed with no error"
 #~ msgstr "A transação falhou sem erros"
 #~ msgid "Failed to get transaction list"
 #~ msgstr "Falha ao obter a lista da transação"
-#~ msgid "Percentage"
-#~ msgstr "Porcentagem"
 #~ msgid "Please restart the application as it is being used."
 #~ msgstr "Por favor, reinicie o aplicativo que está sendo usado."
 #~ msgid "The package %s is already installed"
commit eb82b59219daecea0e0a9b94c5fbf6c21cc4945e
Merge: 83046c9... 18e26ca...
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 8 15:21:19 2009 +0000

    Merge branch 'master' of git+ssh://git.packagekit.org/srv/git/PackageKit

commit 83046c937903e0af117c25d90122781ae3b20978
Author: Richard Hughes <richard at hughsie.com>
Date:   Tue Dec 8 10:12:42 2009 +0000

    cnf: ensure we send error messages to stderr, not stdout. Fxes rh#545220

diff --git a/contrib/command-not-found/pk-command-not-found.c b/contrib/command-not-found/pk-command-not-found.c
index 775bd6b..70679c0 100644
--- a/contrib/command-not-found/pk-command-not-found.c
+++ b/contrib/command-not-found/pk-command-not-found.c
@@ -420,7 +420,7 @@ pk_cnf_find_available (const gchar *cmd)
 					 (PkProgressCallback) pk_cnf_progress_cb, NULL, &error);
 	if (results == NULL) {
 		/* TRANSLATORS: we failed to find the package, this shouldn't happen */
-		egg_warning ("%s: %s", _("Failed to search for file"), error->message);
+		g_printerr ("%s: %s\n", _("Failed to search for file"), error->message);
 		g_error_free (error);
 		goto out;
 	}
@@ -429,7 +429,7 @@ pk_cnf_find_available (const gchar *cmd)
 	error_code = pk_results_get_error_code (results);
 	if (error_code != NULL) {
 		/* TRANSLATORS: the transaction failed in a way we could not expect */
-		g_print ("%s: %s, %s\n", _("The transaction failed"), pk_error_enum_to_text (pk_error_get_code (error_code)), pk_error_get_details (error_code));
+		g_printerr ("%s: %s, %s\n", _("The transaction failed"), pk_error_enum_to_text (pk_error_get_code (error_code)), pk_error_get_details (error_code));
 		goto out;
 	}
 
@@ -563,7 +563,7 @@ pk_cnf_spawn_command (const gchar *exec, gchar **arguments)
 	ret = g_spawn_command_line_sync (cmd, NULL, NULL, &exit_status, &error);
 	if (!ret) {
 		/* TRANSLATORS: we failed to launch the executable, the error follows */
-		g_print ("%s '%s': %s", _("Failed to launch:"), cmd, error->message);
+		g_printerr ("%s '%s': %s\n", _("Failed to launch:"), cmd, error->message);
 		g_error_free (error);
 		goto out;
 	}
@@ -591,7 +591,7 @@ pk_cnf_install_package_id (const gchar *package_id)
 						 (PkProgressCallback) pk_cnf_progress_cb, NULL, &error);
 	if (results == NULL) {
 		/* TRANSLATORS: we failed to install the package */
-		egg_warning ("%s: %s", _("Failed to install packages"), error->message);
+		g_printerr ("%s: %s\n", _("Failed to install packages"), error->message);
 		g_error_free (error);
 		goto out;
 	}
@@ -600,7 +600,7 @@ pk_cnf_install_package_id (const gchar *package_id)
 	error_code = pk_results_get_error_code (results);
 	if (error_code != NULL) {
 		/* TRANSLATORS: the transaction failed in a way we could not expect */
-		g_print ("%s: %s, %s\n", _("The transaction failed"), pk_error_enum_to_text (pk_error_get_code (error_code)), pk_error_get_details (error_code));
+		g_printerr ("%s: %s, %s\n", _("The transaction failed"), pk_error_enum_to_text (pk_error_get_code (error_code)), pk_error_get_details (error_code));
 		goto out;
 	}
 
@@ -696,14 +696,14 @@ main (int argc, char *argv[])
 	array = pk_cnf_find_alternatives (argv[1], len);
 
 	/* TRANSLATORS: the prefix of all the output telling the user why it's not executing */
-	g_print ("%s ", _("Command not found."));
+	g_printerr ("%s ", _("Command not found."));
 
 	/* one exact possibility */
 	if (array->len == 1) {
 		possible = g_ptr_array_index (array, 0);
 		if (config->single_match == PK_CNF_POLICY_WARN) {
 			/* TRANSLATORS: tell the user what we think the command is */
-			g_print ("%s '%s'\n", _("Similar command is:"), possible);
+			g_printerr ("%s '%s'\n", _("Similar command is:"), possible);
 			retval = EXIT_COMMAND_NOT_FOUND;
 
 		/* run */
@@ -727,19 +727,19 @@ main (int argc, char *argv[])
 	} else if (array->len > 1) {
 		if (config->multiple_match == PK_CNF_POLICY_WARN) {
 			/* TRANSLATORS: show the user a list of commands that they could have meant */
-			g_print ("%s:\n", _("Similar commands are:"));
+			g_printerr ("%s:\n", _("Similar commands are:"));
 			for (i=0; i<array->len; i++) {
 				possible = g_ptr_array_index (array, i);
-				g_print ("'%s'\n", possible);
+				g_printerr ("'%s'\n", possible);
 			}
 
 		/* ask */
 		} else if (config->multiple_match == PK_CNF_POLICY_ASK) {
 			/* TRANSLATORS: show the user a list of commands we could run */
-			g_print ("%s:\n", _("Similar commands are:"));
+			g_printerr ("%s:\n", _("Similar commands are:"));
 			for (i=0; i<array->len; i++) {
 				possible = g_ptr_array_index (array, i);
-				g_print ("%i\t'%s'\n", i+1, possible);
+				g_printerr ("%i\t'%s'\n", i+1, possible);
 			}
 
 			/* TRANSLATORS: ask the user to choose a file to run */
@@ -754,16 +754,14 @@ main (int argc, char *argv[])
 	/* only search using PackageKit if configured to do so */
 	} else if (config->software_source_search) {
 		package_ids = pk_cnf_find_available (argv[1]);
-		if (package_ids == NULL) {
-			g_print ("\n");
+		if (package_ids == NULL)
 			goto out;
-		}
 		len = g_strv_length (package_ids);
 		if (len == 1) {
 			parts = pk_package_id_split (package_ids[0]);
 			if (config->single_install == PK_CNF_POLICY_WARN) {
 				/* TRANSLATORS: tell the user what package provides the command */
-				g_print ("%s '%s'\n", _("The package providing this file is:"), parts[PK_PACKAGE_ID_NAME]);
+				g_printerr ("%s '%s'\n", _("The package providing this file is:"), parts[PK_PACKAGE_ID_NAME]);
 
 			/* ask */
 			} else if (config->single_install == PK_CNF_POLICY_ASK) {
@@ -792,20 +790,20 @@ main (int argc, char *argv[])
 		} else if (len > 1) {
 			if (config->multiple_install == PK_CNF_POLICY_WARN) {
 				/* TRANSLATORS: Show the user a list of packages that provide this command */
-				g_print ("%s\n", _("Packages providing this file are:"));
+				g_printerr ("%s\n", _("Packages providing this file are:"));
 				for (i=0; package_ids[i] != NULL; i++) {
 					parts = pk_package_id_split (package_ids[i]);
-					g_print ("'%s'\n", parts[PK_PACKAGE_ID_NAME]);
+					g_printerr ("'%s'\n", parts[PK_PACKAGE_ID_NAME]);
 					g_strfreev (parts);
 				}
 
 			/* ask */
 			} else if (config->multiple_install == PK_CNF_POLICY_ASK) {
 				/* TRANSLATORS: Show the user a list of packages that they can install to provide this command */
-				g_print ("%s:\n", _("Suitable packages are:"));
+				g_printerr ("%s:\n", _("Suitable packages are:"));
 				for (i=0; package_ids[i] != NULL; i++) {
 					parts = pk_package_id_split (package_ids[i]);
-					g_print ("%i\t'%s'\n", i+1, parts[PK_PACKAGE_ID_NAME]);
+					g_printerr ("%i\t'%s'\n", i+1, parts[PK_PACKAGE_ID_NAME]);
 					g_strfreev (parts);
 				}
 
@@ -824,7 +822,7 @@ main (int argc, char *argv[])
 		}
 	}
 
-	g_print ("\n");
+	g_printerr ("\n");
 
 out:
 	g_strfreev (package_ids);
commit 18e26cacf5c5bb27ba8cc980a4de0864788d1b59
Author: kkrothap <kkrothap at fedoraproject.org>
Date:   Tue Dec 8 10:04:10 2009 +0000

    Sending translation for Telugu

diff --git a/po/te.po b/po/te.po
index 5ce192c..bb32b93 100644
--- a/po/te.po
+++ b/po/te.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.te\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-11-12 03:45+0000\n"
-"PO-Revision-Date: 2009-11-12 12:54+0530\n"
+"POT-Creation-Date: 2009-12-08 08:21+0000\n"
+"PO-Revision-Date: 2009-12-08 15:35+0530\n"
 "Last-Translator: Krishna Babu K <kkrothap at redhat.com>\n"
 "Language-Team: Telugu <en at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -24,196 +24,200 @@ msgstr ""
 "\n"
 "\n"
 "\n"
+"\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:173
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "వ్యవహారము"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:175
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "సిస్టమ్ సమయం"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:177
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "సఫలమైంది"
 
-#: ../client/pk-console.c:177
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "సత్యము"
 
-#: ../client/pk-console.c:177
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "అసత్యము"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:179 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "పాత్ర"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:184
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "నిడివి"
 
-#: ../client/pk-console.c:184
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(సెకనులు)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:188 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "ఆదేశ వరుస"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:190
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "వినియోగదారి ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:197
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "వినియోగదారినామము"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "వాస్తవ నామము"
 
-#: ../client/pk-console.c:209
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "ప్రభావిత సంకలనాలు:"
 
-#: ../client/pk-console.c:211
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "ప్రభావిత సంకలనాలు: ఏదీకాదు"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "పంపిణి"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:248
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "రకము"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:250 ../client/pk-console.c:289
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "సంక్షిప్త సమాచారము"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:278
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "వర్గము"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:283
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "మాత్రుక"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:286
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "నామము"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:292
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "ప్రతిమ"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:338
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "నవీకరణ గురించి సమాచారము:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:344 ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
 #: ../lib/packagekit-glib2/pk-task-text.c:208
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "సంకలనము"
 msgstr[1] "సంకలనములు"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:347
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "నవీకరణలు"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:351
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "తొలగించినవి"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:355 ../lib/packagekit-glib2/pk-task-text.c:211
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "అమ్మకందారు"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:359
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "బగ్‌జిల్లా"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:363
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:367
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "పునఃప్రారంభము"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:371
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "పాఠము నవీకరించుము"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:375
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "మార్పులు"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:379
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "స్థితి"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:383
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "విడుదలైన"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:387 ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "నవీకరించిన"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:423
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "చేతనపరచిన"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:426
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "అచేతనపరచిన"
 
@@ -243,56 +247,76 @@ msgid "Application restart required by:"
 msgstr "అనువర్తనము పునఃప్రారంభము అవసరమైంది:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:505
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "సంకలనము వివరణ"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:536
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "సందేశము:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:557
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "దస్త్రములు లేవు"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:562
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "సంకలనము దస్త్రములు"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "శాతము"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "స్థితి"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "ఫలితాలు:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:636
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "ప్రమాదకరమైన దోషము"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:645
+#: ../client/pk-console.c:694
 #: ../contrib/command-not-found/pk-command-not-found.c:432
-#: ../contrib/command-not-found/pk-command-not-found.c:599
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "బదిలీకరణ విఫలమైంది"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "ఈ సమయం వద్ద అక్కడ యెటువంటి నవీకరణలు అందుబాటులో లేవు."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:713
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "ఈ నవీకరణ పూర్తగుటకు దయచేసి కంప్యూటర్ పునఃప్రారంభించుము."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:716
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "ఈ నవీకరణ పూర్తగుటకు దయచేసి లాగ్అవుటై మరియు లాగిన్అవ్వుము"
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:719
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
 msgstr "ముఖ్యమైన నవీకరణలు సంస్థాపించబడినవి కావున దయచేసి నవీకరణ పూర్తిచేయుటకు కంప్యూటర్ పునఃప్రారంభించుము."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:722
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -301,19 +325,19 @@ msgstr ""
 "అవ్వండి."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:745
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "ఈ సాధనము అందుబాటులో వున్న యే సంకలనములను కనుగొనలేకపోయింది: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:773
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "ఈ సాధనము సంస్థాపిత సంకలనములను కనుగొనలేకపోయింది: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:801 ../client/pk-console.c:829
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "ఈ సాధనము ప్యాకేజీను కనుగొనలేక పోయింది: %s"
@@ -322,296 +346,291 @@ msgstr "ఈ సాధనము ప్యాకేజీను కనుగొన
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:857 ../client/pk-console.c:885
-#: ../client/pk-console.c:913 ../client/pk-console.c:941
-#: ../client/pk-console.c:969
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "ఈ సాధనము అన్ని సంకలనములను కనుగొనలేక పోయింది: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:998
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "వ్యవహారము-మద్యలో డెమోన్ కుప్పకూలినది!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:1032
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "ప్యాకేజీకిట్ కన్సోల్ ఇంటర్ఫేస్"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:1034
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "ఉపఆదేశములు:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:1113
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "ఈ చర్య ఆఖరున పూర్తైన కారణముగా సమయమును పొందుటలో విఫలమైంది"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:1150 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:281
-#: ../contrib/command-not-found/pk-command-not-found.c:653
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "అదనపు డీబగ్గింగ్ సమాచారమును చూపుము"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:1153 ../client/pk-monitor.c:283
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "ప్రోగ్రామ్ వర్షన్‌ను చూపుము మరియు నిష్క్రమించుము"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:1156
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "వడపోత(ఫిల్టర్) అమర్చుము, ఉ.దా. సంస్థాపించిన"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:1159
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "పూర్తవవలసిన చర్యల కొరకు వేచివుండకుండా నిష్క్రమించుము"
 
 #. command line argument, do we ask questions
-#: ../client/pk-console.c:1162
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:530
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
 msgid "Install the packages without asking for confirmation"
 msgstr "నిర్ధారణ కొరకు అడుగకుండా ప్యాకేజీలను సంస్థాపించుము"
 
 #. TRANSLATORS: command line argument, this command is not a priority
-#: ../client/pk-console.c:1165
+#: ../client/pk-console.c:1256
 msgid "Run the command using idle network bandwidth and also using less power"
 msgstr "స్థిరమైన నెట్వర్కు బ్యాండ్‌విడ్తును మరియు తక్కువ శక్తిని వుపయోగించి ఆదేశమును నడుపుము"
 
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "ఏనిమేట్ చేయబడిన విడ్జట్‌లను వుపయోగించుట కన్నా, మిషన్ చదువగల అవుట్పుట్‌ను తెరకు ముద్రించుము"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1191
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "ప్యాకేజీకిట్‌ను సంప్రదించుటకు విఫలమైంది"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1247
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "తెలుపబడిన వడపోత(ఫిల్టర్) చెల్లనిది"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1266
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "ఒక శోధన రకము అవసరమైంది, ఉ.దా. నామము"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1273 ../client/pk-console.c:1285
-#: ../client/pk-console.c:1297 ../client/pk-console.c:1309
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "ఒక శోధన పదము అవసరమైంది"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1319
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "చెల్లని సోధన రకము"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1325
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "సంస్థాపించుటకు వొక ప్యాకేజీ నామము అవసరమైంది"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1334
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "సంస్థాపించుటకు వొక దస్త్రమునామము అవసరమైంది"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1346
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "ఒక రకము, key_id మరియు package_id అవసరమైంది"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1357
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "తొలగించుటకు సంకలనము నామము అవసరమైంది"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1366
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "డౌనులోడు చేయుటకు గమ్య డైరెక్టరీ మరియు సంకలనము నామములు అవసరము"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1373
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "డైరెక్టరీ కనబడలేదు"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1382
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "ఒక లైసెన్సు గుర్తింపుదారి (eula-id) అవసరమైంది"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1393
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "వ్యవహారపు గుర్తింపుదారి (tid) అవసరమైంది"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1414
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "పరిష్కరించుటకు ఒక ప్యాకేజీ నామము అవసరము"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1425 ../client/pk-console.c:1436
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "ఒక రిపోజిటరీ నామము అవసరమైంది"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1447
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "ఒక రెపో నామము, పారామితి మరియు విలువ అవసరమైంది"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1464
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "చర్య, ఉ.దా. update-system అవసరము"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1471
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "ఒక సరైన పాత్ర అవసరము"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1481 ../client/pk-console.c:1496
-#: ../client/pk-console.c:1505 ../client/pk-console.c:1525
-#: ../client/pk-console.c:1534 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "సంకలనము నామము అవసరమైంది"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1514
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "సంకలనము అందించు పదబందము(స్ట్రింగు) అవసరమైంది"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1594
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "ఐచ్చికము '%s' మద్దతీయబడదు"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1604
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "ఆదేశము విఫలమైంది"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "వదిలివేయవలసిన ఆధారముల(డిపెన్డెన్సీల) దస్త్ర నామమును అమర్చుము"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "అవుట్పుట్ దస్త్రము లేదా డైరెక్టరీ (వదిలివేస్తే ప్రస్తుత డైరెక్టరీ వుపయోగించబడుతుంది)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "సర్వీస్ పాక్ నందు వుంచవలసిన సంకలనము"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "అందుబాటులో వున్న అన్ని నవీకరణలను సర్వీస్ పాక్ నందు వుంచుము"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package లేదా --updates ఐచ్చికము యెంపికచేసుకోవాలి."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "రెంచు ఐచ్చికములు యెంపికకాబడినవి."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "ఒక అవుట్పుట్ డైరెక్టరీ లేదా దస్త్ర నామము అవసరమైంది"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "ప్రారంభించుటకు డెమోన్ విఫలమైంది"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "సంకలనము నిర్వాహిక ఈ రకమైన కార్యక్రమమును నిర్వహించలేదు."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
 msgstr "ప్యాకేజ్‌కిట్ అనునది లిబ్ఆర్చివ్ మద్దతుతో నిర్మితం కాలేదు కనుక సర్వీస్ ప్యాక్‌లు సృష్టించబడలేవు."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "దస్త్రమును తెలుపుతుంటే, సేవా ప్యాక్ నామము దీనితో ముగియాలి"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "ఒక పాక్ అదేనామముతో యిప్పటికే వుంది, మీరు దానిని తిరిగివ్రాద్దామని(వోవర్‌రైట్) అనుకొనుచున్నారా?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "పాక్ తిరిగివ్రాయబడలేదు."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "డైరెక్టరీ సృష్టించుటకు విఫలమైంది:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "సంకలన జాబితాను తెరువుటకు విఫలమైంది."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "సంకలనము నామము కనుగొనుచున్నది."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "సంకలనము '%s' కనుగొనుటలో విఫలమైంది: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "సేవా పాక్‌ను సృష్టించుచున్నది..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "సేవా పాక్ సృష్టించబడింది '%s'"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' సృష్టించుటకు విఫలమైంది: %s"
 
-#: ../client/pk-monitor.c:211
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "డెమోన్ స్థితిని పొందుటకు విఫలమైంది"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit పర్యవేక్షకి"
 
@@ -695,17 +714,17 @@ msgid "Failed to search for file"
 msgstr "దస్త్రమును శోధించుటలో విఫలమైంది"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:562
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "ఆరంభించుటలో విఫలమైంది:"
 
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:590
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "సంకలనములను సంస్థాపించుటలో విఫలమైంది"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:669
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit ఆదేశము కనబడలేదు"
 
@@ -775,183 +794,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "సంకలనము %s కనుగొనుటకు విఫలమైంది, లేదా యిప్పటికే సంస్థాపించబడింది: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "యధార్ధంగా యెటువంటి ప్యాకేజీలను సంస్థాపించదు, సంస్థాపించినట్లు భ్రమింపచేస్తుంది"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "ప్రాధమిక ప్యాకేజీలయొక్క ఆధారములను సంస్థాపించవద్దు"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "సమాచారముకాని లేదా పురోగతికాని ప్రదర్శించవద్దు"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:545
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "ప్యాకేజీకిట్ డీబగ్‌సమాచారం సంస్థాపిక"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:560
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "దోషము: సంస్థాపించుటకు ప్యాకేజీ నామములను తెలుపుము."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:596
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "మూలముల జాబితాను పొందుచున్నది"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:606
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:681
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:809
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:876
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:920
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "విఫలమైంది."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:621
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:661
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:696
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:780
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:891
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:935
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "సరే."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:624
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i చేతనపరచిన మరియు %i అచేతనపరచిన మూలములను కనుగొన్నది."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:631
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "డీబగ్గింగ్ మూలములను కనుగొనుచున్నది"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:664
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i అచేతనపరచిన డీబగ్‌సమాచార రెపోలను కనుగొన్నది."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:671
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "డీబగ్గింగ్ మూలములను చేతనపరచుచున్నది"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:699
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i డీబగ్గింగ్ మూలములను చేతనపరచినది."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:706
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "డీబగ్గింగ్ సంకలనములను కనుగొనుచున్నది"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:718
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "సంకలనము %s కనుగొనుటలో విఫలమైంది: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:741
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "డిబగ్‌సమాచారం సంకలనము %s కనుగొనుటలో విఫలమైంది: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:769
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "సంస్థాపించుటకు ఏ సంకలనములు కనబడలేదు."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:783
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i సంకలనములు కనబడినవి:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:799
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "ఈ సంకలనములపై ఆధారపడిన సంకలనములను కనుగొనుచున్నది"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:812
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "ఆధార సంకలనములను కనుగొనలేక పోయింది: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i అదనపు ప్యాకేజీలను కనుగొన్నది."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:832
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "ఏ అదనపు సంకలనములు అవసరములేదు."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:841
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "సంస్థాపించుటకు %i సంకలనములను కనుగొన్నది:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:854
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "భ్రమింపు రీతిలో సంకలనములను సంస్థాపించుటలేదు"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:866
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
 #: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "సంకలనాలను సంస్థాపించుచున్నది"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:879
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "సంకలనములను సంస్థాపించలేక పోయింది: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:911
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "గతంలో చేతనపరచిన మూలములను అచేతనపరచుచున్నది"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:923
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "డీబగ్గింగ్ మూలములను అచేతనపరచలేక పోయింది: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:938
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "అచేతనపరచిన %i డీబగ్గింగ్ మూలములు."
@@ -997,6 +1016,10 @@ msgstr "పరికరము పాత్ కనుగొనబడలేదు"
 msgid "Incorrect device path specified"
 msgstr "సరికాని పరికర పాత్ తెలుపబడింది"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "అదనపు డీబగ్గింగ్ సమాచారమును చూపుము"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1848,47 +1871,47 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf దస్త్రము సిస్టమ్ డైరెక్టరీనందు సంస్థాపించబడలేదు:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "ఉపయోగించుటకు సంకలనీకరణ బ్యాకెండ్, ఉ.దా. dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "టెర్మినల్ నుండి డెమొనైజ్ చేసి మరియు వేరుచేయుము"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "వృధాగావున్న సమయగణనిని అచేతనముచేయి"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "వర్షన్ చూపుము మరియు నిష్క్రమించుము"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "ఒక చిన్న విరామం తర్వాత నిష్క్రమించుము"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "ఇంజన్ లోడైన తర్వాత నిష్క్రమించుము"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit సేవ"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "సిస్టమ్ బస్‌నకు అనుసంధానము కాలేదు"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "ప్రారంభించుటలో దోషము:"
 
@@ -1917,18 +1940,41 @@ msgstr "మీకు ఈ సంకలనమును సంస్థాపిం
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "మీకు ఈ సంకలనములను సంస్థాపించుట క్షేమమేనని తెలిస్తే తప్ప నవీకరించవద్దు."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "చెడ్డ సాఫ్టువేరు మీ కంప్యూటర్‌ను పాడు చేయవచ్చు లేదా యితర హాని తలపెట్టవచ్చు."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "చాలా సంకలనములు"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "నమ్మదగినవి మాత్రమే"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "అన్ని ఫైళ్ళ కొరకు డీబగ్గింగ్ సమాచారమును చూపుము"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "ఈ ప్రత్యేక మాడ్యూళ్ళను డీబగ్ చేయుము"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "ఈ ప్రత్యేక ప్రమేయాలను డీబగ్ చేయుము"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "డీబగ్ చేసిన డాటాను ఫైల్‌నకు లాగ్ చేయుము"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "డీబగ్గింగ్ ఐచ్చికాలు"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "డీబగ్గింగ్ ఐచ్చికాలను చూపుము"
+
commit 6bce2991ede7cbbcea20edeedae159c81c6e8485
Author: runab <runab at fedoraproject.org>
Date:   Tue Dec 8 09:47:52 2009 +0000

    Sending translation for Bengali (India)

diff --git a/po/bn_IN.po b/po/bn_IN.po
index ca9fcf5..42ed2aa 100644
--- a/po/bn_IN.po
+++ b/po/bn_IN.po
@@ -1,4 +1,4 @@
-# translation of packagekit.master.po to Bengali INDIA
+# translation of packagekit.master.bn_IN.po to Bengali INDIA
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
 #
@@ -6,10 +6,10 @@
 # Runa Bhattacharjee <runab at fedoraproject.org>, 2009.
 msgid ""
 msgstr ""
-"Project-Id-Version: packagekit.master\n"
+"Project-Id-Version: packagekit.master.bn_IN\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-10 08:29+0000\n"
-"PO-Revision-Date: 2009-09-10 17:33+0530\n"
+"POT-Creation-Date: 2009-12-07 08:29+0000\n"
+"PO-Revision-Date: 2009-12-08 15:23+0530\n"
 "Last-Translator: Runa Bhattacharjee <runab at redhat.com>\n"
 "Language-Team: Bengali INDIA <anubad at lists.ankur.org.in>\n"
 "MIME-Version: 1.0\n"
@@ -19,268 +19,289 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "ট্রানস্যাকশন"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "সিস্টেমের সময়"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "সফল"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "সত্য (true)"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "অসত্য (false)"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:327
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:336
 msgid "Role"
 msgstr "ভূমিকা"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "অবকাল"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(সেকেন্ড)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:341
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:350
 msgid "Command line"
 msgstr "কমান্ড-লাইন"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ব্যবহারকারীর ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "ব্যবহারকারীর নাম"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "নাম"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "প্রভাবিত প্যাকেজ:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "প্রভাবিত প্যাকেজ: একটিও নয়"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "ডিস্ট্রিবিউশন"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "ধরন"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "সার-সংক্ষেপ"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "শ্রেণী"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "ঊর্ধ্বতন"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "নাম"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "আইকন"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "আপডেট সংক্রান্ত বিবরণ:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:105
-#: ../lib/packagekit-glib2/pk-task-text.c:172
-#: ../src/pk-polkit-action-lookup.c:352
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:361
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "প্যাকেজ"
 msgstr[1] "প্যাকেজ"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "আপডেট"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "অবচিত"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:175
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "বিক্রেতা"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "পুনরারম্ভ"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "আপডেট সংক্রান্ত টেক্সট"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "পরিবর্তন"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "অবস্থা"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "প্রকাশনার সময়ক্ষণ"
 
 #. TRANSLATORS: details about the update, date the update was updated
-#: ../client/pk-console.c:294
+#. TRANSLATORS: The action of the package, in past tense
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "আপডেটের সময়ক্ষণ"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "সক্রিয়"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "নিষ্ক্রিয়"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "চিহ্নিত প্যাকেজের ক্ষেত্রে সিস্টেম পুনরারম্ভ করা আবশ্যক:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "সেশান পুনরারম্ভ করা আবশ্যক:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "চিহ্নিত প্যাকেজের ক্ষেত্রে সিস্টেম পুনরারম্ভ (নিরাপত্তা) করা আবশ্যক:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "সেশান পুনরারম্ভ (নিরাপত্তা) করা আবশ্যক:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "চিহ্নিত প্যাকেজের ক্ষেত্রে অ্যাপ্লিকেশন পুনরারম্ভ করা আবশ্যক:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "প্যাকেজের বিবরণ"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "বার্তা:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "কোনো ফাইল উপস্থিত নেই"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "প্যাকেজের ফাইল"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "শতাংশ"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "অবস্থা"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "ফলাফল:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:462
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "গুরুতর সমস্যা"
 
-#. TRANSLATORS: we failed, but there was no error set
-#: ../client/pk-console.c:475
-msgid "Transaction failed with no error"
-msgstr "কোনো ত্রুটি উৎপন্ন না করে ট্রানস্যাকশন বিফল হয়েছে"
-
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:480
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "ট্রানস্যাকশন বিফল হয়েছে"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "এই মুহূর্তে কোনো আপডেট উপলব্ধ নেই।"
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:554
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "আপডেট সম্পূর্ণ করার জন্য অনুগ্রহ করে কম্পিউটার পুনরায় আরম্ভ করুন।"
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:557
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "আপডেট সম্পন্ন করার জন্য অনুগ্রহ করে লগ-আউট করে পুনরায় লগ-ইন করুন।"
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:560
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -289,7 +310,7 @@ msgstr ""
 "কম্পিউটার পুনরায় আরম্ভ করুন।"
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:563
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -298,19 +319,19 @@ msgstr ""
 "করে লগ-আউট করে পুনরায় লগ-ইন করুন।"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "উপলব্ধ কোনো প্যাকেজ এই সামগ্রী দ্বারা পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "ইনস্টল করা প্যাকেজটি এই সামগ্রী দ্বারা পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "প্যাকেজটি এই সামগ্রী দ্বারা পাওয়া যায়নি: %s"
@@ -319,221 +340,227 @@ msgstr "প্যাকেজটি এই সামগ্রী দ্বার
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "উপলব্ধ সকল প্যাকেজগুলি এই সামগ্রী পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:832
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "সম্প্রচার চলাকালে ডেমন বিপর্যস্ত হয়েছে!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:866
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit কনসোল ইন্টারফেস"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:868
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "সাব-কমান্ড:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:947
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "চিহ্নিত কর্ম সর্বশেষ সমাপ্তির সময়ের পরে অতিবাহিত সময় প্রাপ্ত করা যায়নি"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:982 ../client/pk-generate-pack.c:222
-#: ../client/pk-monitor.c:282
-#: ../contrib/command-not-found/pk-command-not-found.c:614
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:500
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "ডিবাগ সংক্রান্ত অতিরিক্ত তথ্য প্রদর্শন করা হবে"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:985 ../client/pk-monitor.c:284
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
-msgstr "প্রোগ্রামের সংস্করণ প্রদর্শন করে প্রস্থান করা হবে"
+msgstr "Show the program version and exit"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:988
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
-msgstr "ফিল্টার নির্ধারণ করুন, উদাহরণ, installed"
+msgstr "Set the filter, e.g. installed"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:991
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
-msgstr "কর্ম সমাপ্তির অপেক্ষা না করে প্রস্থান করা হবে"
+msgstr "Exit without waiting for actions to complete"
+
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "Install the packages without asking for confirmation"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "Run the command using idle network bandwidth and also using less power"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "Print to screen a machine readable output, rather than using animated widgets"
 
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1016
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit-র সাথে সংযোগ স্থাপন করতে ব্যর্থ"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1068
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "নির্ধারিত ফিল্টার বৈধ নয়"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1087
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "অনুসন্ধানের ধরন আবশ্যক, উদাহরণ নাম (name)"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1094 ../client/pk-console.c:1106
-#: ../client/pk-console.c:1118 ../client/pk-console.c:1130
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "অনুসন্ধানের উদ্দেশ্যে কিছু তথ্য লেখা আবশ্যক"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1140
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "অনুসন্ধানের ধরন বৈধ নয়"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1146
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "ইনস্টল করার উদ্দেশ্যে প্যাকেজের নাম উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1155
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "ইনস্টলেশনের জন্য ফাইলের নাম উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1167
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "ধরন, key_id ও package_id উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1178
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "অপসারণের জন্য প্যাকেজের নাম উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1187
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "উদ্দিষ্ট ডিরেক্টরি ও ডাউনলোড করার উদ্দেশ্যে প্যাকেজের নাম উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1194
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "ডিরেক্টরি পাওয়া যায়নি"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1203
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "লাইসেন্স পরিচয়কারী (eula-id) উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1214
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "ট্রানস্যাকশন পরিচয়কারী (tid) উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1235
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "মীমাংসা করার উদ্দেশ্যে প্যাকেজের নাম উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1246 ../client/pk-console.c:1257
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "সংগ্রহস্থলের নাম উল্লেখ আবশ্যক"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1268
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "একটি repo-র নাম, পরামিতি ও মান নির্ধারণ করা আবশ্যক"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1285
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "কর্ম নির্ধারণ করা আবশ্যক, উদাহরণ 'update-system'"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1292
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "সঠিক ভূমিকা উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1302 ../client/pk-console.c:1317
-#: ../client/pk-console.c:1326 ../client/pk-console.c:1346
-#: ../client/pk-console.c:1355 ../client/pk-generate-pack.c:285
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "প্যাকেজের নাম উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1335
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "প্যাকেজ দ্বারা উপলব্ধ (provides) সামগ্রী সংক্রান্ত তথ্য উল্লেখ করা আবশ্যক"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1415
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "'%s' বিকল্পটি সমর্থিত নয়"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1425
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "কমান্ড বিফল"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:225
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "উপেক্ষা করার উদ্দেশ্যে নির্ভরতার তালিকা উল্লেখকারী ফাইলের পাথ নির্ধারণ করুন"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:228
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "আউটপুট ফাইল অথবা ডিরেক্টরি (মান লেখা না হলে বর্তমান ডিরেক্টরি প্রয়োগ করা হবে)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:231
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "সার্ভিস প্যাকের মধ্যে অন্তর্ভুক্ত করার উদ্দেশ্যে চিহ্নিত প্যাকেজ"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:234
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "সকল উপলব্ধ আপডেট সার্ভিস প্যাকের মধ্যে অন্তর্ভুক্ত করা হবে"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:269
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "--package অথবা --updates কোনো বিকল্পই নির্বাচন করা হয়নি।"
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:277
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "উভয় বিকল্প নির্বাচিত হয়েছে।"
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:293
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "আউটপুটের ডিরেক্টরি অথবা ফাইলের নাম লেখা আবশ্যক"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:311
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "ডেমন আরম্ভ করতে ব্যর্থ"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:322 ../client/pk-generate-pack.c:328
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "প্যাকেজ পরিচালন ব্যবস্থা দ্বারা এই ধরনের কর্ম সঞ্চালন করা সম্ভব নয়।"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:335
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -542,68 +569,64 @@ msgstr ""
 "নয়।"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:346
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "ফাইল নির্ধারণ করা হলে, সার্ভিস প্যাকের নামের শেষ চিহ্নিত মান উপস্থিত থাকা আবশ্যক"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:362
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "এই নামের একটি প্যাক বর্তমানে উপস্থিত রয়েছে, আপনি কি এটি নতুন করে লিখতে ইচ্ছুক?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:365
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "চিহ্নিত প্যাক নতুন করে লেখা হয়নি।"
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:378
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "ডিরেক্টরি নির্মাণ করতে ব্যর্থ:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:390
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "প্যাকেজ তালিকা খুলতে ব্যর্থ।"
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:399
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "প্যাকেজের নাম অনুসন্ধান করা হচ্ছে।"
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:403
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "'%s' প্যাকেজ পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:411
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "সার্ভিস প্যাক নির্মাণ করা হচ্ছে..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:426
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "সার্ভিস প্যাক '%s' নির্মাণ করা হয়েছে"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:431
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' নির্মাণ করতে ব্যর্থ: %s"
 
-#: ../client/pk-monitor.c:204
-msgid "Failed to get transaction list"
-msgstr "ট্রানসাকশানের তালিকা প্রাপ্ত করতে ব্যর্থ।"
-
-#: ../client/pk-monitor.c:235
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "ডেমনের অবস্থা প্রাপ্ত করতে ব্যর্থ"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit Monitor"
 
@@ -662,74 +685,79 @@ msgid "Installing..."
 msgstr "ইনস্টল করা হচ্ছে..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:358
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "সফ্টওয়্যারের উৎসস্থল সম্পর্কে বিরবণ ডাউনলোড করা হচ্ছে।"
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:362
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "ফাইলের তালিকা ডাউনলোড করা হচ্ছে (এই কাজে কিছু সময় ব্যয় হওয়ার সম্ভাবনা রয়েছে)।"
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:366
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "প্যাকেজ পরিচালনব্যবস্থার লক প্রাপ্ত করার অপেক্ষা চলছে।"
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:370
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "প্যাকেজের তালিকা লোড করা হচ্ছ।"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:444
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "ফাইল অনুসন্ধান করতে ব্যর্থ"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:570
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "চিহ্নিত সামগ্রী আরম্ভ করতে ব্যর্থ:"
 
+#. TRANSLATORS: we failed to install the package
+#: ../contrib/command-not-found/pk-command-not-found.c:594
+msgid "Failed to install packages"
+msgstr "প্যাকেজ ইনস্টল করা যায়নি"
+
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:630
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit কমান্ড পাওয়া যায়নি"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:658
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "কমান্ড পাওয়া যায়নি।"
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:665
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "অনুরূপ কমান্ড হল:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:674
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "অনুরূপ কমান্ড সঞ্চালন করুন:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:686
-#: ../contrib/command-not-found/pk-command-not-found.c:695
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "অনুরূপ কমান্ড হল:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:702
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "অনুগ্রহ করে সঞ্চালনের জন্য কমান্ড নির্বাচন করুন"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:721
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "এই প্যাকেজ উপলব্ধকারী ফাইল হল:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:726
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr ""
@@ -737,210 +765,210 @@ msgstr ""
 "উপলব্ধ করা হবে।"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:747
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "এই ফাইল উপলব্ধকারী প্যাকেজগুলি হল:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:756
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "প্রযোজ্য প্যাকেজগুলি হল:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:764
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "অনুগ্রহ করে ইনস্টল করার জন্য একটি প্যাকেজ নির্বাচন করুন"
 
 #. TRANSLATORS: we are starting to install the packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:195
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:197
 msgid "Starting install"
 msgstr "ইনস্টলেশন আরম্ভ করা হচ্ছে"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:402
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:409
 #, c-format
 msgid "Failed to find the package %s, or already installed: %s"
 msgstr "%s প্যাকেজটি পাওয়া যায়নি, অথবা পূর্বেই ইনস্টল করা হয়েছে: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:503
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "কোনো প্যাকেজ ইনস্টল করা হবে না, শুধুমাত্র নির্ধারিত ইনস্টলেশনের অনুকরণ করা হবে"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:506
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "মূল প্যাকেজের নির্ভরতার প্যাকেজগুলি ইনস্টল করা হবে না"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:509
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "তথ্য অথবা প্রগতি প্রদর্শন করা হবে না"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "PackageKit Debuginfo ইনস্টলার"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:536
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "ERROR: ইনস্টলেশনের জন্য প্যাকেজের নাম নির্ধারণ করুন।"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:568
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "উৎসের তালিকা প্রাপ্ত করা হচ্ছে"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:578
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:653
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:781
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:892
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "বিফল।"
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:593
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:633
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:668
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:752
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:796
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:863
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ঠিক আছে।"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:596
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i-টি সক্রিয় ও %i-টি নিষ্ক্রিয় উৎসস্থল পাওয়া গিয়েছে।"
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:603
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "ডিবাগ করতে ব্যবহারযোগ্য উৎসস্থল অনুসন্ধান করা হচ্ছে"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:636
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i-টি নিষ্ক্রিয় debuginfo উৎসস্থল পাওয়া গিয়েছে।"
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:643
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "ডিবাগ করতে ব্যবহারযোগ্য উৎসস্থল সক্রিয় করা হচ্ছে"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:671
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "ডিবাগের জন্য %i-টি উৎসস্থল সক্রিয় করা হয়েছে।"
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:678
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "ডিবাগের জন্য প্যাকেজ অনুসন্ধান করা হচ্ছে"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "%s প্যাকেজ পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:713
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "%s debuginfo প্যাকেজ পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:741
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "ইনস্টল করার জন্য কোনো প্যাকেজ পাওয়া যায়নি।"
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:755
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i-টি প্যাকেজ পাওয়া যায়নি:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:771
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "এই প্যাকেজগুলির উপর নির্ভরশীল প্যাকেজ অনুসন্ধান করা হচ্ছে"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:784
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "নির্ভরশীল প্যাকেজ পাওয়া যায়নি: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:800
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i-টি অতিরিক্ত প্যাকেজ পাওয়া গিয়েছে।"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:804
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "অতিরিক্ত কোনো প্যাকেজের প্রয়োজন নেই।"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:813
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "ইনস্টল করার যোগ্য %i-টি প্যাকেজ পাওয়া গিয়েছে:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:826
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "অনুকরণের মোডে কোনো প্যাকেজ ইনস্টল করা হচ্ছে না"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:838
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "প্যাকেজ ইনস্টল করা হচ্ছে"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:851
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "প্যাকেজ ইনস্টল করা যায়নি: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:883
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "পূর্বে সক্রিয় করা উৎসস্থল নিষ্ক্রিয় করা হচ্ছে"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:895
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "ডিবাগের জন্য ব্যবহারযোগ্য উৎসস্থল নিষ্ক্রিয় করা যায়নি: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:910
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "ডিবাগের জন্য ব্যবহারযোগ্য %i-টি উৎসস্থল নিষ্ক্রিয় করা হয়েছে।"
@@ -986,6 +1014,10 @@ msgstr "ডিভাইসের পাথ পাওয়া যায়নি"
 msgid "Incorrect device path specified"
 msgstr "ডিভাইসের ভুল পাথ নির্ধারিত হয়েছে"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "ডিবাগ সংক্রান্ত অতিরিক্ত তথ্য প্রদর্শন করা হবে"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1043,333 +1075,604 @@ msgstr "PackageKit প্যাকেজের তালিকা"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit সার্ভিস প্যাক"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:53
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
 msgstr "অনুগ্রহ করে ১ থেকে %i-র মধ্যে একটি সংখ্যা লিখুন: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:153
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "একাধিক প্যাকেজের সাথে মিল পাওয়া গিয়েছে:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:162
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "অনুগ্রহ করে সঠিক প্যাকেজ নির্বাচন করুন: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:214
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "অজানা অবস্থা"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:218
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "আরম্ভ করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:222
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "সারির মধ্যে অপেক্ষারত"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:226
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "চলমান"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:230
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "অনুসন্ধানরত"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:234
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "তথ্য প্রাপ্ত করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:238
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "প্যাকেজ মুছে ফেলা হচ্ছে"
 
 #. TRANSLATORS: transaction state, downloading package files
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "প্যাকেজ ডাউনলোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "সফ্টওয়্যারের তালিকা নতুন করে তৈরি করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "আপডেট ইনস্টল করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "প্যাকেজ পরিশ্রুত করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "প্যাকেজ অবচিত করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "নির্ভরতার মীমাংসা করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "স্বাক্ষর পরীক্ষা করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "পূর্বাবস্থায় প্রত্যাবর্তন করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "পরিবর্তনগুলি পরীক্ষা করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "পরিবর্তনগুলি সংরক্ষণ করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "তথ্য প্রাপ্তির অনুরোধ করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "সমাপ্ত"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "বাতিল করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "সংগ্রহস্থল সংক্রান্ত তথ্য ডাউনলোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "প্যাকেজের তালিকা ডাউনলোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "ফাইলের তালিকা ডাউনলোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "পরিবর্তনের তালিকা ডাউনলোড করা হচ্ছ।"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "দলের তথ্য ডাউনলোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "আপডেট সংক্রান্ত তথ্য ডাউনলোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "ফাইল পুনরায় প্যাকেজ করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "ক্যাশে লোড করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "অ্যাপ্লিকেশন অনুসন্ধান করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "প্যাকেজের তালিকা নির্মাণ করা হচ্ছে"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "প্যাকেজ পরিচালনব্যবস্থার লক প্রাপ্ত করার অপেক্ষা চলছে"
 
-#. TRANSLATORS: waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#. TRANSLATORS: transaction state, waiting for user to type in a password
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "অনুমোদনের অপেক্ষারত"
 
-#. TRANSLATORS: we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#. TRANSLATORS: transaction state, we are updating the list of processes
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "চলমান অ্যাপ্লিকেশনের তালিকা আপডেট করা হচ্ছে"
 
-#. TRANSLATORS: we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#. TRANSLATORS: transaction state, we are checking executable files currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "ব্যবহৃত অ্যাপ্লিকেশন পরীক্ষা করা হচ্ছে"
 
-#. TRANSLATORS: we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#. TRANSLATORS: transaction state, we are checking for libraries currently in use
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "ব্যবহৃত লাইব্রেরিগুলি পরীক্ষা করা হচ্ছে"
 
+#. TRANSLATORS: transaction state, we are copying package files before or after the transaction
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
+msgid "Copying files"
+msgstr "ফাইল কপি করা হচ্ছে"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
+msgid "Trivial"
+msgstr "সামান্য"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
+msgid "Normal"
+msgstr "সাধারণ"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
+msgid "Important"
+msgstr "গুরুত্বপূর্ণ"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
+msgid "Security"
+msgstr "নিরাপত্তা বিষয়ক"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
+msgid "Bug fix "
+msgstr "বাগ সংশোধন"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
+msgid "Enhancement"
+msgstr "উন্নত বৈশিষ্ট্য"
+
+#. TRANSLATORS: The type of update
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
+msgid "Blocked"
+msgstr "ব্লক করা"
+
+#. TRANSLATORS: The state of a package
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
+msgid "Installed"
+msgstr "ইনস্টল করা হয়েছে"
+
+#. TRANSLATORS: The state of a package, i.e. not installed
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
+msgid "Available"
+msgstr "উপলব্ধ"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
+msgid "Downloading"
+msgstr "ডাউনলোড করা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
+msgid "Updating"
+msgstr "আপডেট করা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
+msgid "Installing"
+msgstr "ইনস্টল করা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
+msgid "Removing"
+msgstr "মুছে ফেলা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
+msgid "Cleaning up"
+msgstr "পরিশ্রুত করা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
+msgid "Obsoleting"
+msgstr "অবচিত করা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
+msgid "Reinstalling"
+msgstr "পুনরায় ইনস্টল করা হচ্ছে"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
+msgid "Downloaded"
+msgstr "ডাউনলোড করা হয়েছে"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
+msgid "Removed"
+msgstr "অপসারিত"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
+msgid "Cleaned up"
+msgstr "পরিশ্রুত করা হয়েছে"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
+msgid "Obsoleted"
+msgstr "অবচিত"
+
+#. TRANSLATORS: The action of the package, in past tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
+msgid "Reinstalled"
+msgstr "পুনরায় ইনস্টল করা হয়েছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
+msgid "Unknown role type"
+msgstr "অজানা ধরনের ভূমিকা"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
+msgid "Getting dependencies"
+msgstr "নির্ভরতার মীমাংসা করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
+msgid "Getting update details"
+msgstr "আপডেটের বিবরণ প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
+msgid "Getting details"
+msgstr "বিবরণ প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
+msgid "Getting requires"
+msgstr "প্রয়োজনীয় সামগ্রীর তালিকা প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
+msgid "Getting updates"
+msgstr "আপডেট প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
+msgid "Searching by details"
+msgstr "বিবরণ অনুযায়ী অনুসন্ধান করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
+msgid "Searching by file"
+msgstr "ফাইল অনুযায়ী অনুসন্ধান করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
+msgid "Searching groups"
+msgstr "দলের অনুযায়ী অনুসন্ধান করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
+msgid "Searching by name"
+msgstr "নাম অনুযায়ী অনুসন্ধান করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
+msgid "Installing files"
+msgstr "ফাইল ইনস্টল করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
+msgid "Refreshing cache"
+msgstr "ক্যাশে নতুন করে তৈরি করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
+msgid "Updating packages"
+msgstr "প্যাকেজ আপডেট করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
+msgid "Updating system"
+msgstr "সিস্টেম আপডেট করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
+msgid "Canceling"
+msgstr "বাতিল করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
+msgid "Getting repositories"
+msgstr "সংগ্রহস্থলের তালিকা প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
+msgid "Enabling repository"
+msgstr "সংগ্রহস্থল সক্রিয় করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
+msgid "Setting data"
+msgstr "তথ্য নির্ধারণ করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
+msgid "Resolving"
+msgstr "মীমাংসা করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
+msgid "Getting file list"
+msgstr "ফাইলের তালিকা প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
+msgid "Getting provides"
+msgstr "উপলব্ধকারী সামগ্রীর তালিকা প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
+msgid "Installing signature"
+msgstr "স্বাক্ষর ইনস্টল করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
+msgid "Getting packages"
+msgstr "প্যাকেজ প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
+msgid "Accepting EULA"
+msgstr "EULA-র শর্তাবলী গ্রহণ করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
+msgid "Getting upgrades"
+msgstr "আপগ্রেড প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
+msgid "Getting categories"
+msgstr "বিভাগ পরীক্ষা করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
+msgid "Getting transactions"
+msgstr "ট্রানস্যাকশন প্রাপ্ত করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
+msgid "Simulating install"
+msgstr "ইনস্টলেশনের অনুকরণ করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
+msgid "Simulating remove"
+msgstr "অপসারণের অনুকরণ করা হচ্ছে"
+
+#. TRANSLATORS: The role of the transaction, in present tense
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
+msgid "Simulating update"
+msgstr "আপডেটের অনুকরণ করা হচ্ছে"
+
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:64
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "স্বাক্ষরবিহীন সফ্টওয়্যারের ইনস্টলেশন অনুমোদন করা হবে কি?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:69
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "স্বাক্ষরবিহীন সফ্টওয়্যার ইনস্টল করা হবে না।"
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:102
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "সফ্টওয়্যার সংগ্রহস্থলের স্বাক্ষর আবশ্যক"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:108
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "সফ্টওয়্যার উৎসের নাম"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:111
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "কি-র URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:114
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "কি ব্যবহারকারী"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:117
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "কি-র ID"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:120
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "কি-র ফিংগারপ্রিন্ট"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:123
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "কি-র সময়ের মান"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:129
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "এই স্বাক্ষর গ্রহণ করা হবে কি?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:134
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "স্বাক্ষর গ্রহণ করা হয়নি।"
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:169
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "ব্যবহারকারীদের লাইসেন্স সংক্রান্ত চুক্তিপত্র আবশ্যক"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:178
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "চুক্তিপত্র"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:184
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "এই চুক্তিপত্রের শর্ত অনুযায়ী কি আপনি সম্মত?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:189
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "চুক্তিপত্রের শর্ত গ্রহণ করা হয়নি।"
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:219
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "মিডিয়া পরিবর্তন করা আবশ্যক"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:222
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "মিডিয়ার ধরন"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:225
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "মিডিয়ার লেবেল"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:228
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "টেক্সট"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:232
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "অনুগ্রহ করে সঠিক মিডিয়া ঢুকিয়ে দিন"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:237
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "সঠিক মিডিয়া ঢোকানো হয়নি।"
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:252
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "নিম্নলিখিত প্যাকেজগুলি অপসারণ করা আবশ্যক:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:257
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "নিম্নলিখিত প্যাকেজগুলি ইনস্টল করা আবশ্যক:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:262
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "নিম্নলিখিত প্যাকেজগুলি আপডেট করা আবশ্যক:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:267
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "নিম্নলিখিত প্যাকেজগুলি পুনরায় ইনস্টল করা আবশ্যক:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:272
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "নিম্নলিখিত প্যাকেজগুলি ডাউনগ্রেড করা আবশ্যক:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:331
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "পরিবর্তনগুলি প্রয়োগ করা হবে কি?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:336
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "ট্রানসাকশানে এগিয়ে যায়নি।"
 
@@ -1566,97 +1869,125 @@ msgid ""
 msgstr "সিস্টেম ডিরেক্টরির মধ্যে org.freedesktop.PackageKit.conf ফাইলটি ইনস্টল করা হয়নি:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "প্যাকেজ করতে ব্যবহৃত ব্যাক-এন্ড, উদাহরণ dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "ডেমন তৈরি করে টার্মিন্যাল থেকে বিচ্ছিন্ন করুন"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "কর্মবিহীন অবস্থাসূচক টাইমার নিষ্ক্রিয় করুন"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "সংস্করণ প্রদর্শন করে প্রস্থান করা হবে"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "স্বল্প বিলম্বের পরে প্রস্থান করা হবে"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "ইঞ্জিন লোড করার পরে প্রস্থান করা হবে"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit পরিসেবা"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "সিস্টেম বাসের সাথে সংযোগ স্থাপন করতে ব্যর্থ"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "আরম্ভ করতে সমস্যা:"
 
-#: ../src/pk-polkit-action-lookup.c:147
+#: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
 msgstr "ডিবাগের জন্য ব্যবহারযোগ্য প্যাকেজ ইনস্টল করার জন্য অতিরিক্ত উৎসস্থল সক্রিয় করা আবশ্যক"
 
 #. TRANSLATORS: is not GPG signed
-#: ../src/pk-polkit-action-lookup.c:168 ../src/pk-polkit-action-lookup.c:187
+#: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
 msgid "The software is not from a trusted source."
 msgstr "বিশ্বস্ত উৎসস্থল থেকে সফ্টওয়্যারটি প্রাপ্ত করা হয়নি।"
 
-#: ../src/pk-polkit-action-lookup.c:173
+#: ../src/pk-polkit-action-lookup.c:176
 msgid "Do not update this package unless you are sure it is safe to do so."
 msgstr ""
 "প্যাকেজের নিরাপত্তা সম্পর্কের সম্পূর্ণরূপে নিশ্চিত না হলে এই প্যাকেজটি আপডেট না করা "
 "উচিত।"
 
-#: ../src/pk-polkit-action-lookup.c:174
+#: ../src/pk-polkit-action-lookup.c:177
 msgid "Do not update these packages unless you are sure it is safe to do so."
 msgstr ""
 "প্যাকেজের নিরাপত্তা সম্পর্কের সম্পূর্ণরূপে নিশ্চিত না হলে এই প্যাকেজগুলি আপডেট না করা "
 "উচিত।"
 
-#: ../src/pk-polkit-action-lookup.c:192
+#: ../src/pk-polkit-action-lookup.c:195
 msgid "Do not install this package unless you are sure it is safe to do so."
 msgstr ""
 "প্যাকেজের নিরাপত্তা সম্পর্কের সম্পূর্ণরূপে নিশ্চিত না হলে এই প্যাকেজটি ইনস্টল না করা "
 "উচিত।"
 
-#: ../src/pk-polkit-action-lookup.c:193
+#: ../src/pk-polkit-action-lookup.c:196
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr ""
 "প্যাকেজের নিরাপত্তা সম্পর্কের সম্পূর্ণরূপে নিশ্চিত না হলে এই প্যাকেজটি আপডেট না করা "
 "উচিত।"
 
 #. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:199
+#: ../src/pk-polkit-action-lookup.c:202
 msgid "Malicious software can damage your computer or cause other harm."
 msgstr ""
 "ক্ষতিকারণ সফ্টওয়্যারের ফলে কম্পিউটারে সমস্যা দেখা দিতে পারে ও অন্যান্য বিপদের আশঙ্কা "
 "রয়েছে।"
 
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:274
+#: ../src/pk-polkit-action-lookup.c:277
 msgid "Many packages"
 msgstr "অত্যাধিক প্যাকেজ"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:334
+#: ../src/pk-polkit-action-lookup.c:343
 msgid "Only trusted"
 msgstr "শুধুমাত্র বিশ্বস্ত"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "সকল ফাইলের জন্য ডিবাগ সংক্রান্ত তথ্য প্রদর্শন করা হবে"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "সুনির্দিষ্ট মডিউলগুলি ডিবাগ করুন"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "সুনির্দিষ্ট ফাংশানগুলি ডিবাগ করুন"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "ডিবাগ সংক্রান্ত তথ্য একটি ফাইলের মধ্যে লগ করা হবে"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "ডিবাগ সংক্রান্ত বিকল্প"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "ডিবাগ সংক্রান্ত বিকল্প প্রদর্শন করা হবে"
+
commit a4529c66f5fac5a121333e1678b84e1e0ecdd73a
Author: jassy <jassy at fedoraproject.org>
Date:   Tue Dec 8 09:41:09 2009 +0000

    Sending translation for Punjabi

diff --git a/po/pa.po b/po/pa.po
index 41a0020..a50c3c3 100644
--- a/po/pa.po
+++ b/po/pa.po
@@ -9,10 +9,10 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master.pa\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-11-07 09:14+0000\n"
-"PO-Revision-Date: 2009-11-07 18:53+0530\n"
-"Last-Translator: A S Alam <aalam at users.sf.net>\n"
-"Language-Team: Punjabi/Panjabi <punjabi-users at lists.sf.net>\n"
+"POT-Creation-Date: 2009-12-08 08:21+0000\n"
+"PO-Revision-Date: 2009-12-08 14:45+0530\n"
+"Last-Translator: Jaswinder Singh <jsingh at redhat.com>\n"
+"Language-Team: Punjabi/Panjabi <kde-i18n-doc at kde.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -20,273 +20,296 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "ਟਰਾਂਸੈਕਸ਼ਨ"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "ਸਿਸਟਮ ਸਮਾਂ"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "ਸਫ਼ਲ"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "ਸਹੀਂ"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "ਗਲਤ"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "ਰੋਲ"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "ਅੰਤਰਾਲ"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(ਸਕਿੰਟ)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "ਕਮਾਂਡ ਲਾਈਨ"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "ਯੂਜ਼ਰ ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "ਯੂਜ਼ਰ ਨਾਂ"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "ਅਸਲੀ ਨਾਂ"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "ਪ੍ਰਭਾਵਿਤ ਪੈਕੇਜ:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "ਪ੍ਰਭਾਵਿਤ ਪੈਕੇਜ: ਕੋਈ ਨਹੀਂ"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "ਡਿਸਟਰੀਬਿਊਸ਼ਨ"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "ਟਾਈਪ"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "ਸੰਖੇਪ"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "ਕੈਟਾਗਰੀ"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "ਮੋਢੀ"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "ਨਾਂ"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "ਆਈਕਾਨ"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "ਅੱਪਡੇਟ ਬਾਰੇ ਵੇਰਵਾ:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:107
-#: ../lib/packagekit-glib2/pk-task-text.c:174
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "ਪੈਕੇਜ"
 msgstr[1] "ਪੈਕੇਜ"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "ਅੱਪਡੇਟ"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "ਬਰਤਰਫ਼"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:177
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "ਵੇਂਡਰ"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "ਬੱਗਜ਼ੀਲਾ"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "ਮੁੜ-ਚਾਲੂ"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "ਅੱਪਡੇਟ ਟੈਕਸਟ"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "ਬਦਲਾਅ"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "ਹਾਲਤ"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "ਜਾਰੀ ਕੀਤਾ"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "ਅੱਪਡੇਟ ਕੀਤੇ"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "ਯੋਗ"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "ਅਯੋਗ"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "ਸਿਸਟਮ ਮੁੜ-ਚਾਲੂ ਕਰਨ ਦੀ ਲੋੜ ਹੈ:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "ਸਿਸਟਮ ਮੁੜ-ਚਾਲੂ ਕਰਨ ਦੀ ਲੋੜ:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "ਸਿਸਟਮ ਮੁੜ-ਚਾਲੂ (ਸੁਰੱਖਿਆ) ਕਰਨ ਦੀ ਲੋੜ ਹੈ:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "ਸਿਸਟਮ ਮੁੜ-ਚਾਲੂ (ਸੁਰੱਖਿਆ) ਕਰਨ ਦੀ ਲੋੜ:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "ਐਪਲੀਕੇਸ਼ਨ ਮੁੜ-ਚਾਲੂ ਕਰਨ ਦੀ ਲੋੜ ਹੈ:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "ਪੈਕੇਜ ਵੇਰਵਾ"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "ਸੁਨੇਹਾ:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "ਕੋਈ ਫਾਇਲ ਨਹੀਂ"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "ਪੈਕੇਜ ਫਾਇਲਾਂ"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "ਪ੍ਰਤੀਸ਼ਤਤਾ"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "ਹਾਲਤ"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "ਨਤੀਜਾ:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "ਘਾਤਕ ਗਲਤੀ"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:430
-#: ../contrib/command-not-found/pk-command-not-found.c:597
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "ਟਰਾਂਸੈਕਸ਼ਨ ਫੇਲ ਹੋਈ"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "ਇਸ ਸਮੇਂ ਕੋਈ ਅੱਪਡੇਟ ਉਪਲੱਬਧ ਨਹੀਂ ਹੈ।"
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "ਅੱਪਡੇਟ ਨੂੰ ਪੂਰਾ ਕਰਨ ਵਾਸਤੇ ਕੰਪਿਊਟਰ ਮੁੜ-ਚਾਲੂ ਕਰੋ ਜੀ।"
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "ਅੱਪਡੇਟ ਨੂੰ ਪੂਰਾ ਕਰਨ ਵਾਸਤੇ ਲਾਗਆਉਟ ਕਰਕੇ ਲਾਗਇਨ ਕਰੋ ਜੀ।"
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
 msgstr "ਅੱਪਡੇਟ ਨੂੰ ਪੂਰਾ ਕਰਨ ਵਾਸਤੇ ਕੰਪਿਊਟਰ ਮੁੜ-ਚਾਲੂ ਕਰੋ ਜੀ, ਕਿਉਂਕਿ ਸੁਰੱਖਿਆ ਅੱਪਡੇਟ ਇੰਸਟਾਲ ਹੋਏ ਹਨ।"
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -294,19 +317,19 @@ msgstr ""
 "ਅੱਪਡੇਟ ਨੂੰ ਪੂਰਾ ਕਰਨ ਵਾਸਤੇ ਲਾਗਆਉਟ ਕਰਕੇ ਲਾਗਇਨ ਕਰੋ ਜੀ, ਕਿਉਂਕਿ ਸੁਰੱਖਿਆ ਅੱਪਡੇਟ ਇੰਸਟਾਲ ਕੀਤੇ ਹਨ।"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "ਇਹ ਟੂਲ ਉਪਲੱਬਧ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭ ਸਕਿਆ: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "ਇਹ ਟੂਲ ਇੰਸਟਾਲ ਕੀਤੇ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭ ਸਕਿਆ: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "ਇਹ ਟੂਲ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭ ਸਕਿਆ: %s"
@@ -315,232 +338,227 @@ msgstr "ਇਹ ਟੂਲ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭ ਸਕਿਆ: %s
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "ਇਹ ਟੂਲ ਸਭ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭ ਸਕਿਆ: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "ਡੈਮਨ ਅਧੂਰੀ ਟਰਾਂਸੈਕਸ਼ਨ ਕਰੈਸ਼ ਹੋ ਗਈ!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "ਪੈਕੇਜਕਿੱਟ ਕਨਸੋਲ ਇੰਟਰਫੇਸ"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "ਸਬ-ਕਮਾਂਡ:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "ਇਸ ਕਾਰਵਾਈ ਦੇ ਆਖਰੀ ਵਾਰ ਪੂਰੀ ਹੋਣ ਤੋਂ ਬਾਅਦ ਸਮਾਂ ਲੈਣ ਲਈ ਫੇਲ੍ਹ ਹੈ"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:989 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:281
-#: ../contrib/command-not-found/pk-command-not-found.c:651
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:512
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "ਹੋਰ ਡੀਬੱਗ ਜਾਣਕਾਰੀ ਵੇਖੋ"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:992 ../client/pk-monitor.c:283
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "ਪਰੋਗਰਾਮ ਵਰਜਨ ਵੇਖੋ ਅਤੇ ਬੰਦ ਕਰੋ"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:995
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "ਫਿਲਟਰ ਸੈੱਟ ਕਰੋ, ਜਿਵੇਂ ਕਿ ਇੰਸਟਾਲ"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:998
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "ਪੂਰੇ ਹੋਣ ਵਾਲੇ ਐਕਸ਼ਨ ਦੀ ਉਡੀਕ ਕੀਤੇ ਬਿਨਾਂ ਬੰਦ ਕਰੋ"
 
 #. command line argument, do we ask questions
-#: ../client/pk-console.c:1001
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
 msgid "Install the packages without asking for confirmation"
 msgstr "ਪੁਸ਼ਟੀ ਕੀਤੇ ਬਿਨਾਂ ਹੀ ਪੈਕੇਜ ਇੰਸਟਾਲ ਕਰੋ"
 
 #. TRANSLATORS: command line argument, this command is not a priority
-#: ../client/pk-console.c:1004
+#: ../client/pk-console.c:1256
 msgid "Run the command using idle network bandwidth and also using less power"
 msgstr "ਕਮਾਂਡ ਨੂੰ ਵੇਹਲੀ ਨੈੱਟਵਰਕ ਬੈਂਡਵਿਦਥ ਦੌਰਾਨ ਚਲਾਓ ਅਤੇ ਘੱਟ ਊਰਜਾ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵੀ"
 
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "ਐਨੀਮੇਟਡ ਵਿਡਜਿਟ ਵਰਤਣ ਦੀ ਬਜਾਏ, ਮਸ਼ੀਨ ਦੇ ਪੜਨ ਯੋਗ ਜਾਣਕਾਰੀ ਸਕਰੀਨ ਤੇ ਪ੍ਰਿੰਟ ਕਰੋ"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1030
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "ਪੈਕੇਜਕਿੱਟ ਨਾਲ ਸੰਪਰਕ ਲਈ ਫੇਲ੍ਹ ਹੈ"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1086
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "ਦਿੱਤਾ ਫਿਲਟਰ ਅਢੁੱਕਵਾਂ ਹੈ।"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1105
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "ਖੋਜ ਕਿਸਮ ਚਾਹੀਦੀ ਹੈ, ਜਿਵੇਂ ਨਾਂ"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1112 ../client/pk-console.c:1124
-#: ../client/pk-console.c:1136 ../client/pk-console.c:1148
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "ਖੋਜ ਸ਼ਬਦ ਦੀ ਲੋੜ ਹੈ"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1158
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "ਗਲਤ ਖੋਜ ਟਾਈਪ"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1164
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਪੈਕੇਜ ਨਾਂ ਲਾਜ਼ਮੀ ਹੈ"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਇੱਕ ਫਾਇਲ ਨਾਂ ਦੀ ਲੋੜ ਹੈ"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1185
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "ਟਾਈਪ, key_id ਜਾਂ package_id ਦੇਣ ਦੀ ਲੋੜ ਹੈ"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1196
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "ਹਟਾਉਣ ਵਾਸਤੇ ਪੈਕੇਜ ਨਾਂ ਚਾਹੀਦਾ ਹੈ"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1205
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "ਡਾਊਨਲੋਡ ਕਰਨ ਵਾਸਤੇ ਟਿਕਾਣਾ ਡਾਇਰੈਕਟਰੀ ਅਤੇ ਪੈਕੇਜ ਨਾਂ ਲਾਜ਼ਮੀ ਹੈ"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1212
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "ਡਾਇਰੈਕਟਰੀ ਨਹੀਂ ਲੱਭੀ"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1221
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "ਇੱਕ ਲਾਈਸੈਂਸ ਪਛਾਣਕਰਤਾ (eula-id) ਲਾਜ਼ਮੀ ਹੈ"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1232
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "ਟਰਾਂਸੈਕਸ਼ਨ ਪਛਾਣ (tid) ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1253
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "ਹੱਲ ਕਰਨ ਲਈ ਪੈਕੇਜ ਨਾਂ ਲਾਜ਼ਮੀ ਹੈ"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1264 ../client/pk-console.c:1275
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "ਰਿਪੋਜ਼ਟਰੀ ਨਾਂ ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1286
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "ਰੈਪੋ ਨਾਂ, ਪੈਰਾਮੀਟਰ ਅਤੇ ਮੁੱਲ ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1303
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "ਕਾਰਵਾਈ, ਜਿਵੇਂ 'ਅੱਪਡੇਟ-ਸਿਸਟਮ' ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1310
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "ਠੀਕ ਰੋਲ ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1320 ../client/pk-console.c:1335
-#: ../client/pk-console.c:1344 ../client/pk-console.c:1364
-#: ../client/pk-console.c:1373 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "ਪੈਕੇਜ ਨਾਂ ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1353
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "ਪੈਕੇਜ ਦੇਣ ਵਾਲੀ ਸਤਰ ਲੋੜੀਦੀ ਹੈ"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1433
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "ਚੋਣ '%s' ਸਹਾਇਕ ਨਹੀਂ ਹੈ"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1443
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "ਕਮਾਂਡ ਫੇਲ੍ਹ ਹੈ"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "ਨਿਰਭਰਤਾ ਲਈ ਫਾਇਲ ਨਾਂ ਦਿਓ, ਜਿਸ ਨੂੰ ਵੱਖ ਰੱਖਿਆ ਜਾਵੇ"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "ਆਉਟਪੁੱਟ ਫਾਇਲ ਜਾਂ ਡਾਇਰੈਕਟਰੀ (ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਵਰਤੀ ਜਾਵੇਗੀ, ਜੇ ਨਾ ਦਿੱਤੀ)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "ਸਰਵਿਸ ਪੈਕ ਵਿੱਚ ਰੱਖਣ ਵਾਸਤੇ ਪੈਕੇਜ"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "ਸਰਵਿਸ ਪੈਕ ਵਿੱਚ ਸਭ ਉਪਲੱਬਧ ਅੱਪਡੇਟ ਰੱਖੋ"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "ਨਾ ਤਾਂ --package ਚੋਣ ਕੀਤੀ ਗਈ ਅਤੇ ਨਾ ਹੀ --updates"
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "ਦੋਵੇਂ ਚੋਣਾਂ ਕੀਤੀਆਂ।"
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "ਆਉਟਪੁੱਟ ਡਾਇਰੈਕਟਰੀ ਅਤੇ ਫਾਇਲ ਨਾਂ ਲੋੜੀਦਾ ਹੈ"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "ਡੈਮਨ ਚਾਲੂ ਹੋਣ ਤੋਂ ਫੇਲ"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "ਪੈਕੇਜ ਮੈਨੇਜਰ ਇਸ ਕਿਸਮ ਦੀ ਕਾਰਵਾਈ ਨਹੀਂ ਕਰ ਸਕਦਾ ਹੈ।"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -549,118 +567,118 @@ msgstr ""
 "ਗਿਆ ਹੈ।"
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "ਜੇ ਫਾਇਲ ਦਿੱਤੀ ਤਾਂ ਸਰਵਿਸ ਪੈਕ ਨਾਂ ਖਤਮ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "ਇਸ ਨਾਂ ਨਾਲ ਪੈਕ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ, ਕੀ ਇਸ ਉੱਤੇ ਲਿਖਣਾ ਹੈ?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "ਪੈਕ ਉੱਤੇ ਨਹੀਂ ਲਿਖਿਆ ਜਾਵੇਗਾ।"
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "ਡਾਇਰੈਕਟਰੀ ਬਣਾਉਣ ਲਈ ਫੇਲ੍ਹ ਹੈ:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "ਪੈਕੇਜ ਲਿਸਟ ਖੋਲ੍ਹਣ ਲਈ ਫੇਲ੍ਹ ਹੈ।"
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "ਪੈਕੇਜ ਨਾਂ ਲੱਭਿਆ ਜਾ ਰਿਹਾ ਹੈ।"
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "'%s' ਪੈਕੇਜ ਖੋਜਣ ਲਈ ਫੇਲ੍ਹ ਹੈ: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "ਸਰਵਿਸ ਪੈਕ ਬਣਾਇਆ ਜਾ ਰਿਹਾ ਹੈ..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "ਸਰਵਿਸ ਪੈਕ ਬਣਾਇਆ '%s'"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' ਬਣਾਉਣ ਲਈ ਫੇਲ੍ਹ: %s"
 
-#: ../client/pk-monitor.c:211
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "ਡੈਮਨ ਹਾਲਤ ਪਤਾ ਕਰਨ ਲਈ ਫੇਲ੍ਹ ਹੈ।"
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:299
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "ਪੈਕੇਜਕਿੱਟ ਮਾਨੀਟਰ"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "ਪੈਕੇਜ ਜਾਣਕਾਰੀ ਲਈ ਜਾ ਰਹੀ ਹੈ..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s ਚਲਾਓ"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "ਇੰਸਟਾਲ ਕੀਤੇ ਵਰਜਨ"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "ਵਰਜਨ %s ਹੁਣੇ ਚਲਾਓ"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "ਹੁਣੇ ਚਲਾਓ"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "ਵਰਜਨ %s ਲਈ ਅੱਪਡੇਟ ਕਰੋ"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "%s ਹੁਣੇ ਇੰਸਟਾਲ ਕਰੋ"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "ਵਰਜਨ"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "ਤੁਹਾਡੇ ਸਿਸਟਮ ਉੱਤੇ ਕੋਈ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭਿਆ"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "ਇੰਸਟਾਲ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."
 
@@ -685,76 +703,76 @@ msgid "Loading list of packages."
 msgstr "ਪੈਕੇਜ ਲਿਸਟ ਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ।"
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:421
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "ਫਾਇਲ ਲਈ ਖੋਜ ਫੇਲ੍ਹ ਹੈ"
 
 #. TRANSLATORS: we failed to launch the executable, the error follows
-#: ../contrib/command-not-found/pk-command-not-found.c:560
+#: ../contrib/command-not-found/pk-command-not-found.c:566
 msgid "Failed to launch:"
 msgstr "ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ:"
 
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:588
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "ਪੈਕੇਜ ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਫੇਲ੍ਹ"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:667
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "ਪੈਕੇਜਕਿੱਟ ਕਮਾਂਡ ਨਹੀਂ ਲੱਭੀ"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "ਕਮਾਂਡ ਨਹੀਂ ਲੱਭੀ।"
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:704
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "ਰਲਦੀ ਕਮਾਂਡ ਹੈ:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:714
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "ਰਲਦੀ ਕਮਾਂਡ ਚਲਾਓ:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:728
-#: ../contrib/command-not-found/pk-command-not-found.c:737
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "ਰਲਦੀਆਂ ਕਮਾਂਡਾਂ ਹਨ:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:744
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "ਚਲਾਉਣ ਲਈ ਕਮਾਂਡ ਦੀ ਚੋਣ ਕਰੋ ਜੀ"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:760
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "ਪੈਕੇਜ ਇਹ ਫਾਇਲ ਦਿੰਦਾ ਹੈ:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:765
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "ਕਮਾਂਡ '%2$s' ਦੇਣ ਲਈ ਪੈਕੇਜ '%1$s' ਇੰਸਟਾਲ ਕਰਨਾ ਹੈ?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:789
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "ਪੈਕੇਜ ਇਹ ਫਾਇਲ ਦਿੰਦਾ ਹੈ:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:799
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "ਢੁੱਕਵੇਂ ਪੈਕੇਜ ਹਨ:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:808
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਪੈਕੇਜ ਚੁਣੋ ਜੀ"
 
@@ -770,183 +788,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "ਪੈਕੇਜ %s ਲੱਭਣ ਵਿੱਚ ਫੇਲ, ਜਾਂ ਪਹਿਲਾਂ ਹੀ ਇੰਸਟਾਲ ਹੈ: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:515
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "ਅਸਲ ਵਿੱਚ ਕੋਈ ਪੈਕੇਜ ਇੰਸਟਾਲ ਨਾ ਕਰੋ, ਸਿਰਫ ਪਤਾ ਕਰੋ ਕਿ ਕੀ ਇੰਸਟਾਲ ਕੀਤਾ ਜਾਵੇਗਾ"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "ਕੋਰ ਪੈਕੇਜਾਂ ਦੀ ਨਿਰਭਰਤਾ ਇੰਸਟਾਲ ਨਾ ਕਰੋ"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "ਜਾਣਕਾਰੀ ਜਾਂ ਤਰੱਕੀ ਨਾ ਵੇਖੋ"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:539
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "ਪੈਕੇਜਕਿੱਟ Debuginfo ਇੰਸਟਾਲਰ"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:554
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "ਗਲਤੀ: ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਪੈਕੇਜ ਨਾਂ ਦਿਓ।"
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:590
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "ਸਰੋਤ ਲਿਸਟ ਲਈ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:600
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:675
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:759
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:803
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:870
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:914
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "ਫੇਲ੍ਹ ਹੋਇਆ।"
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:615
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:655
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:690
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:774
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:818
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:885
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:929
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ਠੀਕ ਹੈ।"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:618
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i ਯੋਗ ਅਤੇ %i ਅਯੋਗ ਸਰੋਤ ਲੱਭੇ ਹਨ।"
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:625
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "ਡੀਬੱਗਿੰਗ ਸਰੋਤ ਲੱਭ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:658
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i ਅਯੋਗ debuginfo ਰਿਪੋ ਲੱਭੀਆਂ ਹਨ।"
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:665
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "ਡੀਬੱਗਿੰਗ ਸਰੋਤ ਯੋਗ ਕਰ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:693
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i ਡੀਬੱਗਿੰਗ ਸਰੋਤ ਯੋਗ ਕੀਤਾ ਹੈ।"
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:700
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "ਡੀਬੱਗਿੰਗ ਪੈਕੇਜ ਲੱਭਿਆ ਜਾ ਰਿਹਾ ਹੈ।"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:712
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "%s ਪੈਕੇਜ ਖੋਜਣ ਲਈ ਫੇਲ੍ਹ ਹੈ: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:735
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "ਡੀਬੱਗ ਪੈਕੇਜ %s ਖੋਜਣ ਲਈ ਫੇਲ੍ਹ ਹੈ: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ ਕੋਈ ਨਵਾਂ ਪੈਕੇਜ ਨਹੀਂ ਲੱਭਿਆ।"
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:777
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i ਪੈਕੇਜ ਲੱਭਿਆ:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:793
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "ਪੈਕੇਜ ਲੱਭ ਰਿਹਾ ਜੋ ਇਹਨਾਂ ਪੈਕੇਜਾਂ ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:806
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "ਨਿਰਭਰ ਪੈਕੇਜ ਖੋਜ ਨਹੀਂ ਸਕਿਆ: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:822
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "%i ਵਾਧੂ ਪੈਕੇਜ ਲੱਭੇ ਹਨ।"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:826
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "ਕੋਈ ਵਾਧੂ ਪੈਕੇਜ ਨਹੀਂ ਲੋੜੀਂਦਾ ਹੈ।"
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:835
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "ਇੰਸਟਾਲ ਕਰਨ ਲਈ %i ਪੈਕੇਜ ਲੱਭਿਆ ਹੈ:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:848
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "ਸਿਮੂਲੇਟ ਮੋਡ ਵਿੱਚ ਪੈਕੇਜ ਇੰਸਟਾਲ ਨਹੀਂ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:860
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "ਪੈਕੇਜ ਇੰਸਟਾਲ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:873
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "ਪੈਕੇਜ ਇੰਸਟਾਲ ਨਹੀਂ ਕਰ ਸਕਿਆ: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:905
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "ਪਹਿਲਾਂ ਯੋਗ ਕੀਤੇ ਸਰੋਤ ਅਯੋਗ ਕਰ ਰਿਹਾ"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:917
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "ਡੀਬੱਗਿੰਗ ਸਰੋਤ ਨੂੰ ਅਯੋਗ ਨਹੀਂ ਕਰ ਸਕਿਆ: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:932
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "%i ਡੀਬੱਗਿੰਗ ਸਰੋਤ ਅਯੋਗ ਕੀਤੇ ਹਨ।"
@@ -992,6 +1010,10 @@ msgstr "ਜੰਤਰ ਟਿਕਾਣਾ ਨਹੀਂ ਲੱਭਿਆ"
 msgid "Incorrect device path specified"
 msgstr "ਗਲਤ ਜੰਤਰ ਟਿਕਾਣਾ ਦਿੱਤਾ ਹੈ"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "ਹੋਰ ਡੀਬੱਗ ਜਾਣਕਾਰੀ ਵੇਖੋ"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1055,598 +1077,598 @@ msgid "Please enter a number from 1 to %i: "
 msgstr "੧ ਤੋਂ %i ਤੱਕ ਨੰਬਰ ਦਿਓ ਜੀ:"
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:181
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "ਇੱਕ ਤੋਂ ਵੱਧ ਰਲਦੇ ਪੈਕੇਜ ਲੱਭੇ:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:190
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "ਠੀਕ ਪੈਕੇਜ ਚੁਣੋ ਜੀ:"
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "ਅਣਜਾਣ ਹਾਲਤ"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "ਸ਼ੁਰੂ ਹੋ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "ਕਤਾਰ ਵਿੱਚ ਉਡੀਕ ਜਾਰੀ"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "ਚੱਲ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "ਕਿਊਰੀ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "ਜਾਣਕਾਰੀ ਲਈ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "ਪੈਕੇਜ ਹਟਾਏ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "ਪੈਕੇਜ ਡਾਊਨਲੋਡ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "ਸਾਫਟਵੇਅਰ ਲਿਸਟ ਤਾਜ਼ਾ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "ਅੱਪਡੇਟ ਇੰਸਟਾਲ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "ਪੈਕੇਜ ਸਾਫ਼ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "ਪੈਕੇਜ ਬਰਤਰਫ਼ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "ਨਿਰਭਰਤਾ ਹੱਲ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "ਦਸਤਖਤ ਚੈੱਕ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "ਰੋਲ ਬੈਕ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "ਤਬਦੀਲੀਆਂ ਦੀ ਜਾਂਚ ਹੋ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "ਤਬਦੀਲੀਆਂ ਕਮਿੱਟ ਕਰ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "ਡਾਟਾ ਮੰਗਿਆ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "ਮੁਕੰਮਲ ਕਰ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "ਰੱਦ ਕਰ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "ਰਿਪੋਜ਼ਟਰੀ ਜਾਣਕਾਰੀ ਡਾਊਨਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "ਪੈਕੇਜ ਲਿਸਟ ਡਾਊਨਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "ਫਾਇਲ ਲਿਸਟਾਂ ਡਾਊਨਲੋਡ ਕੀਤੀਆਂ ਜਾ ਰਹੀਆਂ ਹਨ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "ਬਦਲਾਅ ਲਈ ਲਿਸਟ ਡਾਊਨਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "ਗਰੁੱਡ ਡਾਊਨਲੋਡ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "ਅੱਪਡੇਟ ਜਾਣਕਾਰੀ ਡਾਊਨਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "ਫਾਇਲਾਂ ਮੁੜ-ਪੈਕ ਕੀਤੀਆਂ ਜਾ ਰਹੀਆਂ ਹਨ"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "ਕੈਸ ਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "ਐਪਲੀਕੇਸ਼ਨਾਂ ਸਕੈਨ ਕੀਤੀਆਂ ਜਾ ਰਹੀਆਂ ਹਨ"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "ਪੈਕੇਜ ਲਿਸਟ ਬਣਾਈ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "ਪੈਕੇਜ ਮੈਨੇਜਰ ਲਾਕ ਦੀ ਉਡੀਕ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "ਪ੍ਰਮਾਣਿਕਤਾ ਲਈ ਉਡੀਕ ਜਾਰੀ"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "ਚੱਲਦੀ ਐਪਲੀਕੇਸ਼ਨ ਅੱਪਡੇਟ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "ਵਰਤੋਂ ਅਧੀਨ ਐਪਲੀਕੇਸ਼ਨਾਂ ਦੀ ਜਾਂਚ ਹੋ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "ਵਰਤੋਂ ਅਧੀਨ ਲਾਇਬਰੇਰੀਆਂ ਦੀ ਜਾਂਚ ਹੋ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:386
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "ਫਾਇਲਾਂ ਕਾਪੀ ਕੀਤੀਆਂ ਜਾ ਰਹੀਆਂ ਹਨ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "ਥੋੜਾ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "ਸਧਾਰਨ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "ਜ਼ਰੂਰੀ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "ਸੁਰੱਖਿਆ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "ਬੱਗ ਫਿਕਸ "
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "ਸੋਧ"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:428
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "ਬਲਾਕ ਕੀਤੇ"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:433
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "ਇੰਸਟਾਲ ਕੀਤੇ"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:438
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "ਉਪਲੱਬਧ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "ਡਾਊਨਲੋਡ ਜਾਰੀ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "ਅੱਪਡੇਟ ਜਾਰੀ"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "ਇੰਸਟਾਲ ਕਰਨਾ ਜਾਰੀ"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "ਹਟਾਇਆ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "ਸਾਫ਼ ਕਰਨਾ ਜਾਰੀ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "ਬਰਤਰ਼ਫ ਜਾਰੀ"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:480
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "ਮੁੜ-ਇੰਸਟਾਲ ਕਰਨਾ ਜਾਰੀ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "ਡਾਊਨਲੋਡ ਕੀਤੇ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "ਹਟਾਏ ਗਏ ਹਨ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "ਸਾਫ਼ ਕੀਤੇ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "ਬਰਤਰਫ਼ ਕੀਤੇ"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:522
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "ਮੁੜ-ਇੰਸਟਾਲ ਕੀਤੇ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "ਅਣਜਾਣ ਰੋਲ ਕਿਸਮ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "ਨਿਰਭਰਤਾ ਲੈ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "ਅੱਪਡੇਟ ਜਾਣਕਾਰੀ ਲਈ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "ਵੇਰਵਾ ਲਿਆ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "ਲੋੜੀਦੇ ਪੈਕੇਜ ਲਏ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "ਅੱਪਡੇਟ ਲਏ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "ਵੇਰਵੇ ਮੁਤਾਬਕ ਖੋਜ ਜਾਰੀ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "ਫਾਇਲ ਮੁਤਾਬਕ ਖੋਜ ਜਾਰੀ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "ਗਰੁੱਪ ਮੁਤਾਬਕ ਖੋਜ ਜਾਰੀ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "ਨਾਂ ਮੁਤਾਬਕ ਖੋਜ ਜਾਰੀ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "ਫਾਇਲਾਂ ਇੰਸਟਾਲ ਕੀਤੀਆਂ ਜਾ ਰਹੀਆਂ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "ਕੈਸ਼ ਮੁੜ-ਤਾਜ਼ਾ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "ਪੈਕੇਜ ਅੱਪਡੇਟ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "ਸਿਸਟਮ ਅੱਪਡੇਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "ਰੱਦ ਕਰ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "ਰਿਪੋਜ਼ਟਰੀ ਲਈ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "ਰਿਪੋਜ਼ਟਰੀ ਚਾਲੂ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "ਡਾਟਾ ਸੈੱਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "ਹੱਲ਼ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "ਫਾਇਲ ਲਿਸਟ ਲਈ ਜਾ ਰਹੀ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "ਦੇਣ ਵਾਲੇ ਪੈਕੇਜ ਲਏ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "ਦਸਤਖਤ ਇੰਸਟਾਲ ਕੀਤੇ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "ਪੈਕੇਜ ਲਏ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULA ਮਨਜ਼ੂਰ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "ਅੱਪਗਰੇਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "ਕੈਟਾਗਰੀਆਂ ਲਈਆਂ ਜਾ ਰਹੀਆਂ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "ਟਰਾਂਸੈਕਸ਼ਨ ਲਏ ਜਾ ਰਹੇ ਹਨ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "ਇੰਸਟਾਲ ਕਰਨ ਦੀ ਨਕਲ ਜਾਰੀ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "ਹਟਾਉਣ ਦੀ ਨਕਲ ਜਾਰੀ"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:676
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "ਅੱਪਡੇਟ ਦੀ ਨਕਲ ਜਾਰੀ"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:66
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "ਕੀ ਤੁਸੀਂ ਨਾ-ਸਾਈਨ ਕੀਤੇ ਸਾਫਟਵੇਅਰ ਇੰਸਟਾਲ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:71
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "ਨਾ-ਸਾਈਨ ਕੀਤੇ ਸਾਫਟਵੇਅਰ ਇੰਸਟਾਲ ਨਹੀਂ ਕੀਤਾ ਜਾਣਗੇ।"
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:104
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "ਸਾਫਟਵੇਅਰ ਸਰੋਤ ਦਸਤਖਤ ਲੋੜੀਂਦੇ"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:110
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "ਸਾਫਟਵੇਅਰ ਸਰੋਤ ਨਾਂ"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:113
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "ਕੁੰਜੀ URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:116
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "ਕੁੰਜੀ ਯੂਜ਼ਰ"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:119
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "ਕੁੰਜੀ ID"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:122
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "ਕੁੰਜੀ ਫਿੰਗਰਪਰਿੰਟ"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:125
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "ਕੁੰਜੀ ਟਾਈਮਸਟੈਂਪ"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:131
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "ਕੀ ਤੁਸੀਂ ਇਹ ਦਸਤਖਤ ਮਨਜ਼ੂਰ ਕਰਦੇ ਹੋ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:136
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "ਦਸਤਖਤ ਮਨਜ਼ੂਰ ਨਹੀਂ ਸਨ।"
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:171
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "ਅੰਤਮ ਯੂਜ਼ਰ ਲਾਈਸੈਂਸ ਇਕਰਾਰਨਾਮਾ ਲੋੜੀਂਦਾ"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:180
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "ਇਕਰਾਰਨਾਮਾ"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:186
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "ਕੀ ਤੁਸੀਂ ਇਹ ਇਕਰਾਰਨਾਮਾ ਮਨਜ਼ੂਰ ਕਰਦੇ ਹੋ?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:191
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "ਇਕਰਾਰਨਾਮਾ ਮਨਜ਼ੂਰ ਨਹੀਂ ਕੀਤਾ ਸੀ।"
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:221
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "ਮੀਡਿਆ ਬਦਲਣ ਦੀ ਲੋੜ ਹੈ"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:224
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "ਮੀਡਿਆ ਕਿਸਮ"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:227
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "ਮੀਡਿਆ ਲੇਬਲ"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:230
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "ਟੈਕਸਟ"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:234
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "ਠੀਕ ਮੀਡਿਆ ਚੁਣੋ ਜੀ"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:239
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "ਠੀਕ ਮੀਡਿਆ ਨਹੀਂ ਪਾਇਆ।"
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:254
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "ਅੱਗੇ ਦਿੱਤੇ ਪੈਕੇਜਾਂ ਨੂੰ ਹਟਾਇਆ ਜਾਵੇਗਾ:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:259
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "ਅੱਗੇ ਦਿੱਤੇ ਪੈਕੇਜਾਂ ਨੂੰ ਇੰਸਟਾਲ ਕੀਤਾ ਜਾਵੇਗਾ:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:264
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "ਅੱਗੇ ਦਿੱਤੇ ਪੈਕੇਜਾਂ ਨੂੰ ਅੱਪਡੇਟ ਕੀਤਾ ਜਾਵੇਗਾ:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:269
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "ਅੱਗੇ ਦਿੱਤੇ ਪੈਕੇਜਾਂ ਨੂੰ ਮੁੜ-ਇੰਸਟਾਲ ਜਾਵੇਗਾ:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:274
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "ਅੱਗੇ ਦਿੱਤੇ ਪੈਕੇਜਾਂ ਨੂੰ ਡਾਊਨਗਰੇਡ ਕੀਤਾ ਜਾਵੇਗਾ:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:324
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "ਬਦਲਾਅ ਜਾਰੀ ਰੱਖਣੇ ਹਨ?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:329
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "ਟਰਾਂਸੈਕਸ਼ਨ ਪੂਰੀ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ।"
 
@@ -1843,47 +1865,47 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf ਫਾਇਲ ਸਿਸਟਮ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਇੰਸਟਾਲ ਨਹੀਂ ਹੈ।"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "ਵਰਤਣ ਲਈ ਪੈਕੇਜਿੰਗ ਬੈਕਐਂਡ, ਜਿਵੇਂ ਕਿ ਫ਼ਰਜ਼ੀ"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "ਡੈਮੇਨਾਈਜ਼ ਅਤੇ ਟਰਮੀਨਲ ਤੋਂ ਵੱਖ"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "ਵੇਹਲਾ ਟਾਈਮਰ ਆਯੋਗ"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "ਵਰਜਨ ਵੇਖਾ ਕੇ ਬੰਦ ਕਰੋ"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "ਥੋੜ੍ਹੀ ਦੇਰ ਬਾਅਦ ਬੰਦ ਕਰੋ"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "ਇੰਜਣ ਲੋਡ ਕਰਨ ਦੇ ਬਾਅਦ ਬੰਦ ਕਰੋ"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "ਪੈਕੇਜਕਿੱਟ ਸਰਵਿਸ"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "ਸਿਸਟਮ ਬੱਸ ਨਾਲ ਕੁਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਗਲਤੀ:"
 
@@ -1912,20 +1934,46 @@ msgstr "ਇਸ ਪੈਕੇਜ ਨੂੰ ਇੰਸਟਾਲ ਨਾ ਕਰੋ ਜ
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "ਇਹਨਾਂ ਪੈਕੇਜਾਂ ਨੂੰ ਇੰਸਟਾਲ ਨਾ ਕਰੋ ਜਦੋਂ ਤੱਕ ਤੁਹਾਨੂੰ ਇਸ ਬਾਰੇ ਪਤਾ ਨਹੀਂ।"
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "ਗਲਤ ਸਾਫਟਵੇਅਰ ਤੁਹਾਡੇ ਕੰਪਿਊਟਰ ਨੂੰ ਖਰਾਬ ਜਾਂ ਹੋਰ ਨੁਕਸਾਨ ਕਰ ਸਕਦਾ ਹੈ।"
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "ਬਹੁਤੇ ਪੈਕੇਜ"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "ਸਿਰਫ ਭਰੋਸੇਯੋਗ"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "ਸਭ ਫਾਇਲਾਂ ਲਈ ਡੀਬੱਗਿੰਗ ਜਾਣਕਾਰੀ ਵੇਖਾਓ"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "ਇਹਨਾਂ ਖਾਸ ਮੈਡਿਊਲਾਂ ਨੂੰ ਡੀਬੱਗ ਕਰੋ"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "ਇਹਨਾਂ ਖਾਸ ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਡੀਬੱਗ ਕਰੋ"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "ਡੀਬੱਗਿੰਗ ਡਾਟੇ ਨੂੰ ਇੱਕ ਫਾਇਲ ਵਿੱਚ ਰੱਖੋ"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "ਡੀਬੱਗਿੰਗ ਚੋਣਾਂ"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "ਡੀਬੱਗਿੰਗ ਚੋਣਾਂ ਵੇਖਾਓ"
+
+#~ msgid "Malicious software can damage your computer or cause other harm."
+#~ msgstr "ਗਲਤ ਸਾਫਟਵੇਅਰ ਤੁਹਾਡੇ ਕੰਪਿਊਟਰ ਨੂੰ ਖਰਾਬ ਜਾਂ ਹੋਰ ਨੁਕਸਾਨ ਕਰ ਸਕਦਾ ਹੈ।"
+
 #~ msgid "Transaction failed with no error"
 #~ msgstr "ਬਿਨਾਂ ਕਿਸੇ ਗਲਤੀ ਟਰਾਂਸੈਕਸ਼ਨ ਫੇਲ ਹੋਈ"
commit 7ea1be283c8c9577eeb74c55a1ba06cb3708147e
Author: rajesh <rajesh at fedoraproject.org>
Date:   Tue Dec 8 08:10:50 2009 +0000

    Sending translation for Hindi

diff --git a/po/hi.po b/po/hi.po
index d7baeb0..920665d 100644
--- a/po/hi.po
+++ b/po/hi.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-09-25 02:41+0000\n"
-"PO-Revision-Date: 2009-09-25 13:15+0530\n"
+"POT-Creation-Date: 2009-12-08 02:28+0000\n"
+"PO-Revision-Date: 2009-12-08 13:40+0530\n"
 "Last-Translator: Rajesh Ranjan <rajesh672 at gmail.com>\n"
 "Language-Team: Hindi <hindi.sf.net>\n"
 "MIME-Version: 1.0\n"
@@ -21,268 +21,292 @@ msgstr ""
 "\n"
 "\n"
 "\n"
+"\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:143
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "लेनदेन"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:145
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "सिस्टम समय"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "सफल"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "सही"
 
-#: ../client/pk-console.c:147
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "गलत"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:149 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "भूमिका"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "अवधि"
 
-#: ../client/pk-console.c:154
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(सेकेंड)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:158 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "कमांड लाइन"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:160
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "उपयोक्ता ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:167
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "उपयोक्ता नाम"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:171
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "वास्तविक नाम"
 
-#: ../client/pk-console.c:179
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "प्रभावित संकुल:"
 
-#: ../client/pk-console.c:181
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "प्रभावित संकुल: कुछ नहीं"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "वितरण"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:203
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "क़िस्म"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:205 ../client/pk-console.c:226
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "सारांश"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:215
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "श्रेणी"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:217
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:220
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "पैरेंट"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:223
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "नाम"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:229
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "प्रतीक"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:243
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "अद्यतन के बारे में विवरण:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:249 ../lib/packagekit-glib2/pk-task-text.c:105
-#: ../lib/packagekit-glib2/pk-task-text.c:172
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../lib/packagekit-glib2/pk-task-text.c:208
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "संकुल"
 msgstr[1] "संकुल"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:252
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "अद्यतन"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:256
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "पुराना"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:260 ../lib/packagekit-glib2/pk-task-text.c:175
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "विक्रेता"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:264
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "बगजिला"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:268
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:272
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "फिर से  चालू करें"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:276
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "पाठ अद्यतन करें"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "परिवर्तन"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:284
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "स्थिति"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:289
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "निर्गत"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:294 ../lib/packagekit-glib2/pk-console-shared.c:498
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "अद्यतन किया गया"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:312
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "सक्षम"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:315
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "अक्षम"
 
 #. TRANSLATORS: a package requires the system to be restarted
-#: ../client/pk-console.c:337
+#: ../client/pk-console.c:460
 msgid "System restart required by:"
 msgstr "तंत्र पुनःप्रारंभ इनके द्वारा जरूरी:"
 
 #. TRANSLATORS: a package requires the session to be restarted
-#: ../client/pk-console.c:340
+#: ../client/pk-console.c:463
 msgid "Session restart required:"
 msgstr "सत्र पुनःप्रारंभ जरूरी:"
 
 #. TRANSLATORS: a package requires the system to be restarted due to a security update
-#: ../client/pk-console.c:343
+#: ../client/pk-console.c:466
 msgid "System restart (security) required by:"
 msgstr "तंत्र पुनःप्रारंभ (सुरक्षा) इनके द्वारा जरूरी:"
 
 #. TRANSLATORS: a package requires the session to be restarted due to a security update
-#: ../client/pk-console.c:346
+#: ../client/pk-console.c:469
 msgid "Session restart (security) required:"
 msgstr "तंत्र पुनःप्रारंभ (सुरक्षा) जरूरी:"
 
 #. TRANSLATORS: a package requires the application to be restarted
-#: ../client/pk-console.c:349
+#: ../client/pk-console.c:472
 msgid "Application restart required by:"
 msgstr "अनुप्रयोग पुनःप्रारंभ इसके द्वारा जरूरी:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:366
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "संकुल विवरण"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:384
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "संदेशः"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:398
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "कोई फ़ाइल नहीं"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:403
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "संकुल फ़ाइल"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "प्रतिशत"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "स्थिति"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "परिणाम:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:475
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "गंभीर त्रुटि"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:484
-#: ../contrib/command-not-found/pk-command-not-found.c:422
-#: ../contrib/command-not-found/pk-command-not-found.c:563
+#: ../client/pk-console.c:694
+#: ../contrib/command-not-found/pk-command-not-found.c:432
+#: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "लेनदेन विफल"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "इस समय कोई अद्यतन उपलब्ध नहीं है."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:552
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "कृपया अद्यतन पूरी करने के लिए कंप्यूटर पुनःप्रारंभ करें."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:555
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "कृपया अद्यतन पूरा करने के लिए लॉगआउट और लॉगिन करें"
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:558
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -291,7 +315,7 @@ msgstr ""
 "संस्थापित किया जाना है."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:561
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
@@ -300,19 +324,19 @@ msgstr ""
 "को संस्थापित किया जाना है."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:584
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "यह औजार किसी उपलब्ध संकुल को नहीं ढूँढ़ सका: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:612
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "यह औजार संस्थापित संकुल को नहीं ढूँढ सका: %s"
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:640 ../client/pk-console.c:668
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "यह औजार संकुल को नहीं ढूँढ़ सका: %s"
@@ -321,221 +345,227 @@ msgstr "यह औजार संकुल को नहीं ढूँढ़
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:696 ../client/pk-console.c:724
-#: ../client/pk-console.c:752 ../client/pk-console.c:780
-#: ../client/pk-console.c:808
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "यह औजार संकुल को नहीं ढ़ूँढ़ सका: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:837
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "यह डेमॉन मध्य विनिमय में क्रैश कर गया!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:871
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "पैकेजकिट कंसोल अंतरफलक"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:873
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "उपकमांड:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:952
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
 msgstr "समय पाने में विफल क्योंकि यह काम अंतिम में पूरा किया गया था"
 
-#. TRANSLATORS: command line argument, if we should show debugging information
-#. TRANSLATORS: if we should show debugging data
-#: ../client/pk-console.c:987 ../client/pk-generate-pack.c:223
-#: ../client/pk-monitor.c:276
-#: ../contrib/command-not-found/pk-command-not-found.c:616
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:511
-#: ../contrib/device-rebind/pk-device-rebind.c:293 ../src/pk-main.c:211
-msgid "Show extra debugging information"
-msgstr "अतिरिक्त डिबगिंग सूचना दिखाएं"
-
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:990 ../client/pk-monitor.c:278
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "प्रोग्राम संस्करण दिखाएँ और बाहर निकलें"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:993
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "फ़िल्टर सेट करें, उदा. संस्थापित"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:996
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "पूरा होने के लिए क्रिया के लिए प्रतीक्षारत रहे बिना बाहर निकलें"
 
+#. command line argument, do we ask questions
+#: ../client/pk-console.c:1253
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
+msgid "Install the packages without asking for confirmation"
+msgstr "संपुष्टि के लिए संकुलों को बिना पूछे संस्थापित करें"
+
+#. TRANSLATORS: command line argument, this command is not a priority
+#: ../client/pk-console.c:1256
+msgid "Run the command using idle network bandwidth and also using less power"
+msgstr "निष्क्रिय संजाल बैंडबिड्थ और कम बिजली के प्रयोग से कमांड चलाएँ"
+
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid "Print to screen a machine readable output, rather than using animated widgets"
+msgstr "मशीन द्वारा पठनीय आउटपुट रूप में स्क्रीन पर छापें, बजाय चलंत छवि के प्रयोग के"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1022
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "PackageKit से संपर्क करने में विफल"
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1074
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "निर्दिष्ट फिल्टर अवैध था"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1093
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "खोज प्रकार जरूरी है, उदा. name"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1100 ../client/pk-console.c:1112
-#: ../client/pk-console.c:1124 ../client/pk-console.c:1136
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "खोज पद जरूरी है"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1146
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "अवैध खोज प्रकार"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1152
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "संस्थापित करने के लिए संकुल नाम जरूरी है"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1161
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "संस्थापित करने के लिए फाइलनाम जरूरी है"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1173
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "प्रकार, key_id और package_id जरूरी है"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1184
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "हटाने के लिए संकुल नाम जरूरी है"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1193
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "गंतव्य निर्देशिका और फिर डाउनलोड करने के लिए संकुल नाम जरूरी है"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1200
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "निर्देशिका नहीं मिला"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1209
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "लाइसेंस पहचानकर्ता (eula-id) जरूरी है"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1220
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "विनिमय पहचानकर्ता (tid) जरूरी है"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1241
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "हल किया पैकेज नाम जरूरी है"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1252 ../client/pk-console.c:1263
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "रिपाजिटरी नाम जरूरी है"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1274
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "रेपो नाम, पैरामीटर और मान जरूरी है"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1291
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "क्रिया, उदा. 'update-system' जरूरी है"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1298
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "सही भूमिका जरूरी है"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1308 ../client/pk-console.c:1323
-#: ../client/pk-console.c:1332 ../client/pk-console.c:1352
-#: ../client/pk-console.c:1361 ../client/pk-generate-pack.c:287
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "संकुल नाम जरूरी है"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1341
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "संकुल प्रदत्त स्ट्रिंग जरूरी है"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1421
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "विकल्प '%s' समर्थित नहीं है"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1431
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "कमांड असफल"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:226
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
 msgstr "चलाने के लिए निर्भरता के फाइल नाम सेट करें"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:229
+#: ../client/pk-generate-pack.c:240
 msgid "The output file or directory (the current directory is used if ommitted)"
 msgstr "आउटपुट फाइल या निर्देशिका (मौजूदा निर्देशिका का प्रयोग किया जा सकता यदि मिटाया गया)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:232
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "सेवा पेटी में रखने के लिए संकुल"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:235
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "सेवा पैक में उपलब्ध सारे अद्यतन रखें"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:271
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "Neither --package or --updates option selected."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:279
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "दोनों विकल्प चयनित."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:295
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "आउटपुट निर्देशिका या फाइल नाम जरूरी है"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:313
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "आरंभ करने के लिए डेमॉन विफल"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:324 ../client/pk-generate-pack.c:330
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "संकुल प्रबंधक इस प्रकार का संक्रमण नहीं कर सकता है"
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:337
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -544,207 +574,212 @@ msgstr ""
 "बनाया जा सकत है."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:348
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
 msgstr "यदि कोई फ़ाइल निर्दिष्ट कर रहे हैं, सेवा पैक का नाम अंत में रहना चाहिए"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:364
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "उसी नाम के साथ पैक पहले से मौजूद है, क्या आप इसे अधिलिखित करना चाहते हैं?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:367
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "यह पैक अधिलिखित नहीं किया गया था."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:380
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "निर्देशिका बनाने में विफल:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:392
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "संकुल सूची खोलने में विफल."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "संकुल नाम ढूँढ़ रहा है."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:405
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "'%s' संकुल ढूँढ़ने में विफल: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:413
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "सेवा पैक बना रहा है..."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:428
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "सेवा पैक निर्मित '%s'"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:433
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' बनाने में विफल: %s"
 
-#: ../client/pk-monitor.c:206
+#: ../client/pk-monitor.c:210
 msgid "Failed to get daemon state"
 msgstr "डेमॉन स्थिति पाने में विफल."
 
 #. TRANSLATORS: this is a program that monitors PackageKit
-#: ../client/pk-monitor.c:294
+#: ../client/pk-monitor.c:296
 msgid "PackageKit Monitor"
 msgstr "PackageKit मानिटर"
 
 #. TRANSLATORS: when we are getting data from the daemon
-#: ../contrib/browser-plugin/pk-plugin-install.c:491
+#: ../contrib/browser-plugin/pk-plugin-install.c:495
 msgid "Getting package information..."
 msgstr "संकुल सूचना पा रहा है..."
 
 #. TRANSLATORS: run an applicaiton
-#: ../contrib/browser-plugin/pk-plugin-install.c:497
+#: ../contrib/browser-plugin/pk-plugin-install.c:501
 #, c-format
 msgid "Run %s"
 msgstr "%s चलाएँ"
 
 #. TRANSLATORS: show the installed version of a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:503
+#: ../contrib/browser-plugin/pk-plugin-install.c:507
 msgid "Installed version"
 msgstr "संस्थापित संस्करण"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:511
+#: ../contrib/browser-plugin/pk-plugin-install.c:515
 #, c-format
 msgid "Run version %s now"
 msgstr "अब %s संस्करण चलाएँ"
 
 #. TRANSLATORS: run the application now
-#: ../contrib/browser-plugin/pk-plugin-install.c:517
+#: ../contrib/browser-plugin/pk-plugin-install.c:521
 msgid "Run now"
 msgstr "अभी चलाएँ"
 
 #. TRANSLATORS: update to a new version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:523
+#: ../contrib/browser-plugin/pk-plugin-install.c:527
 #, c-format
 msgid "Update to version %s"
 msgstr "संस्करण %s में अद्यतन करें"
 
 #. TRANSLATORS: To install a package
-#: ../contrib/browser-plugin/pk-plugin-install.c:529
+#: ../contrib/browser-plugin/pk-plugin-install.c:533
 #, c-format
 msgid "Install %s now"
 msgstr "अब %s को संस्थापित करें"
 
 #. TRANSLATORS: the version of the package
-#: ../contrib/browser-plugin/pk-plugin-install.c:532
+#: ../contrib/browser-plugin/pk-plugin-install.c:536
 msgid "Version"
 msgstr "संस्करण"
 
 #. TRANSLATORS: noting found, so can't install
-#: ../contrib/browser-plugin/pk-plugin-install.c:537
+#: ../contrib/browser-plugin/pk-plugin-install.c:541
 msgid "No packages found for your system"
 msgstr "आपके तंत्र के लिए कोई संकुल नहीं पाया गया"
 
 #. TRANSLATORS: package is being installed
-#: ../contrib/browser-plugin/pk-plugin-install.c:542
+#: ../contrib/browser-plugin/pk-plugin-install.c:546
 msgid "Installing..."
 msgstr "संस्थापित कर रहा है..."
 
 #. TRANSLATORS: downloading repo data so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:357
+#: ../contrib/command-not-found/pk-command-not-found.c:365
 msgid "Downloading details about the software sources."
 msgstr "सॉफ़्टवेयर स्रोत के बारे में विवरण डाउनलोज कर रहा है"
 
 #. TRANSLATORS: downloading file lists so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:361
+#: ../contrib/command-not-found/pk-command-not-found.c:369
 msgid "Downloading filelists (this may take some time to complete)."
 msgstr "फ़ाइललिस्ट डाउनलोड कर रहा है (यह पूरा होने में कुछ समय ले सकता है)."
 
 #. TRANSLATORS: waiting for native lock
-#: ../contrib/command-not-found/pk-command-not-found.c:365
+#: ../contrib/command-not-found/pk-command-not-found.c:373
 msgid "Waiting for package manager lock."
 msgstr "संकुल प्रबंधक लॉक के लिए प्रतीक्षारत."
 
 #. TRANSLATORS: loading package cache so we can search
-#: ../contrib/command-not-found/pk-command-not-found.c:369
+#: ../contrib/command-not-found/pk-command-not-found.c:377
 msgid "Loading list of packages."
 msgstr "संकुल सूची डाउनलोड कर रहा है."
 
 #. TRANSLATORS: we failed to find the package, this shouldn't happen
-#: ../contrib/command-not-found/pk-command-not-found.c:413
+#: ../contrib/command-not-found/pk-command-not-found.c:423
 msgid "Failed to search for file"
 msgstr "फाइल के लिए खोजने में विफल"
 
+#. TRANSLATORS: we failed to launch the executable, the error follows
+#: ../contrib/command-not-found/pk-command-not-found.c:566
+msgid "Failed to launch:"
+msgstr "लॉन्च करने में विफल:"
+
 #. TRANSLATORS: we failed to install the package
-#: ../contrib/command-not-found/pk-command-not-found.c:554
+#: ../contrib/command-not-found/pk-command-not-found.c:594
 msgid "Failed to install packages"
 msgstr "संकुलों को संस्थापित नहीं करने में विफल"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/command-not-found/pk-command-not-found.c:632
+#: ../contrib/command-not-found/pk-command-not-found.c:670
 msgid "PackageKit Command Not Found"
 msgstr "PackageKit कमांड नहीं मिला"
 
 #. TRANSLATORS: the prefix of all the output telling the user why it's not executing
-#: ../contrib/command-not-found/pk-command-not-found.c:660
+#: ../contrib/command-not-found/pk-command-not-found.c:699
 msgid "Command not found."
 msgstr "कमांड नहीं मिला."
 
 #. TRANSLATORS: tell the user what we think the command is
-#: ../contrib/command-not-found/pk-command-not-found.c:667
+#: ../contrib/command-not-found/pk-command-not-found.c:706
 msgid "Similar command is:"
 msgstr "उसी तरह का कमांड है:"
 
 #. TRANSLATORS: Ask the user if we should run the similar command
-#: ../contrib/command-not-found/pk-command-not-found.c:676
+#: ../contrib/command-not-found/pk-command-not-found.c:716
 msgid "Run similar command:"
 msgstr "समान कमांड चलाएँ:"
 
 #. TRANSLATORS: show the user a list of commands that they could have meant
 #. TRANSLATORS: show the user a list of commands we could run
-#: ../contrib/command-not-found/pk-command-not-found.c:688
-#: ../contrib/command-not-found/pk-command-not-found.c:697
+#: ../contrib/command-not-found/pk-command-not-found.c:730
+#: ../contrib/command-not-found/pk-command-not-found.c:739
 msgid "Similar commands are:"
 msgstr "समान कमांड हैं:"
 
 #. TRANSLATORS: ask the user to choose a file to run
-#: ../contrib/command-not-found/pk-command-not-found.c:704
+#: ../contrib/command-not-found/pk-command-not-found.c:746
 msgid "Please choose a command to run"
 msgstr "चलाने के लिए कमांड चुनें"
 
 #. TRANSLATORS: tell the user what package provides the command
-#: ../contrib/command-not-found/pk-command-not-found.c:720
+#: ../contrib/command-not-found/pk-command-not-found.c:766
 msgid "The package providing this file is:"
 msgstr "इस फ़ाइल को देने वाला संकुल:"
 
 #. TRANSLATORS: as the user if we want to install a package to provide the command
-#: ../contrib/command-not-found/pk-command-not-found.c:725
+#: ../contrib/command-not-found/pk-command-not-found.c:771
 #, c-format
 msgid "Install package '%s' to provide command '%s'?"
 msgstr "संकुल '%s' को '%s' कमांड को देने के लिए संस्थापित करें?"
 
 #. TRANSLATORS: Show the user a list of packages that provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:743
+#: ../contrib/command-not-found/pk-command-not-found.c:795
 msgid "Packages providing this file are:"
 msgstr "इस फ़ाइल को देने वाला संकुल:"
 
 #. TRANSLATORS: Show the user a list of packages that they can install to provide this command
-#: ../contrib/command-not-found/pk-command-not-found.c:753
+#: ../contrib/command-not-found/pk-command-not-found.c:805
 msgid "Suitable packages are:"
 msgstr "उपयुक्त संकुल हैं:"
 
 #. get selection
 #. TRANSLATORS: ask the user to choose a file to install
-#: ../contrib/command-not-found/pk-command-not-found.c:762
+#: ../contrib/command-not-found/pk-command-not-found.c:814
 msgid "Please choose a package to install"
 msgstr "संस्थापित करने के लिए कोई संकुल चुनें"
 
@@ -760,183 +795,183 @@ msgid "Failed to find the package %s, or already installed: %s"
 msgstr "संकुल %s ढूँढ़ने में विफल, या पहले से संस्थापित: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:514
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
 msgid "Don't actually install any packages, only simulate what would be installed"
 msgstr "किसी संकुल को वास्तव में मत संस्थापित करें, केवल देखें कि क्या संस्थापित होगा"
 
 #. command line argument, do we skip packages that depend on the ones specified
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:517
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:521
 msgid "Do not install dependencies of the core packages"
 msgstr "कोर संकुल की निर्भरता को मत संस्थापित करें"
 
 #. command line argument, do we operate quietly
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:520
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:524
 msgid "Do not display information or progress"
 msgstr "सूचना या प्रगति पर मत कुछ दिखाएँ"
 
 #. TRANSLATORS: tool that gets called when the command is not found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:535
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:542
 msgid "PackageKit Debuginfo Installer"
 msgstr "पैकेजकिट डिबगइंफो संस्थापक"
 
 #. TRANSLATORS: the use needs to specify a list of package names on the command line
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:550
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:556
 #, c-format
 msgid "ERROR: Specify package names to install."
 msgstr "त्रुटि: संस्थापन के लिए संकुल नाम निर्दिष्ट करें."
 
 #. TRANSLATORS: we are getting the list of repositories
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:579
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:592
 #, c-format
 msgid "Getting sources list"
 msgstr "स्रोत सूची पा रहा है"
 
 #. TRANSLATORS: operation was not successful
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:589
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:664
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:748
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:792
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:859
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:903
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:602
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:677
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:761
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:805
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:872
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:916
 msgid "FAILED."
 msgstr "विफल."
 
 #. TRANSLATORS: all completed 100%
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:604
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:644
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:679
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:763
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:807
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:874
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:918
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:617
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:657
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:692
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:776
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:820
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:887
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:931
 #, c-format
 msgid "OK."
 msgstr "ठीक."
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:607
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:620
 #, c-format
 msgid "Found %i enabled and %i disabled sources."
 msgstr "%i सक्रिय और %i निष्क्रिय स्रोत पाया."
 
 #. TRANSLATORS: we're finding repositories that match out pattern
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:614
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:627
 #, c-format
 msgid "Finding debugging sources"
 msgstr "डबगिंग स्रोत ढूँढ़ रहा है"
 
 #. TRANSLATORS: tell the user what we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:647
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:660
 #, c-format
 msgid "Found %i disabled debuginfo repos."
 msgstr "%i निष्क्रिय डिबगइंफो रिपोज पाया."
 
 #. TRANSLATORS: we're now enabling all the debug sources we found
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:654
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:667
 #, c-format
 msgid "Enabling debugging sources"
 msgstr "डिबगिंग स्रोत सक्रिय कर रहा है"
 
 #. TRANSLATORS: tell the user how many we enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:682
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:695
 #, c-format
 msgid "Enabled %i debugging sources."
 msgstr "%i डबगिंग स्रोतों को सक्रिय किया."
 
 #. TRANSLATORS: we're now finding packages that match in all the repos
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:689
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:702
 #, c-format
 msgid "Finding debugging packages"
 msgstr "डबगिंग संकुल को ढूँढ़ रहा है"
 
 #. TRANSLATORS: we couldn't find the package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:701
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:714
 #, c-format
 msgid "Failed to find the package %s: %s"
 msgstr "संकुल %s ढूँढ़ने में असमर्थ: %s"
 
 #. TRANSLATORS: we couldn't find the debuginfo package name, non-fatal
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:724
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:737
 #, c-format
 msgid "Failed to find the debuginfo package %s: %s"
 msgstr "डिबगइंफो संकुल %s ढूँढ़ने में विफल: %s"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:752
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:765
 #, c-format
 msgid "Found no packages to install."
 msgstr "कोई नया संकुल संस्थापित होने के लिए नहीं पाया."
 
 #. TRANSLATORS: tell the user we found some packages, and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:766
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:779
 #, c-format
 msgid "Found %i packages:"
 msgstr "%i संकुल पाया:"
 
 #. TRANSLATORS: tell the user we are searching for deps
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:782
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
 #, c-format
 msgid "Finding packages that depend on these packages"
 msgstr "संकुलों को पा रहा है जो इन संकुलों पर निर्भर करता है"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:795
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:808
 #, c-format
 msgid "Could not find dependant packages: %s"
 msgstr "निर्भर संकुलों को नहीं ढूँढ़ सका: %s"
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:811
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
 #, c-format
 msgid "Found %i extra packages."
 msgstr "अतिरिक्त संकुल %i पाया."
 
 #. TRANSLATORS: tell the user we found some more packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:815
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:828
 #, c-format
 msgid "No extra packages required."
 msgstr "कोई अतिरिक्त संकुल जरूरी नहीं है."
 
 #. TRANSLATORS: tell the user we found some packages (and deps), and then list them
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:824
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
 #, c-format
 msgid "Found %i packages to install:"
 msgstr "संस्थापित करने के लिए %i संकुल:"
 
 #. TRANSLATORS: simulate mode is a testing mode where we quit before the action
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:837
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:850
 #, c-format
 msgid "Not installing packages in simulate mode"
 msgstr "अनुकरण मोड में कोई संस्थापन संकुल नहीं"
 
 #. TRANSLATORS: we are now installing the debuginfo packages we found earlier
 #. TRANSLATORS: transaction state, installing packages
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:849
-#: ../lib/packagekit-glib2/pk-console-shared.c:270
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../lib/packagekit-glib2/pk-console-shared.c:282
 #, c-format
 msgid "Installing packages"
 msgstr "संकुल अधिष्ठापित कर रहा है"
 
 #. TRANSLATORS: could not install, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:862
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:875
 #, c-format
 msgid "Could not install packages: %s"
 msgstr "संकुलों को संस्थापित नहीं कर सका: %s"
 
 #. TRANSLATORS: we are now disabling all debuginfo repos we previously enabled
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:894
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:907
 #, c-format
 msgid "Disabling sources previously enabled"
 msgstr "पहले से सक्रिय किए गए स्रोत को निष्क्रिय कर रहा है"
 
 #. TRANSLATORS: no debuginfo packages could be found to be installed, detailed error follows
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:906
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:919
 #, c-format
 msgid "Could not disable the debugging sources: %s"
 msgstr "डिबगिंग स्रोत को निष्क्रिय नहीं कर सका: %s"
 
 #. TRANSLATORS: we disabled all the debugging repos that we enabled before
-#: ../contrib/debuginfo-install/pk-debuginfo-install.c:921
+#: ../contrib/debuginfo-install/pk-debuginfo-install.c:934
 #, c-format
 msgid "Disabled %i debugging sources."
 msgstr "निष्क्रिय किया %i डिबगिंग स्रोत."
@@ -982,6 +1017,10 @@ msgstr "युक्ति पथ नहीं मिला"
 msgid "Incorrect device path specified"
 msgstr "गलत युक्ति पथ निर्दिष्ट"
 
+#: ../contrib/device-rebind/pk-device-rebind.c:293
+msgid "Show extra debugging information"
+msgstr "अतिरिक्त डिबगिंग सूचना दिखाएं"
+
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/device-rebind/pk-device-rebind.c:296
 msgid "Don't actually touch the hardware, only simulate what would be done"
@@ -1039,604 +1078,604 @@ msgstr "PackageKit संकुल सूची"
 msgid "PackageKit Service Pack"
 msgstr "PackageKit सेवा पैक"
 
-#: ../lib/packagekit-glib2/pk-console-shared.c:55
+#: ../lib/packagekit-glib2/pk-console-shared.c:59
 #, c-format
 msgid "Please enter a number from 1 to %i: "
 msgstr "1 से %i तक की संख्या कृपया दाखिल करें: "
 
 #. TRANSLATORS: more than one package could be found that matched, to follow is a list of possible packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:177
+#: ../lib/packagekit-glib2/pk-console-shared.c:183
 msgid "More than one package matches:"
 msgstr "एक से अधिक संकुल मेल खाता है:"
 
 #. TRANSLATORS: This finds out which package in the list to use
-#: ../lib/packagekit-glib2/pk-console-shared.c:186
+#: ../lib/packagekit-glib2/pk-console-shared.c:196
 msgid "Please choose the correct package: "
 msgstr "कृपया सही संकुल चुनें: "
 
 #. TRANSLATORS: This is when the transaction status is not known
-#: ../lib/packagekit-glib2/pk-console-shared.c:238
+#: ../lib/packagekit-glib2/pk-console-shared.c:250
 msgid "Unknown state"
 msgstr "अज्ञात स्थिति"
 
 #. TRANSLATORS: transaction state, the daemon is in the process of starting
-#: ../lib/packagekit-glib2/pk-console-shared.c:242
+#: ../lib/packagekit-glib2/pk-console-shared.c:254
 msgid "Starting"
 msgstr "आरंभ कर रहा है"
 
 #. TRANSLATORS: transaction state, the transaction is waiting for another to complete
-#: ../lib/packagekit-glib2/pk-console-shared.c:246
+#: ../lib/packagekit-glib2/pk-console-shared.c:258
 msgid "Waiting in queue"
 msgstr "कतार में प्रतीक्षा"
 
 #. TRANSLATORS: transaction state, just started
-#: ../lib/packagekit-glib2/pk-console-shared.c:250
+#: ../lib/packagekit-glib2/pk-console-shared.c:262
 msgid "Running"
 msgstr "चल रहा है"
 
 #. TRANSLATORS: transaction state, is querying data
-#: ../lib/packagekit-glib2/pk-console-shared.c:254
+#: ../lib/packagekit-glib2/pk-console-shared.c:266
 msgid "Querying"
 msgstr "प्रश्न कर रहा है"
 
 #. TRANSLATORS: transaction state, getting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:258
+#: ../lib/packagekit-glib2/pk-console-shared.c:270
 msgid "Getting information"
 msgstr "सूचना पा रहा है"
 
 #. TRANSLATORS: transaction state, removing packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:262
+#: ../lib/packagekit-glib2/pk-console-shared.c:274
 msgid "Removing packages"
 msgstr "संकुल हटा रहा है"
 
 #. TRANSLATORS: transaction state, downloading package files
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:266
-#: ../lib/packagekit-glib2/pk-console-shared.c:644
+#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:656
 msgid "Downloading packages"
 msgstr "संकुल डाउनलोड कर रहा है"
 
 #. TRANSLATORS: transaction state, refreshing internal lists
-#: ../lib/packagekit-glib2/pk-console-shared.c:274
+#: ../lib/packagekit-glib2/pk-console-shared.c:286
 msgid "Refreshing software list"
 msgstr "सॉफ़्टवेयर सूची ताज़ा कर रहा है"
 
 #. TRANSLATORS: transaction state, installing updates
-#: ../lib/packagekit-glib2/pk-console-shared.c:278
+#: ../lib/packagekit-glib2/pk-console-shared.c:290
 msgid "Installing updates"
 msgstr "अद्यतन संस्थापित कर रहा है"
 
 #. TRANSLATORS: transaction state, removing old packages, and cleaning config files
-#: ../lib/packagekit-glib2/pk-console-shared.c:282
+#: ../lib/packagekit-glib2/pk-console-shared.c:294
 msgid "Cleaning up packages"
 msgstr "संकुल साफ कर रहा है"
 
 #. TRANSLATORS: transaction state, obsoleting old packages
-#: ../lib/packagekit-glib2/pk-console-shared.c:286
+#: ../lib/packagekit-glib2/pk-console-shared.c:298
 msgid "Obsoleting packages"
 msgstr "संकुल को पुराना कर रहा है"
 
 #. TRANSLATORS: transaction state, checking the transaction before we do it
-#: ../lib/packagekit-glib2/pk-console-shared.c:290
+#: ../lib/packagekit-glib2/pk-console-shared.c:302
 msgid "Resolving dependencies"
 msgstr "निर्भरता हल कर रहा है"
 
 #. TRANSLATORS: transaction state, checking if we have all the security keys for the operation
-#: ../lib/packagekit-glib2/pk-console-shared.c:294
+#: ../lib/packagekit-glib2/pk-console-shared.c:306
 msgid "Checking signatures"
 msgstr "हस्ताक्षर जाँच रहा है"
 
 #. TRANSLATORS: transaction state, when we return to a previous system state
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:298
-#: ../lib/packagekit-glib2/pk-console-shared.c:604
+#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:616
 msgid "Rolling back"
 msgstr "रोलिंग बैक"
 
 #. TRANSLATORS: transaction state, when we're doing a test transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:302
+#: ../lib/packagekit-glib2/pk-console-shared.c:314
 msgid "Testing changes"
 msgstr "परिवर्तन जाँच रहा है"
 
 #. TRANSLATORS: transaction state, when we're writing to the system package database
-#: ../lib/packagekit-glib2/pk-console-shared.c:306
+#: ../lib/packagekit-glib2/pk-console-shared.c:318
 msgid "Committing changes"
 msgstr "परिवर्तन सौंप रहा है"
 
 #. TRANSLATORS: transaction state, requesting data from a server
-#: ../lib/packagekit-glib2/pk-console-shared.c:310
+#: ../lib/packagekit-glib2/pk-console-shared.c:322
 msgid "Requesting data"
 msgstr "आंकड़ा के लिए निवेदन कर रहा है"
 
 #. TRANSLATORS: transaction state, all done!
-#: ../lib/packagekit-glib2/pk-console-shared.c:314
+#: ../lib/packagekit-glib2/pk-console-shared.c:326
 msgid "Finished"
 msgstr "समाप्त"
 
 #. TRANSLATORS: transaction state, in the process of cancelling
-#: ../lib/packagekit-glib2/pk-console-shared.c:318
+#: ../lib/packagekit-glib2/pk-console-shared.c:330
 msgid "Cancelling"
 msgstr "रद्द कर रहा है"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:322
+#: ../lib/packagekit-glib2/pk-console-shared.c:334
 msgid "Downloading repository information"
 msgstr "रिपोजिटरी सूचना डाउनलोड कर रहा है"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:326
+#: ../lib/packagekit-glib2/pk-console-shared.c:338
 msgid "Downloading list of packages"
 msgstr "संकुल सूची डाउनलोड कर रहा है"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:330
+#: ../lib/packagekit-glib2/pk-console-shared.c:342
 msgid "Downloading file lists"
 msgstr "फ़ाइल सूची डाउनलोड कर रहा है"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:334
+#: ../lib/packagekit-glib2/pk-console-shared.c:346
 msgid "Downloading lists of changes"
 msgstr "परिवर्तन सूची डाउनलोड कर रहा है"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:338
+#: ../lib/packagekit-glib2/pk-console-shared.c:350
 msgid "Downloading groups"
 msgstr "समूह डाउनलोड किया जा रहा है"
 
 #. TRANSLATORS: transaction state, downloading metadata
-#: ../lib/packagekit-glib2/pk-console-shared.c:342
+#: ../lib/packagekit-glib2/pk-console-shared.c:354
 msgid "Downloading update information"
 msgstr "अद्यतन सूचना डाउनलोड कर रहा है"
 
 #. TRANSLATORS: transaction state, repackaging delta files
-#: ../lib/packagekit-glib2/pk-console-shared.c:346
+#: ../lib/packagekit-glib2/pk-console-shared.c:358
 msgid "Repackaging files"
 msgstr "फ़ाइल पुनर्संकुलित कर रहा है"
 
 #. TRANSLATORS: transaction state, loading databases
-#: ../lib/packagekit-glib2/pk-console-shared.c:350
+#: ../lib/packagekit-glib2/pk-console-shared.c:362
 msgid "Loading cache"
 msgstr "कैशे लोड कर रहा है"
 
 #. TRANSLATORS: transaction state, scanning for running processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:354
+#: ../lib/packagekit-glib2/pk-console-shared.c:366
 msgid "Scanning applications"
 msgstr "अनुप्रयोग स्कैन कर रहा है"
 
 #. TRANSLATORS: transaction state, generating a list of packages installed on the system
-#: ../lib/packagekit-glib2/pk-console-shared.c:358
+#: ../lib/packagekit-glib2/pk-console-shared.c:370
 msgid "Generating package lists"
 msgstr "संकुल सूची बना रहा है"
 
 #. TRANSLATORS: transaction state, when we're waiting for the native tools to exit
-#: ../lib/packagekit-glib2/pk-console-shared.c:362
+#: ../lib/packagekit-glib2/pk-console-shared.c:374
 msgid "Waiting for package manager lock"
 msgstr "संकुल प्रबंधक लॉक के लिए प्रतीक्षारत"
 
 #. TRANSLATORS: transaction state, waiting for user to type in a password
-#: ../lib/packagekit-glib2/pk-console-shared.c:366
+#: ../lib/packagekit-glib2/pk-console-shared.c:378
 msgid "Waiting for authentication"
 msgstr "सत्यापन के लिए प्रतीक्षारत"
 
 #. TRANSLATORS: transaction state, we are updating the list of processes
-#: ../lib/packagekit-glib2/pk-console-shared.c:370
+#: ../lib/packagekit-glib2/pk-console-shared.c:382
 msgid "Updating running applications"
 msgstr "कार्यशील अनुप्रयोग अद्यतन रहा है"
 
 #. TRANSLATORS: transaction state, we are checking executable files currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:374
+#: ../lib/packagekit-glib2/pk-console-shared.c:386
 msgid "Checking applications in use"
 msgstr "प्रयोग में अनुप्रयोगों को जाँच रहा है"
 
 #. TRANSLATORS: transaction state, we are checking for libraries currently in use
-#: ../lib/packagekit-glib2/pk-console-shared.c:378
+#: ../lib/packagekit-glib2/pk-console-shared.c:390
 msgid "Checking libraries in use"
 msgstr "प्रयोग में लाइब्रेरी जाँच रहा है"
 
 #. TRANSLATORS: transaction state, we are copying package files before or after the transaction
-#: ../lib/packagekit-glib2/pk-console-shared.c:382
+#: ../lib/packagekit-glib2/pk-console-shared.c:394
 msgid "Copying files"
 msgstr "फ़ाइल की नक़ल ले रहा है"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:400
+#: ../lib/packagekit-glib2/pk-console-shared.c:412
 msgid "Trivial"
 msgstr "बेकार"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:404
+#: ../lib/packagekit-glib2/pk-console-shared.c:416
 msgid "Normal"
 msgstr "सामान्य"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:408
+#: ../lib/packagekit-glib2/pk-console-shared.c:420
 msgid "Important"
 msgstr "महत्वपूर्ण"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:412
+#: ../lib/packagekit-glib2/pk-console-shared.c:424
 msgid "Security"
 msgstr "सुरक्षा"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:416
+#: ../lib/packagekit-glib2/pk-console-shared.c:428
 msgid "Bug fix "
 msgstr "बग फिक्स"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:420
+#: ../lib/packagekit-glib2/pk-console-shared.c:432
 msgid "Enhancement"
 msgstr "संवर्द्धन"
 
 #. TRANSLATORS: The type of update
-#: ../lib/packagekit-glib2/pk-console-shared.c:424
+#: ../lib/packagekit-glib2/pk-console-shared.c:436
 msgid "Blocked"
 msgstr "रोका गया"
 
 #. TRANSLATORS: The state of a package
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:429
-#: ../lib/packagekit-glib2/pk-console-shared.c:502
+#: ../lib/packagekit-glib2/pk-console-shared.c:441
+#: ../lib/packagekit-glib2/pk-console-shared.c:514
 msgid "Installed"
 msgstr "संस्थापित"
 
 #. TRANSLATORS: The state of a package, i.e. not installed
-#: ../lib/packagekit-glib2/pk-console-shared.c:434
+#: ../lib/packagekit-glib2/pk-console-shared.c:446
 msgid "Available"
 msgstr "उपलब्ध"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:452
+#: ../lib/packagekit-glib2/pk-console-shared.c:464
 msgid "Downloading"
 msgstr "डाउनलोड किया जा रहा है"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:456
+#: ../lib/packagekit-glib2/pk-console-shared.c:468
 msgid "Updating"
 msgstr "अद्यतन कर रहा है"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:460
-#: ../lib/packagekit-glib2/pk-console-shared.c:580
+#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:592
 msgid "Installing"
 msgstr "संस्थापित किया जा रहा है"
 
 #. TRANSLATORS: The action of the package, in present tense
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:464
-#: ../lib/packagekit-glib2/pk-console-shared.c:576
+#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:588
 msgid "Removing"
 msgstr "संकुल हटा रहा है"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:468
+#: ../lib/packagekit-glib2/pk-console-shared.c:480
 msgid "Cleaning up"
 msgstr "साफ कर रहा है"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:472
+#: ../lib/packagekit-glib2/pk-console-shared.c:484
 msgid "Obsoleting"
 msgstr "पुराना"
 
 #. TRANSLATORS: The action of the package, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:476
+#: ../lib/packagekit-glib2/pk-console-shared.c:488
 msgid "Reinstalling"
 msgstr "फिर संस्थापित कर रहा है..."
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:494
+#: ../lib/packagekit-glib2/pk-console-shared.c:506
 msgid "Downloaded"
 msgstr "डाउनलोडेड"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:506
+#: ../lib/packagekit-glib2/pk-console-shared.c:518
 msgid "Removed"
 msgstr "मिटाया"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../lib/packagekit-glib2/pk-console-shared.c:522
 msgid "Cleaned up"
 msgstr "साफ किया गया"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:514
+#: ../lib/packagekit-glib2/pk-console-shared.c:526
 msgid "Obsoleted"
 msgstr "पुराना"
 
 #. TRANSLATORS: The action of the package, in past tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:518
+#: ../lib/packagekit-glib2/pk-console-shared.c:530
 msgid "Reinstalled"
 msgstr "फिर संस्थापित"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:536
+#: ../lib/packagekit-glib2/pk-console-shared.c:548
 msgid "Unknown role type"
 msgstr "अज्ञात भूमिका प्रकार"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:540
+#: ../lib/packagekit-glib2/pk-console-shared.c:552
 msgid "Getting dependencies"
 msgstr "निर्भरता पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:544
+#: ../lib/packagekit-glib2/pk-console-shared.c:556
 msgid "Getting update details"
 msgstr "अद्यतन विवरण पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:548
+#: ../lib/packagekit-glib2/pk-console-shared.c:560
 msgid "Getting details"
 msgstr "विवरण पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:552
+#: ../lib/packagekit-glib2/pk-console-shared.c:564
 msgid "Getting requires"
 msgstr "जरूरी सूची पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:556
+#: ../lib/packagekit-glib2/pk-console-shared.c:568
 msgid "Getting updates"
 msgstr "अद्यतन पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:560
+#: ../lib/packagekit-glib2/pk-console-shared.c:572
 msgid "Searching by details"
 msgstr "विवरण से खोजें"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:564
+#: ../lib/packagekit-glib2/pk-console-shared.c:576
 msgid "Searching by file"
 msgstr "फ़ाइल खोज रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:568
+#: ../lib/packagekit-glib2/pk-console-shared.c:580
 msgid "Searching groups"
 msgstr "समूह खोज रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:572
+#: ../lib/packagekit-glib2/pk-console-shared.c:584
 msgid "Searching by name"
 msgstr "नाम से खोजें"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:584
+#: ../lib/packagekit-glib2/pk-console-shared.c:596
 msgid "Installing files"
 msgstr "फ़ाइल संस्थापित कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:588
+#: ../lib/packagekit-glib2/pk-console-shared.c:600
 msgid "Refreshing cache"
 msgstr "कैश ताज़ा कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:592
+#: ../lib/packagekit-glib2/pk-console-shared.c:604
 msgid "Updating packages"
 msgstr "संकुल अद्यतन कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:596
+#: ../lib/packagekit-glib2/pk-console-shared.c:608
 msgid "Updating system"
 msgstr "तंत्र अद्यतन कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:600
+#: ../lib/packagekit-glib2/pk-console-shared.c:612
 msgid "Canceling"
 msgstr "रद्द कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:608
+#: ../lib/packagekit-glib2/pk-console-shared.c:620
 msgid "Getting repositories"
 msgstr "रिपोजिटरी पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:612
+#: ../lib/packagekit-glib2/pk-console-shared.c:624
 msgid "Enabling repository"
 msgstr "रिपोजिटरी सक्रिय कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:616
+#: ../lib/packagekit-glib2/pk-console-shared.c:628
 msgid "Setting data"
 msgstr "आंकड़ा सेट कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:620
+#: ../lib/packagekit-glib2/pk-console-shared.c:632
 msgid "Resolving"
 msgstr "हल कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:624
+#: ../lib/packagekit-glib2/pk-console-shared.c:636
 msgid "Getting file list"
 msgstr "फ़ाइल सूची पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:628
+#: ../lib/packagekit-glib2/pk-console-shared.c:640
 msgid "Getting provides"
 msgstr "प्रदान पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:632
+#: ../lib/packagekit-glib2/pk-console-shared.c:644
 msgid "Installing signature"
 msgstr "हस्ताक्षर संस्थापित कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:636
+#: ../lib/packagekit-glib2/pk-console-shared.c:648
 msgid "Getting packages"
 msgstr "संकुल पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:640
+#: ../lib/packagekit-glib2/pk-console-shared.c:652
 msgid "Accepting EULA"
 msgstr "EULA स्वीकार कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:648
+#: ../lib/packagekit-glib2/pk-console-shared.c:660
 msgid "Getting upgrades"
 msgstr "उन्नयन पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:652
+#: ../lib/packagekit-glib2/pk-console-shared.c:664
 msgid "Getting categories"
 msgstr "श्रेणियाँ पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:656
+#: ../lib/packagekit-glib2/pk-console-shared.c:668
 msgid "Getting transactions"
 msgstr "लेनदेन पा रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:660
-#: ../lib/packagekit-glib2/pk-console-shared.c:664
+#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:676
 msgid "Simulating install"
 msgstr "संस्थापन अनुकरण कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:668
+#: ../lib/packagekit-glib2/pk-console-shared.c:680
 msgid "Simulating remove"
 msgstr "हटाना अनुकरण कर रहा है"
 
 #. TRANSLATORS: The role of the transaction, in present tense
-#: ../lib/packagekit-glib2/pk-console-shared.c:672
+#: ../lib/packagekit-glib2/pk-console-shared.c:684
 msgid "Simulating update"
 msgstr "अद्यतन अनुकरण कर रहा है"
 
 #. TRANSLATORS: ask the user if they are comfortable installing insecure packages
-#: ../lib/packagekit-glib2/pk-task-text.c:64
+#: ../lib/packagekit-glib2/pk-task-text.c:69
 msgid "Do you want to allow installing of unsigned software?"
 msgstr "क्या आप अहस्ताक्षरित सॉफ़्टवेयर के संस्थापन की अनुमति देते हैं?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:69
+#: ../lib/packagekit-glib2/pk-task-text.c:74
 msgid "The unsigned software will not be installed."
 msgstr "अहस्ताक्षरित सॉफ़्टवेयर संस्थापित नहीं किया जाएगा."
 
 #. TRANSLATORS: the package repository is signed by a key that is not recognised
-#: ../lib/packagekit-glib2/pk-task-text.c:102
+#: ../lib/packagekit-glib2/pk-task-text.c:123
 msgid "Software source signature required"
 msgstr "सॉफ़्टवेयर स्रोत हस्ताक्षर जरूरी"
 
 #. TRANSLATORS: the package repository name
-#: ../lib/packagekit-glib2/pk-task-text.c:108
+#: ../lib/packagekit-glib2/pk-task-text.c:129
 msgid "Software source name"
 msgstr "सॉफ़्टवेयर स्रोत नाम"
 
 #. TRANSLATORS: the key URL
-#: ../lib/packagekit-glib2/pk-task-text.c:111
+#: ../lib/packagekit-glib2/pk-task-text.c:132
 msgid "Key URL"
 msgstr "मुख्य URL"
 
 #. TRANSLATORS: the username of the key
-#: ../lib/packagekit-glib2/pk-task-text.c:114
+#: ../lib/packagekit-glib2/pk-task-text.c:135
 msgid "Key user"
 msgstr "मुख्य उपयोक्ता"
 
 #. TRANSLATORS: the key ID, usually a few hex digits
-#: ../lib/packagekit-glib2/pk-task-text.c:117
+#: ../lib/packagekit-glib2/pk-task-text.c:138
 msgid "Key ID"
 msgstr "कुंजी आईडी"
 
 #. TRANSLATORS: the key fingerprint, again, yet more hex
-#: ../lib/packagekit-glib2/pk-task-text.c:120
+#: ../lib/packagekit-glib2/pk-task-text.c:141
 msgid "Key fingerprint"
 msgstr "कुंजी फिंगरप्रिंट"
 
 #. TRANSLATORS: the timestamp (a bit like a machine readable time)
-#: ../lib/packagekit-glib2/pk-task-text.c:123
+#: ../lib/packagekit-glib2/pk-task-text.c:144
 msgid "Key Timestamp"
 msgstr "कुंजी टाइमस्टैंप"
 
 #. TRANSLATORS: ask the user if they want to import
-#: ../lib/packagekit-glib2/pk-task-text.c:129
+#: ../lib/packagekit-glib2/pk-task-text.c:157
 msgid "Do you accept this signature?"
 msgstr "क्या आप यह हस्ताक्षर स्वीकार करते हैं?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:134
+#: ../lib/packagekit-glib2/pk-task-text.c:162
 msgid "The signature was not accepted."
 msgstr "हस्ताक्षर स्वीकार नहीं किया गया था."
 
 #. TRANSLATORS: this is another name for a software licence that has to be read before installing
-#: ../lib/packagekit-glib2/pk-task-text.c:169
+#: ../lib/packagekit-glib2/pk-task-text.c:205
 msgid "End user licence agreement required"
 msgstr "अंत्य उपयोक्ता लाइसेंस मसौदा जरूरी"
 
 #. TRANSLATORS: the EULA text itself (long and boring)
-#: ../lib/packagekit-glib2/pk-task-text.c:178
+#: ../lib/packagekit-glib2/pk-task-text.c:214
 msgid "Agreement"
 msgstr "मसौदा"
 
 #. TRANSLATORS: ask the user if they've read and accepted the EULA
-#: ../lib/packagekit-glib2/pk-task-text.c:184
+#: ../lib/packagekit-glib2/pk-task-text.c:223
 msgid "Do you accept this agreement?"
 msgstr "क्या आप इस मसौदे को स्वीकार करते हैं?"
 
 #. TRANSLATORS: tell the user we've not done anything
-#: ../lib/packagekit-glib2/pk-task-text.c:189
+#: ../lib/packagekit-glib2/pk-task-text.c:228
 msgid "The agreement was not accepted."
 msgstr "हस्ताक्षर स्वीकार नहीं किया गया था."
 
 #. TRANSLATORS: the user needs to change media inserted into the computer
-#: ../lib/packagekit-glib2/pk-task-text.c:219
+#: ../lib/packagekit-glib2/pk-task-text.c:267
 msgid "Media change required"
 msgstr "मीडिया परिवर्तन जरूरी"
 
 #. TRANSLATORS: the type, e.g. DVD, CD, etc
-#: ../lib/packagekit-glib2/pk-task-text.c:222
+#: ../lib/packagekit-glib2/pk-task-text.c:270
 msgid "Media type"
 msgstr "मीडिया प्रकार"
 
 #. TRANSLATORS: the media label, usually like 'disk-1of3'
-#: ../lib/packagekit-glib2/pk-task-text.c:225
+#: ../lib/packagekit-glib2/pk-task-text.c:273
 msgid "Media label"
 msgstr "मीडिया स्तर"
 
 #. TRANSLATORS: the media description, usually like 'Fedora 12 disk 5'
-#: ../lib/packagekit-glib2/pk-task-text.c:228
+#: ../lib/packagekit-glib2/pk-task-text.c:276
 msgid "Text"
 msgstr "पाठ"
 
 #. TRANSLATORS: ask the user to insert the media
-#: ../lib/packagekit-glib2/pk-task-text.c:232
+#: ../lib/packagekit-glib2/pk-task-text.c:282
 msgid "Please insert the correct media"
 msgstr "कृपया सही मीडिया डालें"
 
 #. TRANSLATORS: tell the user we've not done anything as they are lazy
-#: ../lib/packagekit-glib2/pk-task-text.c:237
+#: ../lib/packagekit-glib2/pk-task-text.c:287
 msgid "The correct media was not inserted."
 msgstr "सही मीडिया नहीं डाला गया था."
 
 #. TRANSLATORS: When processing, we might have to remove other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:252
+#: ../lib/packagekit-glib2/pk-task-text.c:302
 msgid "The following packages have to be removed:"
 msgstr "निम्नलिखित संकुल को हटाया जाने वाला है:"
 
 #. TRANSLATORS: When processing, we might have to install other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:257
+#: ../lib/packagekit-glib2/pk-task-text.c:307
 msgid "The following packages have to be installed:"
 msgstr "निम्नलिखित संकुल को संस्थापित किया जाने वाला है:"
 
 #. TRANSLATORS: When processing, we might have to update other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:262
+#: ../lib/packagekit-glib2/pk-task-text.c:312
 msgid "The following packages have to be updated:"
 msgstr "निम्नलिखित संकुल को अद्यतन किया जाना है:"
 
 #. TRANSLATORS: When processing, we might have to reinstall other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:267
+#: ../lib/packagekit-glib2/pk-task-text.c:317
 msgid "The following packages have to be reinstalled:"
 msgstr "निम्नलिखित संकुल को फिर संस्थापित किया जाने वाला है:"
 
 #. TRANSLATORS: When processing, we might have to downgrade other dependencies
-#: ../lib/packagekit-glib2/pk-task-text.c:272
+#: ../lib/packagekit-glib2/pk-task-text.c:322
 msgid "The following packages have to be downgraded:"
 msgstr "निम्नलिखित संकुल को फिर पदावनत किया जाने वाला है:"
 
 #. TRANSLATORS: ask the user if the proposed changes are okay
-#: ../lib/packagekit-glib2/pk-task-text.c:331
+#: ../lib/packagekit-glib2/pk-task-text.c:382
 msgid "Proceed with changes?"
 msgstr "परिवर्तन के साथ आगे बढ़ें?"
 
 #. TRANSLATORS: tell the user we didn't do anything
-#: ../lib/packagekit-glib2/pk-task-text.c:336
+#: ../lib/packagekit-glib2/pk-task-text.c:387
 msgid "The transaction did not proceed."
 msgstr "लेनदेन नहीं आगे बढ़ा."
 
@@ -1833,47 +1872,47 @@ msgid ""
 msgstr "org.freedesktop.PackageKit.conf फ़ाइल तंत्र निर्देशिका में संस्थापित नहीं है:"
 
 #. TRANSLATORS: a backend is the system package tool, e.g. yum, apt
-#: ../src/pk-main.c:205
+#: ../src/pk-main.c:199
 msgid "Packaging backend to use, e.g. dummy"
 msgstr "प्रयोग के लिए बैकेंड को पैकेजिंग, उदा. dummy"
 
 #. TRANSLATORS: if we should run in the background
-#: ../src/pk-main.c:208
+#: ../src/pk-main.c:202
 msgid "Daemonize and detach from the terminal"
 msgstr "टर्मिनल से डेमानीकरण व विलग करें"
 
 #. TRANSLATORS: if we should not monitor how long we are inactive for
-#: ../src/pk-main.c:214
+#: ../src/pk-main.c:205
 msgid "Disable the idle timer"
 msgstr "निष्क्रिय टाइमर निष्क्रिय करें"
 
 #. TRANSLATORS: show version
-#: ../src/pk-main.c:217
+#: ../src/pk-main.c:208
 msgid "Show version and exit"
 msgstr "संस्करण दिखाएँ और बाहर निकलें"
 
 #. TRANSLATORS: exit after we've started up, used for user profiling
-#: ../src/pk-main.c:220
+#: ../src/pk-main.c:211
 msgid "Exit after a small delay"
 msgstr "कुछ देर के बाद बाहर निकलें"
 
 #. TRANSLATORS: exit straight away, used for automatic profiling
-#: ../src/pk-main.c:223
+#: ../src/pk-main.c:214
 msgid "Exit after the engine has loaded"
 msgstr "इंजन लोड होने के बाद बाहर निकलें"
 
 #. TRANSLATORS: describing the service that is running
-#: ../src/pk-main.c:238
+#: ../src/pk-main.c:229
 msgid "PackageKit service"
 msgstr "PackageKit सेवा"
 
 #. TRANSLATORS: fatal error, dbus is not running
-#: ../src/pk-main.c:275
+#: ../src/pk-main.c:266
 msgid "Cannot connect to the system bus"
 msgstr "सिस्टम बस में कनेक्ट नहीं हो सकता है"
 
 #. TRANSLATORS: cannot register on system bus, unknown reason -- geeky error follows
-#: ../src/pk-main.c:334
+#: ../src/pk-main.c:317
 msgid "Error trying to start:"
 msgstr "आरंभ होने की कोशिश में त्रुटि:"
 
@@ -1902,18 +1941,41 @@ msgstr "इस संकुल संस्थापित मत करें à
 msgid "Do not install these packages unless you are sure it is safe to do so."
 msgstr "इन संकुलों को अद्यतन मत करें जब तक वाकई ऐसा करने के लिए सुरक्षित है."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "दुर्भावनापूर्ण सॉफ्टवेयर आपके कंप्यूटर को नुकसान पहुँचा सकते हैं या दूसरे को नुकसान पहुँचा सकते हैं."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "कई संकुल"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "केवल भरोसेमंद"
 
+#. TRANSLATORS: turn on all debugging
+#: ../src/egg-debug.c:388
+msgid "Show debugging information for all files"
+msgstr "डिबगिंग सूचना सभी फ़ाइलों के लिए दिखाएँ"
+
+#. TRANSLATORS: a list of modules to debug
+#: ../src/egg-debug.c:459
+msgid "Debug these specific modules"
+msgstr "इन विशेष मॉड्यूलों को डिबग करें"
+
+#. TRANSLATORS: a list of functions to debug
+#: ../src/egg-debug.c:462
+msgid "Debug these specific functions"
+msgstr "इन विशेष प्रकार्यों को डिबग करें"
+
+#. TRANSLATORS: save to a log
+#: ../src/egg-debug.c:465
+msgid "Log debugging data to a file"
+msgstr "किसी फ़ाइल में डिबगिंग आँकड़ा लॉग करें"
+
+#: ../src/egg-debug.c:469
+msgid "Debugging Options"
+msgstr "डिबगिंग विकल्प"
+
+#: ../src/egg-debug.c:469
+msgid "Show debugging options"
+msgstr "डिबगिंग विकल्प दिखाएँ"
+
commit b073ad764ad92ff8bb768df897b2c1c6dc105dfe
Author: Daniel Nicoletti <dantti85-pk at yahoo.com.br>
Date:   Mon Dec 7 18:08:49 2009 -0200

    aptcc: Updated searchNames, files and groups.

diff --git a/backends/aptcc/apt.cpp b/backends/aptcc/apt.cpp
index 6de2b43..82ffbd3 100644
--- a/backends/aptcc/apt.cpp
+++ b/backends/aptcc/apt.cpp
@@ -647,15 +647,19 @@ void aptcc::get_requires(vector<pair<pkgCache::PkgIterator, pkgCache::VerIterato
 }
 
 // used to return files it reads, using the info from the files in /var/lib/dpkg/info/
-vector<string> search_file (PkBackend *backend, const string &file_name, bool &_cancel)
+vector<string> search_files (PkBackend *backend, gchar **values, bool &_cancel)
 {
 	vector<string> packageList;
 	regex_t re;
+	gchar *search;
 
-	if(regcomp(&re, file_name.c_str(), REG_NOSUB) != 0) {
+	search = g_strjoinv("|", values);
+	if(regcomp(&re, search, REG_NOSUB) != 0) {
 		egg_debug("Regex compilation error");
+		g_free(search);
 		return vector<string>();
 	}
+	g_free(search);
 
 	DIR *dp;
 	struct dirent *dirp;
diff --git a/backends/aptcc/apt.h b/backends/aptcc/apt.h
index 4f2ea4b..ba3df6a 100644
--- a/backends/aptcc/apt.h
+++ b/backends/aptcc/apt.h
@@ -41,7 +41,7 @@ void emit_files (PkBackend *backend, const gchar *pi);
 /**
 *  returns a list of packages names
 */
-vector<string> search_file (PkBackend *backend, const string &file_name, bool &_cancel);
+vector<string> search_files (PkBackend *backend, gchar **values, bool &_cancel);
 
 /**
 *  returns a list of packages names
diff --git a/backends/aptcc/pk-backend-aptcc.cpp b/backends/aptcc/pk-backend-aptcc.cpp
index f3dbb45..e2170d5 100644
--- a/backends/aptcc/pk-backend-aptcc.cpp
+++ b/backends/aptcc/pk-backend-aptcc.cpp
@@ -540,7 +540,7 @@ static void
 backend_what_provides (PkBackend *backend,
 		       PkBitfield filters,
 		       PkProvidesEnum provide,
-		       const gchar *search)
+		       gchar **values)
 {
 	pk_backend_thread_create (backend, backend_what_provides_thread);
 }
@@ -823,12 +823,12 @@ backend_resolve (PkBackend *backend, PkBitfield filters, gchar **packages)
 }
 
 static gboolean
-backend_search_file_thread (PkBackend *backend)
+backend_search_files_thread (PkBackend *backend)
 {
-	const gchar *search;
+	gchar **values;
 	PkBitfield filters;
 
-	search = pk_backend_get_string (backend, "search");
+	values = pk_backend_get_strv (backend, "search");
 	filters = (PkBitfield) pk_backend_get_uint (backend, "filters");
 
 	pk_backend_set_allow_cancel (backend, true);
@@ -845,7 +845,7 @@ backend_search_file_thread (PkBackend *backend)
 		}
 
 		pk_backend_set_status (backend, PK_STATUS_ENUM_QUERY);
-		vector<string> packages = search_file (backend, search, _cancel);
+		vector<string> packages = search_files (backend, values, _cancel);
 		vector<pair<pkgCache::PkgIterator, pkgCache::VerIterator> > output;
 		for(vector<string>::iterator i = packages.begin();
 		    i != packages.end(); ++i)
@@ -872,36 +872,38 @@ backend_search_file_thread (PkBackend *backend)
 }
 
 /**
- * backend_search_file:
+ * backend_search_files:
  */
 static void
-backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_files (PkBackend *backend, PkBitfield filters, gchar **values)
 {
-	pk_backend_thread_create (backend, backend_search_file_thread);
+	pk_backend_thread_create (backend, backend_search_files_thread);
 }
 
 static gboolean
-backend_search_group_thread (PkBackend *backend)
+backend_search_groups_thread (PkBackend *backend)
 {
-	const gchar *group;
+	gchar **values;
 	PkBitfield filters;
+	vector<PkGroupEnum> groups;
 
-	group = pk_backend_get_string (backend, "search");
+	values = pk_backend_get_strv (backend, "search");
 	filters = (PkBitfield) pk_backend_get_uint (backend, "filters");
 	pk_backend_set_allow_cancel (backend, true);
 
-	if (group == NULL) {
-		pk_backend_error_code (backend,
-				       PK_ERROR_ENUM_GROUP_NOT_FOUND,
-				       group);
-		pk_backend_finished (backend);
-		return false;
+	int len = g_strv_length(values);
+	for (uint i = 0; i < len; i++) {
+		if (values[i] == NULL) {
+			pk_backend_error_code (backend,
+					       PK_ERROR_ENUM_GROUP_NOT_FOUND,
+					       values[i]);
+			pk_backend_finished (backend);
+			return false;
+		} else {
+			groups.push_back(pk_group_enum_from_text(values[i]));
+		}
 	}
 
-	pk_backend_set_percentage (backend, 0);
-
-	PkGroupEnum pkGroup = pk_group_enum_from_text (group);
-
 	aptcc *m_apt = new aptcc(backend, _cancel);
 	pk_backend_set_pointer(backend, "aptcc_obj", m_apt);
 	if (m_apt->init()) {
@@ -932,8 +934,13 @@ backend_search_group_thread (PkBackend *backend)
 			section = section.substr(found + 1);
 
 			// Don't insert virtual packages instead add what it provides
-			if (pkGroup == get_enum_group(section)) {
-				output.push_back(pair<pkgCache::PkgIterator, pkgCache::VerIterator>(pkg, ver));
+			for (vector<PkGroupEnum>::iterator i = groups.begin();
+			     i != groups.end();
+			     ++i) {
+				if (*i == get_enum_group(section)) {
+					output.push_back(pair<pkgCache::PkgIterator, pkgCache::VerIterator>(pkg, ver));
+					break;
+				}
 			}
 		}
 	}
@@ -949,27 +956,30 @@ backend_search_group_thread (PkBackend *backend)
 }
 
 /**
- * backend_search_group:
+ * backend_search_groups:
  */
 static void
-backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *pkGroup)
+backend_search_groups (PkBackend *backend, PkBitfield filters, gchar **values)
 {
-	pk_backend_thread_create (backend, backend_search_group_thread);
+	pk_backend_thread_create (backend, backend_search_groups_thread);
 }
 
 static gboolean
 backend_search_package_thread (PkBackend *backend)
 {
-	const gchar *search;
+	gchar **values;
+	gchar *search;
 	PkBitfield filters;
 
-	search = pk_backend_get_string (backend, "search");
+	values = pk_backend_get_strv (backend, "search");
+	search = g_strjoinv("|", values);
 	filters = (PkBitfield) pk_backend_get_uint (backend, "filters");
 
 	pk_backend_set_percentage (backend, PK_BACKEND_PERCENTAGE_INVALID);
 	pk_backend_set_allow_cancel (backend, true);
 
-	matcher *m_matcher = new matcher(string(search));
+	matcher *m_matcher = new matcher(search);
+	g_free(search);
 	if (m_matcher->hasError()) {
 		egg_debug("Regex compilation error");
 		delete m_matcher;
@@ -1106,10 +1116,10 @@ backend_search_package_thread (PkBackend *backend)
 }
 
 /**
- * backend_search_name:
+ * backend_search_names:
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_names (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_bool(backend, "search_details", false);
 	pk_backend_thread_create(backend, backend_search_package_thread);
@@ -1119,7 +1129,7 @@ backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search
  * backend_search_details:
  */
 static void
-backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_details (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_bool(backend, "search_details", true);
 	pk_backend_thread_create(backend, backend_search_package_thread);
@@ -1448,9 +1458,9 @@ extern "C" PK_BACKEND_OPTIONS (
 	backend_resolve,				/* resolve */
 	NULL,						/* rollback */
 	backend_search_details,				/* search_details */
-	backend_search_file,				/* search_file */
-	backend_search_group,				/* search_group */
-	backend_search_name,				/* search_name */
+	backend_search_files,				/* search_files */
+	backend_search_groups,				/* search_groups */
+	backend_search_names,				/* search_names */
 	backend_install_update_packages,		/* update_packages */
 	backend_update_system,				/* update_system */
 	backend_what_provides,				/* what_provides */
commit e4f47b7c42f9ee5c3f6f0510d9b2b3f67d53094a
Author: Daniel Nicoletti <dantti85-pk at yahoo.com.br>
Date:   Mon Dec 7 18:07:42 2009 -0200

    packagekit-qt: Added searchNames, searchFiles and searchGroups

diff --git a/lib/packagekit-qt/src/client.cpp b/lib/packagekit-qt/src/client.cpp
index 05c0bbe..d337fb7 100644
--- a/lib/packagekit-qt/src/client.cpp
+++ b/lib/packagekit-qt/src/client.cpp
@@ -407,14 +407,14 @@ Transaction* Client::rollback(Transaction* oldtrans)
 	RUN_TRANSACTION(Rollback(oldtrans->tid()))
 }
 
-Transaction* Client::searchFile(const QString& search, Filters filters)
+Transaction* Client::searchFiles(const QStringList& search, Filters filters)
 {
-	RUN_TRANSACTION(SearchFile(Util::filtersToString(filters), search))
+	RUN_TRANSACTION(SearchFiles(Util::filtersToString(filters), search))
 }
 
-Transaction* Client::searchFile(const QStringList& search, Filters filters)
+Transaction* Client::searchFile(const QString& search, Filters filters)
 {
-	return searchFile(search.join("&"), filters);
+	return searchFiles(QStringList() << search, filters);
 }
 
 Transaction* Client::searchDetails(const QString& search, Filters filters)
@@ -422,14 +422,29 @@ Transaction* Client::searchDetails(const QString& search, Filters filters)
 	RUN_TRANSACTION(SearchDetails(Util::filtersToString(filters), search))
 }
 
+Transaction* Client::searchGroups(Client::Groups groups, Filters filters)
+{
+	QStringList groupsSL;
+	foreach (Client::Group group, groups) {
+		groupsSL << Util::enumToString<Client>(group, "Group", "Group");
+	}
+
+	RUN_TRANSACTION(SearchGroups(Util::filtersToString(filters), groupsSL))
+}
+
 Transaction* Client::searchGroup(Client::Group group, Filters filters)
 {
-	RUN_TRANSACTION(SearchGroup(Util::filtersToString(filters), Util::enumToString<Client>(group, "Group", "Group")))
+	return searchGroups(Groups() << group, filters);
+}
+
+Transaction* Client::searchNames(const QStringList& search, Filters filters)
+{
+	RUN_TRANSACTION(SearchNames(Util::filtersToString(filters), search))
 }
 
 Transaction* Client::searchName(const QString& search, Filters filters)
 {
-	RUN_TRANSACTION(SearchName(Util::filtersToString(filters), search))
+	return searchNames(QStringList() << search, filters);
 }
 
 Package* Client::searchFromDesktopFile(const QString& path)
diff --git a/lib/packagekit-qt/src/client.h b/lib/packagekit-qt/src/client.h
index 8360176..be5e21d 100644
--- a/lib/packagekit-qt/src/client.h
+++ b/lib/packagekit-qt/src/client.h
@@ -725,7 +725,7 @@ public:
 	 * \p filters can be used to restrict the returned packages
 	 */
 	Transaction* searchFile(const QString& search, Filters filters = NoFilter);
-	Transaction* searchFile(const QStringList& search, Filters filters = NoFilter);
+	Transaction* searchFiles(const QStringList& search, Filters filters = NoFilter);
 
 	/**
 	 * \brief Search in the packages details
@@ -740,6 +740,7 @@ public:
 	 * \p filters can be used to restrict the returned packages
 	 */
 	Transaction* searchGroup(Client::Group group, Filters filters = NoFilter);
+	Transaction* searchGroups(Client::Groups group, Filters filters = NoFilter);
 
 	/**
 	 * \brief Search in the packages names
@@ -747,6 +748,7 @@ public:
 	 * \p filters can be used to restrict the returned packages
 	 */
 	Transaction* searchName(const QString& search, Filters filters = NoFilter);
+	Transaction* searchNames(const QStringList& search, Filters filters = NoFilter);
 
 	/**
 	 * \brief Tries to find a package name from a desktop file
diff --git a/lib/packagekit-qt/src/transactionproxy.h b/lib/packagekit-qt/src/transactionproxy.h
index 17491f2..a6648fc 100644
--- a/lib/packagekit-qt/src/transactionproxy.h
+++ b/lib/packagekit-qt/src/transactionproxy.h
@@ -302,25 +302,25 @@ public Q_SLOTS: // METHODS
         return asyncCallWithArgumentList(QLatin1String("SearchDetails"), argumentList);
     }
 
-    inline QDBusPendingReply<> SearchFile(const QString &filter, const QString &values)
+    inline QDBusPendingReply<> SearchFiles(const QString &filter, const QStringList &values)
     {
         QList<QVariant> argumentList;
         argumentList << qVariantFromValue(filter) << qVariantFromValue(values);
-        return asyncCallWithArgumentList(QLatin1String("SearchFile"), argumentList);
+        return asyncCallWithArgumentList(QLatin1String("SearchFiles"), argumentList);
     }
 
-    inline QDBusPendingReply<> SearchGroup(const QString &filter, const QString &values)
+    inline QDBusPendingReply<> SearchGroups(const QString &filter, const QStringList &values)
     {
         QList<QVariant> argumentList;
         argumentList << qVariantFromValue(filter) << qVariantFromValue(values);
-        return asyncCallWithArgumentList(QLatin1String("SearchGroup"), argumentList);
+        return asyncCallWithArgumentList(QLatin1String("SearchGroups"), argumentList);
     }
 
-    inline QDBusPendingReply<> SearchName(const QString &filter, const QString &values)
+    inline QDBusPendingReply<> SearchNames(const QString &filter, const QStringList &values)
     {
         QList<QVariant> argumentList;
         argumentList << qVariantFromValue(filter) << qVariantFromValue(values);
-        return asyncCallWithArgumentList(QLatin1String("SearchName"), argumentList);
+        return asyncCallWithArgumentList(QLatin1String("SearchNames"), argumentList);
     }
 
     inline QDBusPendingReply<> SetHints(const QStringList &hints)
commit b9204f08e2df864bd2aaebbc6d0515c1db872e3f
Author: Daniel Nicoletti <dantti85-pk at yahoo.com.br>
Date:   Mon Dec 7 16:25:48 2009 -0200

    packagekit-qt: removed deprecated methods

diff --git a/lib/packagekit-qt/src/client.cpp b/lib/packagekit-qt/src/client.cpp
index bfd7303..05c0bbe 100644
--- a/lib/packagekit-qt/src/client.cpp
+++ b/lib/packagekit-qt/src/client.cpp
@@ -72,13 +72,10 @@ Client::Client(QObject* parent) : QObject(parent)
 	d = new ClientPrivate(this);
 
 	d->daemon = new DaemonProxy(PK_NAME, PK_PATH, QDBusConnection::systemBus(), this);
-	d->locale = QString();
 
 	d->error = NoError;
 
 	connect(d->daemon, SIGNAL(Changed()), this, SIGNAL(changed()));
-	connect(d->daemon, SIGNAL(Locked(bool)), this, SIGNAL(locked(bool)));
-	connect(d->daemon, SIGNAL(NetworkStateChanged(const QString&)), d, SLOT(networkStateChanged(const QString&)));
 	connect(d->daemon, SIGNAL(RepoListChanged()), this, SIGNAL(repoListChanged()));
 	connect(d->daemon, SIGNAL(RestartSchedule()), this, SIGNAL(restartScheduled()));
 	connect(d->daemon, SIGNAL(TransactionListChanged(const QStringList&)), d, SLOT(transactionListChanged(const QStringList&)));
@@ -112,19 +109,6 @@ Client::Actions Client::actions() const
 	return flags;
 }
 
-Client::Actions Client::getActions() const
-{
-	return actions();
-}
-
-Client::BackendDetail Client::getBackendDetail() const
-{
-	BackendDetail detail;
-	detail.name = backendName();
-	detail.author = backendAuthor();
-	return detail;
-}
-
 QString Client::backendName() const
 {
 	return d->daemon->backendName();
@@ -156,11 +140,6 @@ Client::Filters Client::filters() const
 	return flags;
 }
 
-Client::Filters Client::getFilters() const
-{
-	return filters();
-}
-
 Client::Groups Client::groups() const
 {
 	QStringList groups = d->daemon->groups().split(";");
@@ -172,11 +151,6 @@ Client::Groups Client::groups() const
 	return flags;
 }
 
-Client::Groups Client::getGroups() const
-{
-	return groups();
-}
-
 bool Client::locked() const
 {
 	return d->daemon->locked();
@@ -187,22 +161,12 @@ QStringList Client::mimeTypes() const
 	return d->daemon->mimeTypes().split(";");
 }
 
-QStringList Client::getMimeTypes() const
-{
-	return mimeTypes();
-}
-
 Client::NetworkState Client::networkState() const
 {
 	QString state = d->daemon->networkState();
 	return (NetworkState) Util::enumFromString<Client>(state, "NetworkState", "Network");
 }
 
-Client::NetworkState Client::getNetworkState() const
-{
-	return networkState();
-}
-
 QString Client::distroId() const
 {
 	return d->daemon->distroId();
@@ -225,11 +189,6 @@ QList<Transaction*> Client::getTransactions()
 	return transactions;
 }
 
-void Client::setLocale(const QString& locale)
-{
-	d->locale = locale;
-}
-
 void Client::setHints(const QStringList& hints)
 {
 	d->hints = hints;
diff --git a/lib/packagekit-qt/src/client.h b/lib/packagekit-qt/src/client.h
index 28d3781..8360176 100644
--- a/lib/packagekit-qt/src/client.h
+++ b/lib/packagekit-qt/src/client.h
@@ -124,35 +124,10 @@ public:
 
 	/**
 	 * Returns all the actions supported by the current backend
-	 * This function is DEPRECATED and will be removed in a
-	 * future release, use \sa actions() instead.
-	 */
-	Actions Q_DECL_DEPRECATED getActions() const;
-
-	/**
-	 * Returns all the actions supported by the current backend
 	 */
 	Actions actions() const;
 
 	/**
-	 * Holds a backend's detail
-	 * \li \c name is the name of the backend
-	 * \li \c author is the name of the person who wrote the backend
-	 */
-	typedef struct {
-		QString name;
-		QString author;
-	} BackendDetail;
-
-	/**
-	 * Gets the current backend's details
-	 * \return a BackendDetail struct holding the backend's details. You have to free this structure.
-	 * This method is DEPRECATED use backendAuthor(), backendName()
-	 * and backendDescription() instead.
-	 */
-	BackendDetail Q_DECL_DEPRECATED getBackendDetail() const;
-
-	/**
 	 * The backend name, e.g. "yum".
 	 */
 	QString backendName() const;
@@ -203,12 +178,6 @@ public:
 
 	/**
 	 * Returns the filters supported by the current backend
-	 * This method is DEPRECATED use \sa filters() instead.
-	 */
-	Filters Q_DECL_DEPRECATED getFilters() const;
-
-	/**
-	 * Returns the filters supported by the current backend
 	 */
 	Filters filters() const;
 
@@ -256,12 +225,6 @@ public:
 
 	/**
 	 * Returns the groups supported by the current backend
-	 * This method is DEPRECATED use \sa groups() instead.
-	 */
-	Groups Q_DECL_DEPRECATED getGroups() const;
-
-	/**
-	 * Returns the groups supported by the current backend
 	 */
 	Groups groups() const;
 
@@ -272,12 +235,6 @@ public:
 
 	/**
 	 * Returns a list containing the MIME types supported by the current backend
-	 * This method is DEPRECATED use \sa mimeTypes() instead.
-	 */
-	QStringList Q_DECL_DEPRECATED getMimeTypes() const;
-
-	/**
-	 * Returns a list containing the MIME types supported by the current backend
 	 */
 	QStringList mimeTypes() const;
 
@@ -295,12 +252,6 @@ public:
 
 	/**
 	 * Returns the current network state
-	 * This method is DEPRECATED use \sa networkState() instead.
-	 */
-	NetworkState Q_DECL_DEPRECATED getNetworkState() const;
-
-	/**
-	 * Returns the current network state
 	 */
 	NetworkState networkState() const;
 
@@ -322,13 +273,6 @@ public:
 	QList<Transaction*> getTransactions();
 
 	/**
-	 * Sets a global locale for all the transactions to be created
-	 * \warning THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-	 * Use SetHints("locale=$code") instead.
-	 */
-	void Q_DECL_DEPRECATED setLocale(const QString& locale);
-
-	/**
 	 * \brief Sets a global hints for all the transactions to be created
 	 *
 	 * This method allows the calling session to set transaction \p hints for
@@ -885,18 +829,6 @@ Q_SIGNALS:
 	void error(PackageKit::Client::DaemonError e);
 
 	/**
-	 * Emitted when the daemon's locked state changes
-	 * This signal is DEPRECATED use \sa changed() and \sa locked() instead.
-	 */
-	void locked(bool locked);
-
-	/**
-	 * Emitted when the network state changes
-	 * This signal is DEPRECATED use \sa changed() and \sa networkState() instead.
-	 */
-	void networkStateChanged(PackageKit::Client::NetworkState state);
-
-	/**
 	 * Emitted when the list of repositories changes
 	 */
 	void repoListChanged();
diff --git a/lib/packagekit-qt/src/clientprivate.cpp b/lib/packagekit-qt/src/clientprivate.cpp
index 4681802..76c56cf 100644
--- a/lib/packagekit-qt/src/clientprivate.cpp
+++ b/lib/packagekit-qt/src/clientprivate.cpp
@@ -44,9 +44,6 @@ Transaction* ClientPrivate::createNewTransaction()
 		return t;
 	}
 
-	if(!locale.isNull())
-		t->setLocale(locale);
-
 	if(!hints.isEmpty())
 		t->setHints(hints);
 
@@ -78,15 +75,6 @@ void ClientPrivate::transactionListChanged(const QStringList& tids)
 //	qDebug() << "leaving transactionListChanged";
 }
 
-void ClientPrivate::networkStateChanged(const QString& state)
-{
-	int value = Util::enumFromString<Client>(state, "NetworkState", "Network");
-	if(value == -1) {
-		return;
-	}
-	c->networkStateChanged((Client::NetworkState)value);
-}
-
 void ClientPrivate::serviceOwnerChanged (const QString& name, const QString& oldOnwer, const QString& newOwner)
 {
 	if (name != PK_NAME)
diff --git a/lib/packagekit-qt/src/clientprivate.h b/lib/packagekit-qt/src/clientprivate.h
index 220d124..aaa73f9 100644
--- a/lib/packagekit-qt/src/clientprivate.h
+++ b/lib/packagekit-qt/src/clientprivate.h
@@ -41,7 +41,6 @@ public:
 	DaemonProxy* daemon;
 	Client* c;
 
-	QString locale;
 	QStringList hints;
 
 	QMutex runningTransactionsLocker;
@@ -55,8 +54,6 @@ public:
 public slots:
 	// org.freedesktop.PackageKit
 	void transactionListChanged(const QStringList& tids);
-	// locked
-	void networkStateChanged(const QString& state);
 	// restartScheduled
 	// repoListChanged
 	// updatesChanged
diff --git a/lib/packagekit-qt/src/transaction.cpp b/lib/packagekit-qt/src/transaction.cpp
index 593b762..2f3c396 100644
--- a/lib/packagekit-qt/src/transaction.cpp
+++ b/lib/packagekit-qt/src/transaction.cpp
@@ -42,7 +42,6 @@ Transaction::Transaction(const QString& tid, Client* parent) : QObject(parent)
 	d->error = Client::NoError;
 
 	connect(d->p, SIGNAL(Changed()), this, SIGNAL(changed()));
-	connect(d->p, SIGNAL(AllowCancel(bool)), this, SIGNAL(allowCancelChanged(bool)));
 	connect(d->p, SIGNAL(Category(const QString&, const QString&, const QString&, const QString&, const QString&)), this, SIGNAL(category(const QString&, const QString&, const QString&, const QString&, const QString&)));
 	connect(d->p, SIGNAL(Destroy()), this, SIGNAL(destroy()));
 	connect(d->p, SIGNAL(Details(const QString&, const QString&, const QString&, const QString&, const QString&, qulonglong)), d, SLOT(details(const QString&, const QString&, const QString&, const QString&, const QString&, qulonglong)));
@@ -52,13 +51,11 @@ Transaction::Transaction(const QString& tid, Client* parent) : QObject(parent)
 	connect(d->p, SIGNAL(Finished(const QString&, uint)), d, SLOT(finished(const QString&, uint)));
 	connect(d->p, SIGNAL(Message(const QString&, const QString&)), d, SLOT(message(const QString&, const QString&)));
 	connect(d->p, SIGNAL(Package(const QString&, const QString&, const QString&)), d, SLOT(package(const QString&, const QString&, const QString&)));
-	connect(d->p, SIGNAL(ProgressChanged(uint, uint, uint, uint)), d, SLOT(progressChanged(uint, uint, uint, uint)));
 	connect(d->p, SIGNAL(RepoDetail(const QString&, const QString&, bool)), this, SIGNAL(repoDetail(const QString&, const QString&, bool)));
 	connect(d->p, SIGNAL(RepoSignatureRequired(const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&)), d, SLOT(repoSignatureRequired(const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&)));
 	connect(d->p, SIGNAL(EulaRequired(const QString&, const QString&, const QString&, const QString&)), d, SLOT(eulaRequired(const QString&, const QString&, const QString&, const QString&)));
 	connect(d->p, SIGNAL(MediaChangeRequired(const QString&, const QString&, const QString&)), d, SLOT(mediaChangeRequired(const QString&, const QString&, const QString&)));
 	connect(d->p, SIGNAL(RequireRestart(const QString&, const QString&)), d, SLOT(requireRestart(const QString&, const QString&)));
-	connect(d->p, SIGNAL(StatusChanged(const QString&)), d, SLOT(statusChanged(const QString&)));
 	connect(d->p, SIGNAL(Transaction(const QString&, const QString&, bool, const QString&, uint, const QString&, uint, const QString&)), d, SLOT(transaction(const QString&, const QString&, bool, const QString&, uint, const QString&, uint, const QString&)));
 	connect(d->p, SIGNAL(UpdateDetail(const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&)), d, SLOT(updateDetail(const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&, const QString&)));
 
@@ -119,17 +116,6 @@ Package* Transaction::lastPackage() const
 	return new Package(d->p->lastPackage ());
 }
 
-Transaction::ProgressInfo Transaction::progress() const
-{
-	ProgressInfo i;
-	i.percentage = d->p->percentage ();
-	i.subpercentage = d->p->subpercentage ();
-	i.elapsed = d->p->elapsedTime ();
-	i.remaining = d->p->remainingTime ();
-
-	return i;
-}
-
 uint Transaction::percentage() const
 {
 	return d->p->percentage ();
@@ -163,11 +149,6 @@ Client::Action Transaction::role() const
 	return (Client::Action) Util::enumFromString<Client>(d->p->role (), "Action", "Action");
 }
 
-void Transaction::setLocale(const QString& locale)
-{
-	d->p->SetLocale(locale);
-}
-
 void Transaction::setHints(const QStringList& hints)
 {
 	d->p->SetHints(hints);
diff --git a/lib/packagekit-qt/src/transaction.h b/lib/packagekit-qt/src/transaction.h
index e31c7ed..5641b00 100644
--- a/lib/packagekit-qt/src/transaction.h
+++ b/lib/packagekit-qt/src/transaction.h
@@ -106,31 +106,6 @@ public:
 	Package* lastPackage() const;
 
 	/**
-	 * Gathers all the information about a transaction's progress in one struct
-	 * \li \c percentage is the global percentage (for example, 40\% when having installed 4 packages out of 10)
-	 * \li \c subpercentage is the percentage of the current subtask (for example, 60\% of the 4th package installation)
-	 * \li \c elapsed is the number of seconds elapsed since the beginning of the transaction
-	 * \li \c remaining is the estimated number of seconds remaining until the transaction finishes
-	 */
-	typedef struct {
-		uint percentage;
-		uint subpercentage;
-		uint elapsed;
-		uint remaining;
-	} ProgressInfo;
-	/**
-	 * Returns the current transaction's progress
-	 * \return a ProgressInfo struct describing the transaction's progress
-	 *
-	 * \warning THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-	 * Use \sa percentage(), \sa subpercentage(), \sa elapsedTime(),
-	 * \sa remainingTime() and \sa speed() instead.
-	 *
-	 * \sa Client::setLocale
-	 */
-	ProgressInfo Q_DECL_DEPRECATED progress() const;
-
-	/**
 	 * The percentage complete of the whole transaction.
 	 * \return percentage, or 101 if not known.
 	 */
@@ -167,18 +142,6 @@ public:
 	Client::Action role() const;
 
 	/**
-	 * \brief Tells the underlying package manager to use the given \p locale
-	 *
-	 * It's recommanded to call Client::setLocale, which will in turn call setLocale
-	 * on every created transaction.
-	 * \warning THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-	 * Use SetHints("locale=$code") instead.
-	 *
-	 * \sa Client::setLocale
-	 */
-	void Q_DECL_DEPRECATED setLocale(const QString& locale);
-
-	/**
 	 * \brief Tells the underlying package manager to use the given \p hints
 	 *
 	 * This method allows the calling session to set transaction \p hints for
@@ -328,20 +291,6 @@ Q_SIGNALS:
 	void changed();
 
 	/**
-	 * The transaction has changed it's "cancellability"
-	* \warning THIS signal IS DEPRECATED and will be removed in a future release,
-	 * use \sa changed() and \sa allowCancel() property.
-	 */
-	void allowCancelChanged(bool allow);
-
-	/**
-	 * The transaction's caller activity changed
-	 * \warning THIS signal IS DEPRECATED and will be removed in a future release,
-	 * use \sa changed() and \sa callerActive() property.
-	 */
-	void callerActiveChanged(bool isActive);
-
-	/**
 	 * \brief Sends a category
 	 *
 	 * \li \p parent_id is the id of the parent category. A blank parent means a root category
@@ -416,13 +365,6 @@ Q_SIGNALS:
 	void package(PackageKit::Package* p);
 
 	/**
-	 * Emitted when the progress of the transaction has changed
-	 * \warning THIS signal IS DEPRECATED and will be removed in a future release,
-	 * use \sa changed() and progress properties.
-	 */
-	void progressChanged(PackageKit::Transaction::ProgressInfo info);
-
-	/**
 	 * Sends some additional details about a software repository
 	 * \sa Client::getRepoList
 	 */
@@ -440,13 +382,6 @@ Q_SIGNALS:
 	void requireRestart(PackageKit::Client::RestartType type, Package* p);
 
 	/**
-	 * Emitted when the transaction's status has changed
-	 * \warning THIS signal IS DEPRECATED and will be removed in a future release,
-	 * use \sa changed() and \sa status() property.
-	 */
-	void statusChanged(PackageKit::Transaction::Status s);
-
-	/**
 	 * Sends an old transaction
 	 * \sa Client::getOldTransactions
 	 */
diff --git a/lib/packagekit-qt/src/transactionprivate.cpp b/lib/packagekit-qt/src/transactionprivate.cpp
index 422746b..a6c95fc 100644
--- a/lib/packagekit-qt/src/transactionprivate.cpp
+++ b/lib/packagekit-qt/src/transactionprivate.cpp
@@ -96,16 +96,6 @@ void TransactionPrivate::package(const QString& info, const QString& pid, const
 	t->package(new Package(pid, info, summary));
 }
 
-void TransactionPrivate::progressChanged(uint percentage, uint subpercentage, uint elapsed, uint remaining)
-{
-	Transaction::ProgressInfo i;
-	i.percentage = percentage;
-	i.subpercentage = subpercentage;
-	i.elapsed = elapsed;
-	i.remaining = remaining;
-	t->progressChanged(i);
-}
-
 void TransactionPrivate::repoSignatureRequired(const QString& pid, const QString& repoName, const QString& keyUrl, const QString& keyUserid, const QString& keyId, const QString& keyFingerprint, const QString& keyTimestamp, const QString& type)
 {
 	Client::SignatureInfo i;
@@ -126,11 +116,6 @@ void TransactionPrivate::requireRestart(const QString& type, const QString& pid)
 	t->requireRestart((Client::RestartType)Util::enumFromString<Client>(type, "RestartType", "Restart"), new Package(pid));
 }
 
-void TransactionPrivate::statusChanged(const QString& status)
-{
-	t->statusChanged((Transaction::Status)Util::enumFromString<Transaction>(status, "Status", "Status"));
-}
-
 void TransactionPrivate::transaction(const QString& oldTid, const QString& timespec, bool succeeded, const QString& role, uint duration, const QString& data, uint uid, const QString& cmdline)
 {
 	t->transaction(new Transaction(oldTid, timespec, succeeded, role, duration, data, uid, cmdline, client));
diff --git a/lib/packagekit-qt/src/transactionprivate.h b/lib/packagekit-qt/src/transactionprivate.h
index d72bbbf..c6c5f55 100644
--- a/lib/packagekit-qt/src/transactionprivate.h
+++ b/lib/packagekit-qt/src/transactionprivate.h
@@ -66,10 +66,8 @@ public slots:
 	void finished(const QString& exitCode, uint runtime);
 	void message(const QString& type, const QString& message);
 	void package(const QString& info, const QString& pid, const QString& summary);
-	void progressChanged(uint percentage, uint subpercentage, uint elapsed, uint remaining);
 	void repoSignatureRequired(const QString& pid, const QString& repoName, const QString& keyUrl, const QString& keyUserid, const QString& keyId, const QString& keyFingerprint, const QString& keyTimestamp, const QString& type);
 	void requireRestart(const QString& type, const QString& pid);
-	void statusChanged(const QString& status);
 	void transaction(const QString& oldTid, const QString& timespec, bool succeeded, const QString& role, uint duration, const QString& data, uint uid, const QString& cmdline);
 	void updateDetail(const QString& pid, const QString& updates, const QString& obsoletes, const QString& vendorUrl, const QString& bugzillaUrl, const QString& cveUrl, const QString& restart, const QString& updateText, const QString& changelog, const QString& state, const QString& issued, const QString& updated);
 
diff --git a/lib/packagekit-qt/src/transactionproxy.h b/lib/packagekit-qt/src/transactionproxy.h
index 884d8cf..17491f2 100644
--- a/lib/packagekit-qt/src/transactionproxy.h
+++ b/lib/packagekit-qt/src/transactionproxy.h
@@ -388,7 +388,6 @@ public Q_SLOTS: // METHODS
 
 Q_SIGNALS: // SIGNALS
     void AllowCancel(bool allow_cancel);
-    void CallerActiveChanged(bool is_active);
     void Category(const QString &parent_id, const QString &cat_id, const QString &name, const QString &summary, const QString &icon);
     void Changed();
     void Destroy();
@@ -401,11 +400,9 @@ Q_SIGNALS: // SIGNALS
     void MediaChangeRequired(const QString &media_type, const QString &media_id, const QString &media_text);
     void Message(const QString &type, const QString &details);
     void Package(const QString &info, const QString &package_id, const QString &summary);
-    void ProgressChanged(uint percentage, uint subpercentage, uint elapsed, uint remaining);
     void RepoDetail(const QString &repo_id, const QString &description, bool enabled);
     void RepoSignatureRequired(const QString &package_id, const QString &repository_name, const QString &key_url, const QString &key_userid, const QString &key_id, const QString &key_fingerprint, const QString &key_timestamp, const QString &type);
     void RequireRestart(const QString &type, const QString &package_id);
-    void StatusChanged(const QString &status);
     void Transaction(const QString &old_tid, const QString &timespec, bool succeeded, const QString &role, uint duration, const QString &data, uint uid, const QString &cmdline);
     void UpdateDetail(const QString &package_id, const QString &updates, const QString &obsoletes, const QString &vendor_url, const QString &bugzilla_url, const QString &cve_url, const QString &restart, const QString &update_text, const QString &changelog, const QString &state, const QString &issued, const QString &updated);
 };
commit 54a57ae752acd0cbf41d1bfe665414402136dbf4
Author: Richard Hughes <richard at hughsie.com>
Date:   Mon Dec 7 17:38:54 2009 +0000

    glib2: remove the deprecated pk_control_get_network_state_async()

diff --git a/lib/packagekit-glib2/pk-control.c b/lib/packagekit-glib2/pk-control.c
index 452d911..e0864b5 100644
--- a/lib/packagekit-glib2/pk-control.c
+++ b/lib/packagekit-glib2/pk-control.c
@@ -924,157 +924,6 @@ pk_control_get_time_since_action_finish (PkControl *control, GAsyncResult *res,
 /***************************************************************************************************/
 
 /**
- * pk_control_get_network_state_state_finish:
- **/
-static void
-pk_control_get_network_state_state_finish (PkControlState *state, const GError *error)
-{
-	/* get result */
-	if (state->network != PK_NETWORK_ENUM_UNKNOWN) {
-		g_simple_async_result_set_op_res_gssize (state->res, state->network);
-	} else {
-		g_simple_async_result_set_from_error (state->res, error);
-	}
-
-	/* remove from list */
-	g_ptr_array_remove (state->control->priv->calls, state);
-	if (state->call != NULL)
-		egg_warning ("state array remove %p (%p)", state, state->call);
-	else
-		egg_debug ("state array remove %p", state);
-
-	/* complete */
-	g_simple_async_result_complete_in_idle (state->res);
-
-	/* deallocate */
-	if (state->cancellable != NULL) {
-		g_cancellable_disconnect (state->cancellable, state->cancellable_id);
-		g_object_unref (state->cancellable);
-	}
-	g_object_unref (state->res);
-	g_object_unref (state->control);
-	g_slice_free (PkControlState, state);
-}
-
-/**
- * pk_control_get_network_state_cb:
- **/
-static void
-pk_control_get_network_state_cb (DBusGProxy *proxy, DBusGProxyCall *call, PkControlState *state)
-{
-	GError *error = NULL;
-	gboolean ret;
-	gchar *network_state = NULL;
-
-	/* finished this call */
-	state->call = NULL;
-
-	/* get the result */
-	ret = dbus_g_proxy_end_call (proxy, call, &error,
-				     G_TYPE_STRING, &network_state,
-				     G_TYPE_INVALID);
-	if (!ret) {
-		/* fix up the D-Bus error */
-		pk_control_fixup_dbus_error (error);
-		egg_warning ("failed: %s", error->message);
-		pk_control_get_network_state_state_finish (state, error);
-		g_error_free (error);
-		goto out;
-	}
-
-	/* save data */
-	state->network = pk_network_enum_from_text (network_state);
-	if (state->network == PK_NETWORK_ENUM_UNKNOWN) {
-		error = g_error_new (PK_CONTROL_ERROR, PK_CONTROL_ERROR_FAILED, "could not get state");
-		pk_control_get_network_state_state_finish (state, error);
-		g_error_free (error);
-		goto out;
-	}
-
-	/* we're done */
-	pk_control_get_network_state_state_finish (state, NULL);
-out:
-	g_free (network_state);
-	return;
-}
-
-/**
- * pk_control_get_network_state_async:
- * @control: a valid #PkControl instance
- * @cancellable: a #GCancellable or %NULL
- * @callback: the function to run on completion
- * @user_data: the data to pass to @callback
- *
- * Gets the network state.
- **/
-void
-pk_control_get_network_state_async (PkControl *control, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
-{
-	GSimpleAsyncResult *res;
-	PkControlState *state;
-
-	g_return_if_fail (PK_IS_CONTROL (control));
-	g_return_if_fail (callback != NULL);
-
-	res = g_simple_async_result_new (G_OBJECT (control), callback, user_data, pk_control_get_network_state_async);
-
-	/* save state */
-	state = g_slice_new0 (PkControlState);
-	state->res = g_object_ref (res);
-	state->control = g_object_ref (control);
-	state->network = PK_NETWORK_ENUM_UNKNOWN;
-	if (cancellable != NULL) {
-		state->cancellable = g_object_ref (cancellable);
-		state->cancellable_id = g_cancellable_connect (cancellable, G_CALLBACK (pk_control_cancellable_cancel_cb), state, NULL);
-	}
-
-	/* call D-Bus async */
-	state->call = dbus_g_proxy_begin_call (control->priv->proxy, "GetNetworkState",
-					       (DBusGProxyCallNotify) pk_control_get_network_state_cb, state, NULL,
-					       G_TYPE_INVALID);
-	if (state->call == NULL)
-		egg_error ("failed to setup call, maybe OOM or no connection");
-
-	/* track state */
-	g_ptr_array_add (control->priv->calls, state);
-	egg_debug ("state array add %p (%p)", state, state->call);
-
-	g_object_unref (res);
-}
-
-/**
- * pk_control_get_network_state_finish:
- * @control: a valid #PkControl instance
- * @res: the #GAsyncResult
- * @error: A #GError or %NULL
- *
- * Gets the result from the asynchronous function.
- *
- * Return value: an enumerated network state
- **/
-PkNetworkEnum
-pk_control_get_network_state_finish (PkControl *control, GAsyncResult *res, GError **error)
-{
-	GSimpleAsyncResult *simple;
-	gpointer source_tag;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_NETWORK_ENUM_UNKNOWN);
-	g_return_val_if_fail (G_IS_SIMPLE_ASYNC_RESULT (res), PK_NETWORK_ENUM_UNKNOWN);
-
-	simple = G_SIMPLE_ASYNC_RESULT (res);
-	source_tag = g_simple_async_result_get_source_tag (simple);
-
-	g_return_val_if_fail (source_tag == pk_control_get_network_state_async, PK_NETWORK_ENUM_UNKNOWN);
-
-	if (g_simple_async_result_propagate_error (simple, error))
-		return PK_NETWORK_ENUM_UNKNOWN;
-
-	return (PkNetworkEnum) g_simple_async_result_get_op_res_gssize (simple);
-}
-
-/***************************************************************************************************/
-
-/**
  * pk_control_can_authorize_state_finish:
  **/
 static void
@@ -2451,24 +2300,6 @@ pk_control_test_get_time_since_action_cb (GObject *object, GAsyncResult *res, Eg
 }
 
 static void
-pk_control_test_get_network_state_cb (GObject *object, GAsyncResult *res, EggTest *test)
-{
-	PkControl *control = PK_CONTROL (object);
-	GError *error = NULL;
-	PkNetworkEnum network;
-
-	/* get the result */
-	network = pk_control_get_network_state_finish (control, res, &error);
-	if (network == PK_NETWORK_ENUM_UNKNOWN) {
-		egg_test_failed (test, "failed to get network state: %s", error->message);
-		g_error_free (error);
-		return;
-	}
-
-	egg_test_loop_quit (test);
-}
-
-static void
 pk_control_test_can_authorize_cb (GObject *object, GAsyncResult *res, EggTest *test)
 {
 	PkControl *control = PK_CONTROL (object);
@@ -2558,12 +2389,6 @@ pk_control_test (gpointer user_data)
 	egg_test_success (test, "got get time since in %i", egg_test_elapsed (test));
 
 	/************************************************************/
-	egg_test_title (test, "get network state async");
-	pk_control_get_network_state_async (control, NULL, (GAsyncReadyCallback) pk_control_test_get_network_state_cb, test);
-	egg_test_loop_wait (test, 5000);
-	egg_test_success (test, "get network state in %i", egg_test_elapsed (test));
-
-	/************************************************************/
 	egg_test_title (test, "get auth state async");
 	pk_control_can_authorize_async (control, "org.freedesktop.packagekit.system-update", NULL,
 					(GAsyncReadyCallback) pk_control_test_can_authorize_cb, test);
commit dd9da9d5f00f7a67cbee6fa928a9487fea93fafe
Author: warrink <warrink at fedoraproject.org>
Date:   Mon Dec 7 17:31:49 2009 +0000

    Sending translation for Dutch

diff --git a/po/nl.po b/po/nl.po
index d08a584..22ae789 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -6,8 +6,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: packagekit.master\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-11-24 08:29+0000\n"
-"PO-Revision-Date: 2009-11-24 13:26+0100\n"
+"POT-Creation-Date: 2009-12-07 14:32+0000\n"
+"PO-Revision-Date: 2009-12-07 18:30+0100\n"
 "Last-Translator: Richard van der Luit <nippur at fedoraproject.org>\n"
 "Language-Team: Dutch <nl at li.org>\n"
 "MIME-Version: 1.0\n"
@@ -18,194 +18,197 @@ msgstr ""
 "X-Generator: KBabel 1.11.4\n"
 
 #. TRANSLATORS: this is an atomic transaction
-#: ../client/pk-console.c:173
+#. TRANSLATORS: the role is the point of the transaction, e.g. update-system
+#: ../client/pk-console.c:175 ../client/pk-console.c:597
 msgid "Transaction"
 msgstr "Transactie"
 
 #. TRANSLATORS: this is the time the transaction was started in system timezone
-#: ../client/pk-console.c:175
+#: ../client/pk-console.c:177
 msgid "System time"
 msgstr "Systeemtijd"
 
 #. TRANSLATORS: this is if the transaction succeeded or not
-#: ../client/pk-console.c:177
+#: ../client/pk-console.c:179
 msgid "Succeeded"
 msgstr "Geslaagd"
 
-#: ../client/pk-console.c:177
+#: ../client/pk-console.c:179
 msgid "True"
 msgstr "Waar"
 
-#: ../client/pk-console.c:177
+#: ../client/pk-console.c:179
 msgid "False"
 msgstr "Niet waar"
 
 #. TRANSLATORS: this is the transactions role, e.g. "update-system"
 #. TRANSLATORS: the trasaction role, e.g. update-system
-#: ../client/pk-console.c:179 ../src/pk-polkit-action-lookup.c:336
+#: ../client/pk-console.c:181 ../src/pk-polkit-action-lookup.c:332
 msgid "Role"
 msgstr "Rol"
 
 #. TRANSLATORS: this is The duration of the transaction
-#: ../client/pk-console.c:184
+#: ../client/pk-console.c:186
 msgid "Duration"
 msgstr "Duur"
 
-#: ../client/pk-console.c:184
+#: ../client/pk-console.c:186
 msgid "(seconds)"
 msgstr "(seconden)"
 
 #. TRANSLATORS: this is The command line used to do the action
 #. TRANSLATORS: the command line of the thing that wants the authentication
-#: ../client/pk-console.c:188 ../src/pk-polkit-action-lookup.c:350
+#: ../client/pk-console.c:190 ../src/pk-polkit-action-lookup.c:346
 msgid "Command line"
 msgstr "Commando regel"
 
 #. TRANSLATORS: this is the user ID of the user that started the action
-#: ../client/pk-console.c:190
+#: ../client/pk-console.c:192
 msgid "User ID"
 msgstr "Gebruiker ID"
 
 #. TRANSLATORS: this is the username, e.g. hughsie
-#: ../client/pk-console.c:197
+#: ../client/pk-console.c:199
 msgid "Username"
 msgstr "Gebruikernaam"
 
 #. TRANSLATORS: this is the users real name, e.g. "Richard Hughes"
-#: ../client/pk-console.c:201
+#: ../client/pk-console.c:203
 msgid "Real name"
 msgstr "Werkelijke naam"
 
-#: ../client/pk-console.c:209
+#: ../client/pk-console.c:211
 msgid "Affected packages:"
 msgstr "Betreffende pakketten"
 
-#: ../client/pk-console.c:211
+#: ../client/pk-console.c:213
 msgid "Affected packages: None"
 msgstr "Betreffende pakketten: Geen"
 
 #. TRANSLATORS: this is the distro, e.g. Fedora 10
-#: ../client/pk-console.c:246
+#: ../client/pk-console.c:248
 msgid "Distribution"
 msgstr "Distributie"
 
 #. TRANSLATORS: this is type of update, stable or testing
-#: ../client/pk-console.c:248
+#: ../client/pk-console.c:250
 msgid "Type"
 msgstr "Type"
 
 #. TRANSLATORS: this is any summary text describing the upgrade
 #. TRANSLATORS: this is the summary of the group
-#: ../client/pk-console.c:250 ../client/pk-console.c:289
+#: ../client/pk-console.c:252 ../client/pk-console.c:291
 msgid "Summary"
 msgstr "Samenvatting"
 
 #. TRANSLATORS: this is the group category name
-#: ../client/pk-console.c:278
+#: ../client/pk-console.c:280
 msgid "Category"
 msgstr "Categorie"
 
 #. TRANSLATORS: this is group identifier
-#: ../client/pk-console.c:280
+#: ../client/pk-console.c:282
 msgid "ID"
 msgstr "ID"
 
 #. TRANSLATORS: this is the parent group
-#: ../client/pk-console.c:283
+#: ../client/pk-console.c:285
 msgid "Parent"
 msgstr "Ouder"
 
 #. TRANSLATORS: this is the name of the parent group
-#: ../client/pk-console.c:286
+#: ../client/pk-console.c:288
 msgid "Name"
 msgstr "Naam"
 
 #. TRANSLATORS: this is preferred icon for the group
-#: ../client/pk-console.c:292
+#: ../client/pk-console.c:294
 msgid "Icon"
 msgstr "Icoon"
 
 #. TRANSLATORS: this is a header for the package that can be updated
-#: ../client/pk-console.c:338
+#: ../client/pk-console.c:340
 msgid "Details about the update:"
 msgstr "Details van de vernieuwing:"
 
 #. TRANSLATORS: details about the update, package name and version
+#. TRANSLATORS: the package that is being processed
 #. TRANSLATORS: the package that is not signed by a known key
 #. TRANSLATORS: the package name that was trying to be installed
 #. TRANSLATORS: title, the names of the packages that the method is processing
-#: ../client/pk-console.c:344 ../lib/packagekit-glib2/pk-task-text.c:126
+#: ../client/pk-console.c:346 ../client/pk-console.c:616
+#: ../lib/packagekit-glib2/pk-task-text.c:126
 #: ../lib/packagekit-glib2/pk-task-text.c:208
-#: ../src/pk-polkit-action-lookup.c:361
+#: ../src/pk-polkit-action-lookup.c:357
 msgid "Package"
 msgid_plural "Packages"
 msgstr[0] "Pakket"
 msgstr[1] "Pakketten"
 
 #. TRANSLATORS: details about the update, any packages that this update updates
-#: ../client/pk-console.c:347
+#: ../client/pk-console.c:349
 msgid "Updates"
 msgstr "Vernieuwingen"
 
 #. TRANSLATORS: details about the update, any packages that this update obsoletes
-#: ../client/pk-console.c:351
+#: ../client/pk-console.c:353
 msgid "Obsoletes"
 msgstr "Verouderde pakketten"
 
 #. TRANSLATORS: details about the update, the vendor URLs
 #. TRANSLATORS: the vendor (e.g. vmware) that is providing the EULA
-#: ../client/pk-console.c:355 ../lib/packagekit-glib2/pk-task-text.c:211
+#: ../client/pk-console.c:357 ../lib/packagekit-glib2/pk-task-text.c:211
 msgid "Vendor"
 msgstr "Verkoper"
 
 #. TRANSLATORS: details about the update, the bugzilla URLs
-#: ../client/pk-console.c:359
+#: ../client/pk-console.c:361
 msgid "Bugzilla"
 msgstr "Bugzilla"
 
 #. TRANSLATORS: details about the update, the CVE URLs
-#: ../client/pk-console.c:363
+#: ../client/pk-console.c:365
 msgid "CVE"
 msgstr "CVE"
 
 #. TRANSLATORS: details about the update, if the package requires a restart
-#: ../client/pk-console.c:367
+#: ../client/pk-console.c:369
 msgid "Restart"
 msgstr "Herstarten"
 
 #. TRANSLATORS: details about the update, any description of the update
-#: ../client/pk-console.c:371
+#: ../client/pk-console.c:373
 msgid "Update text"
 msgstr "Vernieuw tekst"
 
 #. TRANSLATORS: details about the update, the changelog for the package
-#: ../client/pk-console.c:375
+#: ../client/pk-console.c:377
 msgid "Changes"
 msgstr "Veranderingen"
 
 #. TRANSLATORS: details about the update, the ongoing state of the update
-#: ../client/pk-console.c:379
+#: ../client/pk-console.c:381
 msgid "State"
 msgstr "Status"
 
 #. TRANSLATORS: details about the update, date the update was issued
-#: ../client/pk-console.c:383
+#: ../client/pk-console.c:385
 msgid "Issued"
 msgstr "Uitgegeven"
 
 #. TRANSLATORS: details about the update, date the update was updated
 #. TRANSLATORS: The action of the package, in past tense
-#: ../client/pk-console.c:387 ../lib/packagekit-glib2/pk-console-shared.c:510
+#: ../client/pk-console.c:389 ../lib/packagekit-glib2/pk-console-shared.c:510
 msgid "Updated"
 msgstr "Vernieuwd"
 
 #. TRANSLATORS: if the repo is enabled
-#: ../client/pk-console.c:423
+#: ../client/pk-console.c:425
 msgid "Enabled"
 msgstr "Aangezit"
 
 #. TRANSLATORS: if the repo is disabled
-#: ../client/pk-console.c:426
+#: ../client/pk-console.c:428
 msgid "Disabled"
 msgstr "Uitgezet"
 
@@ -235,49 +238,69 @@ msgid "Application restart required by:"
 msgstr "Herstart vereist door toepassing:"
 
 #. TRANSLATORS: This a list of details about the package
-#: ../client/pk-console.c:505
+#: ../client/pk-console.c:507
 msgid "Package description"
 msgstr "Pakketomschrijving"
 
 #. TRANSLATORS: This a message (like a little note that may be of interest) from the transaction
-#: ../client/pk-console.c:536
+#: ../client/pk-console.c:538
 msgid "Message:"
 msgstr "Bericht:"
 
 #. TRANSLATORS: This where the package has no files
-#: ../client/pk-console.c:557
+#: ../client/pk-console.c:559
 msgid "No files"
 msgstr "Geen bestanden"
 
 #. TRANSLATORS: This a list files contained in the package
-#: ../client/pk-console.c:562
+#: ../client/pk-console.c:564
 msgid "Package files"
 msgstr "Pakketbestanden"
 
+#. TRANSLATORS: the percentage complete of the transaction
+#: ../client/pk-console.c:632
+msgid "Percentage"
+msgstr "Percentage"
+
+#. TRANSLATORS: the status of the transaction (e.g. downloading)
+#: ../client/pk-console.c:650
+msgid "Status"
+msgstr "Status"
+
+#. TRANSLATORS: the results from the transaction
+#: ../client/pk-console.c:678
+msgid "Results:"
+msgstr "Resultaten:"
+
 #. TRANSLATORS: we failed to get any results, which is pretty fatal in my book
-#: ../client/pk-console.c:636
+#: ../client/pk-console.c:685
 msgid "Fatal error"
 msgstr "Fatale fout"
 
 #. TRANSLATORS: the transaction failed in a way we could not expect
-#: ../client/pk-console.c:645
+#: ../client/pk-console.c:694
 #: ../contrib/command-not-found/pk-command-not-found.c:432
 #: ../contrib/command-not-found/pk-command-not-found.c:603
 msgid "The transaction failed"
 msgstr "De transactie faalde"
 
+#. TRANSLATORS: print a message when there are no updates
+#: ../client/pk-console.c:721
+msgid "There are no updates available at this time."
+msgstr "Er zijn op dit moment geen vernieuwingen beschikbaar."
+
 #. TRANSLATORS: a package needs to restart their system
-#: ../client/pk-console.c:713
+#: ../client/pk-console.c:808
 msgid "Please restart the computer to complete the update."
 msgstr "Herstart a.u.b de computer om de verneuwing af te maken."
 
 #. TRANSLATORS: a package needs to restart the session
-#: ../client/pk-console.c:716
+#: ../client/pk-console.c:811
 msgid "Please logout and login to complete the update."
 msgstr "Log a.u.b uit en weer in om de vernieuwing af te maken."
 
 #. TRANSLATORS: a package needs to restart their system (due to security)
-#: ../client/pk-console.c:719
+#: ../client/pk-console.c:814
 msgid ""
 "Please restart the computer to complete the update as important security "
 "updates have been installed."
@@ -286,26 +309,26 @@ msgstr ""
 "beveiligings vernieuwingen geïnstaleerd zijn."
 
 #. TRANSLATORS: a package needs to restart the session (due to security)
-#: ../client/pk-console.c:722
+#: ../client/pk-console.c:817
 msgid ""
 "Please logout and login to complete the update as important security updates "
 "have been installed."
 msgstr "Log a.u.b. uit en weer in om de verniewing af te maken."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:745
+#: ../client/pk-console.c:840
 #, c-format
 msgid "This tool could not find any available package: %s"
 msgstr "Dit programma kon geen enkel beschikbaar pakket %s vinden."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:773
+#: ../client/pk-console.c:868
 #, c-format
 msgid "This tool could not find the installed package: %s"
 msgstr "Dit programma kon het geïinstallerde pakket %s niet vinden."
 
 #. TRANSLATORS: There was an error getting the list of files for the package. The detailed error follows
-#: ../client/pk-console.c:801 ../client/pk-console.c:829
+#: ../client/pk-console.c:896 ../client/pk-console.c:924
 #, c-format
 msgid "This tool could not find the package: %s"
 msgstr "Dit programma kon het pakket %s niet vinden."
@@ -314,226 +337,237 @@ msgstr "Dit programma kon het pakket %s niet vinden."
 #. TRANSLATORS: There was an error getting the dependencies for the package. The detailed error follows
 #. TRANSLATORS: There was an error getting the details about the package. The detailed error follows
 #. TRANSLATORS: The package name was not found in any software sources. The detailed error follows
-#: ../client/pk-console.c:857 ../client/pk-console.c:885
-#: ../client/pk-console.c:913 ../client/pk-console.c:941
-#: ../client/pk-console.c:969
+#: ../client/pk-console.c:952 ../client/pk-console.c:980
+#: ../client/pk-console.c:1008 ../client/pk-console.c:1036
+#: ../client/pk-console.c:1064
 #, c-format
 msgid "This tool could not find all the packages: %s"
 msgstr "Dit programma kon niet alle pakketten vinden: %s"
 
 #. TRANSLATORS: This is when the daemon crashed, and we are up shit creek without a paddle
-#: ../client/pk-console.c:998
+#: ../client/pk-console.c:1093
 msgid "The daemon crashed mid-transaction!"
 msgstr "De service is midden in de transactie gecrashed!"
 
 #. TRANSLATORS: This is the header to the --help menu
-#: ../client/pk-console.c:1032
+#: ../client/pk-console.c:1127
 msgid "PackageKit Console Interface"
 msgstr "PackageKit console-interface"
 
 #. these are commands we can use with pkcon
-#: ../client/pk-console.c:1034
+#: ../client/pk-console.c:1129
 msgid "Subcommands:"
 msgstr "Subopdrachten:"
 
 #. TRANSLATORS: we keep a database updated with the time that an action was last executed
-#: ../client/pk-console.c:1113
+#: ../client/pk-console.c:1208
 msgid "Failed to get the time since this action was last completed"
-msgstr "Verkrijgen van de tijd tussen laatste actie en deze actie is niet gelukt"
+msgstr ""
+"Verkrijgen van de tijd tussen laatste actie en deze actie is niet gelukt"
 
 #. TRANSLATORS: command line argument, just show the version string
-#: ../client/pk-console.c:1149 ../client/pk-monitor.c:280
+#: ../client/pk-console.c:1244 ../client/pk-monitor.c:280
 msgid "Show the program version and exit"
 msgstr "Programmaversie tonen en sluiten"
 
 #. TRANSLATORS: command line argument, use a filter to narrow down results
-#: ../client/pk-console.c:1152
+#: ../client/pk-console.c:1247
 msgid "Set the filter, e.g. installed"
 msgstr "Filter instellen, bijvoorbeeld geïnstalleerd"
 
 #. TRANSLATORS: command line argument, work asynchronously
-#: ../client/pk-console.c:1155
+#: ../client/pk-console.c:1250
 msgid "Exit without waiting for actions to complete"
 msgstr "Afsluiten zonder te wachten tot de transacties zijn afgerond"
 
 #. command line argument, do we ask questions
-#: ../client/pk-console.c:1158
+#: ../client/pk-console.c:1253
 #: ../contrib/debuginfo-install/pk-debuginfo-install.c:527
 msgid "Install the packages without asking for confirmation"
 msgstr "Installeer het pakket zonder goedkeuring te vragen"
 
 #. TRANSLATORS: command line argument, this command is not a priority
-#: ../client/pk-console.c:1161
+#: ../client/pk-console.c:1256
 msgid "Run the command using idle network bandwidth and also using less power"
 msgstr ""
 "Voer het commando uit met gebruik van onbenutte netwerk bandbreedte en ook "
 "om minder vermogen te gebruiken"
 
+#. TRANSLATORS: command line argument, just output without fancy formatting
+#: ../client/pk-console.c:1259
+msgid ""
+"Print to screen a machine readable output, rather than using animated widgets"
+msgstr ""
+"Print op het scherm een machine-leesbare output, in plaats van geanimeerde "
+"widgets te gebruiken"
+
 #. TRANSLATORS: we failed to contact the daemon
-#: ../client/pk-console.c:1187
+#: ../client/pk-console.c:1281
 msgid "Failed to contact PackageKit"
 msgstr "Contact met PackageKit krijgen mislukte."
 
 #. TRANSLATORS: The user specified an incorrect filter
-#: ../client/pk-console.c:1241
+#: ../client/pk-console.c:1339
 msgid "The filter specified was invalid"
 msgstr "De opgegeven filter was ongeldig"
 
 #. TRANSLATORS: a search type can be name, details, file, etc
-#: ../client/pk-console.c:1260
+#: ../client/pk-console.c:1358
 msgid "A search type is required, e.g. name"
 msgstr "Een zoektype is verplicht, b.v. naam"
 
 #. TRANSLATORS: the user needs to provide a search term
-#: ../client/pk-console.c:1267 ../client/pk-console.c:1279
-#: ../client/pk-console.c:1291 ../client/pk-console.c:1303
+#: ../client/pk-console.c:1365 ../client/pk-console.c:1377
+#: ../client/pk-console.c:1389 ../client/pk-console.c:1401
 msgid "A search term is required"
 msgstr "Een zoekterm is vereist"
 
 #. TRANSLATORS: the search type was provided, but invalid
-#: ../client/pk-console.c:1313
+#: ../client/pk-console.c:1411
 msgid "Invalid search type"
 msgstr "Ongeldig zoektype"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1319
+#: ../client/pk-console.c:1417
 msgid "A package name to install is required"
 msgstr "Een pakketnaam om te installeren is vereist"
 
 #. TRANSLATORS: the user did not specify what they wanted to install
-#: ../client/pk-console.c:1328
+#: ../client/pk-console.c:1426
 msgid "A filename to install is required"
 msgstr "Een bestandsnaam om te installeren is vereist"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1340
+#: ../client/pk-console.c:1438
 msgid "A type, key_id and package_id are required"
 msgstr "Er moet een type worden opgegeven, key_id of package_id"
 
 #. TRANSLATORS: the user did not specify what they wanted to remove
-#: ../client/pk-console.c:1351
+#: ../client/pk-console.c:1449
 msgid "A package name to remove is required"
 msgstr "Een te verwijderen pakketnaam is vereist"
 
 #. TRANSLATORS: the user did not specify anything about what to download or where
-#: ../client/pk-console.c:1360
+#: ../client/pk-console.c:1458
 msgid "A destination directory and the package names to download are required"
 msgstr "Een doelmap en dan de namen van te downloaden pakketten zijn vereist"
 
 #. TRANSLATORS: the directory does not exist, so we can't continue
-#: ../client/pk-console.c:1367
+#: ../client/pk-console.c:1465
 msgid "Directory not found"
 msgstr "Map niet gevonden"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1376
+#: ../client/pk-console.c:1474
 msgid "A licence identifier (eula-id) is required"
 msgstr "Een licentie indentificatie (eula-id) is vereis"
 
 #. TRANSLATORS: geeky error, 99.9999% of users won't see this
-#: ../client/pk-console.c:1387
+#: ../client/pk-console.c:1485
 msgid "A transaction identifier (tid) is required"
 msgstr "Een transactie indentificatie (tid) is vereist"
 
 #. TRANSLATORS: The user did not specify a package name
-#: ../client/pk-console.c:1408
+#: ../client/pk-console.c:1506
 msgid "A package name to resolve is required"
 msgstr "Een pakketnaam om te gebruiken is vereist"
 
 #. TRANSLATORS: The user did not specify a repository (software source) name
-#: ../client/pk-console.c:1419 ../client/pk-console.c:1430
+#: ../client/pk-console.c:1517 ../client/pk-console.c:1528
 msgid "A repository name is required"
 msgstr "Een naam van een repository is vereist"
 
 #. TRANSLATORS: The user didn't provide any data
-#: ../client/pk-console.c:1441
+#: ../client/pk-console.c:1539
 msgid "A repo name, parameter and value are required"
 msgstr "Een repo naam, parameter en waarde zijn vereist"
 
 #. TRANSLATORS: The user didn't specify what action to use
-#: ../client/pk-console.c:1458
+#: ../client/pk-console.c:1556
 msgid "An action, e.g. 'update-system' is required"
 msgstr "Een actie, b.v. 'update-system' is vereist"
 
 #. TRANSLATORS: The user specified an invalid action
-#: ../client/pk-console.c:1465
+#: ../client/pk-console.c:1563
 msgid "A correct role is required"
 msgstr "Een correcte rol is vereist"
 
 #. TRANSLATORS: The user did not provide a package name
 #. TRANSLATORS: This is when the user fails to supply the package name
-#: ../client/pk-console.c:1475 ../client/pk-console.c:1490
-#: ../client/pk-console.c:1499 ../client/pk-console.c:1519
-#: ../client/pk-console.c:1528 ../client/pk-generate-pack.c:283
+#: ../client/pk-console.c:1573 ../client/pk-console.c:1588
+#: ../client/pk-console.c:1597 ../client/pk-console.c:1617
+#: ../client/pk-console.c:1626 ../client/pk-generate-pack.c:298
 msgid "A package name is required"
 msgstr "Een pakketnaam is vereist"
 
 #. TRANSLATORS: each package "provides" certain things, e.g. mime(gstreamer-decoder-mp3), the user didn't specify it
-#: ../client/pk-console.c:1508
+#: ../client/pk-console.c:1606
 msgid "A package provide string is required"
 msgstr "Een pakket geleverde string is vereist"
 
 #. TRANSLATORS: The user tried to use an unsupported option on the command line
-#: ../client/pk-console.c:1588
+#: ../client/pk-console.c:1686
 #, c-format
 msgid "Option '%s' is not supported"
 msgstr "Optie '%s' wordt niet ondersteund"
 
 #. TRANSLATORS: Generic failure of what they asked to do
-#: ../client/pk-console.c:1598
+#: ../client/pk-console.c:1696
 msgid "Command failed"
 msgstr "Opdracht mislukt"
 
 #. TRANSLATORS: we can exclude certain packages (glibc) when we know they'll exist on the target
-#: ../client/pk-generate-pack.c:222
+#: ../client/pk-generate-pack.c:237
 msgid "Set the file name of dependencies to be excluded"
-msgstr "Zet de bestandsnamen van afhankelijkheden die moeten worden uitgesloten"
+msgstr ""
+"Zet de bestandsnamen van afhankelijkheden die moeten worden uitgesloten"
 
 #. TRANSLATORS: the output location
-#: ../client/pk-generate-pack.c:225
-msgid "The output file or directory (the current directory is used if ommitted)"
+#: ../client/pk-generate-pack.c:240
+msgid ""
+"The output file or directory (the current directory is used if ommitted)"
 msgstr ""
 "Het doelbestand of map (huidige map wordt gebruikt als dit niet wordt "
 "opgegeven)"
 
 #. TRANSLATORS: put a list of packages in the pack
-#: ../client/pk-generate-pack.c:228
+#: ../client/pk-generate-pack.c:243
 msgid "The package to be put into the service pack"
 msgstr "Het pakket dat in het servicepack zal worden opgenomen"
 
 #. TRANSLATORS: put all pending updates in the pack
-#: ../client/pk-generate-pack.c:231
+#: ../client/pk-generate-pack.c:246
 msgid "Put all updates available in the service pack"
 msgstr "Doe alle beschikbare updates in het servicepack"
 
 #. TRANSLATORS: This is when the user fails to supply the correct arguments
-#: ../client/pk-generate-pack.c:267
+#: ../client/pk-generate-pack.c:282
 msgid "Neither --package or --updates option selected."
 msgstr "Noch --package noch --updates als optie geselecteerd."
 
 #. TRANSLATORS: This is when the user fails to supply just one argument
-#: ../client/pk-generate-pack.c:275
+#: ../client/pk-generate-pack.c:290
 msgid "Both options selected."
 msgstr "Beide opties geselecteerd."
 
 #. TRANSLATORS: This is when the user fails to supply the output
-#: ../client/pk-generate-pack.c:291
+#: ../client/pk-generate-pack.c:306
 msgid "A output directory or file name is required"
 msgstr "Een doelmap of bestandsnaam is vereist"
 
 #. TRANSLATORS: This is when the dameon is not-installed/broken and fails to startup
-#: ../client/pk-generate-pack.c:309
+#: ../client/pk-generate-pack.c:324
 msgid "The dameon failed to startup"
 msgstr "De daemon faalde op te starten"
 
 #. TRANSLATORS: This is when the backend doesn't have the capability to get-depends
 #. TRANSLATORS: This is when the backend doesn't have the capability to download
-#: ../client/pk-generate-pack.c:320 ../client/pk-generate-pack.c:326
+#: ../client/pk-generate-pack.c:335 ../client/pk-generate-pack.c:341
 msgid "The package manager cannot perform this type of operation."
 msgstr "De package manager kan dit type operatie niet uitvoeren."
 
 #. TRANSLATORS: This is when the distro didn't include libarchive support into PK
-#: ../client/pk-generate-pack.c:333
+#: ../client/pk-generate-pack.c:348
 msgid ""
 "Service packs cannot be created as PackageKit was not built with libarchive "
 "support."
@@ -542,54 +576,55 @@ msgstr ""
 "ondersteuning is gebouwd."
 
 #. TRANSLATORS: the user specified an absolute path, but didn't get the extension correct
-#: ../client/pk-generate-pack.c:344
+#: ../client/pk-generate-pack.c:359
 msgid "If specifying a file, the service pack name must end with"
-msgstr "Bij het specificeren van een bestand moet de servicepacknaam eindigen met"
+msgstr ""
+"Bij het specificeren van een bestand moet de servicepacknaam eindigen met"
 
 #. TRANSLATORS: This is when file already exists
-#: ../client/pk-generate-pack.c:360
+#: ../client/pk-generate-pack.c:375
 msgid "A pack with the same name already exists, do you want to overwrite it?"
 msgstr "Een pack met dezelfde naam bestaat reeds, wilt u deze overschrijven?"
 
 #. TRANSLATORS: This is when the pack was not overwritten
-#: ../client/pk-generate-pack.c:363
+#: ../client/pk-generate-pack.c:378
 msgid "The pack was not overwritten."
 msgstr "Het pack werd niet overschreven."
 
 #. TRANSLATORS: This is when the temporary directory cannot be created, the directory name follows
-#: ../client/pk-generate-pack.c:376
+#: ../client/pk-generate-pack.c:391
 msgid "Failed to create directory:"
 msgstr "Aanmaken map mislukt:"
 
 #. TRANSLATORS: This is when the list of packages from the remote computer cannot be opened
-#: ../client/pk-generate-pack.c:388
+#: ../client/pk-generate-pack.c:403
 msgid "Failed to open package list."
 msgstr "Pakketlijst openen is niet gelukt."
 
 #. TRANSLATORS: The package name is being matched up to available packages
-#: ../client/pk-generate-pack.c:397
+#: ../client/pk-generate-pack.c:412
 msgid "Finding package name."
 msgstr "Pakketnaam wordt opgezocht."
 
 #. TRANSLATORS: This is when the package cannot be found in any software source. The detailed error follows
-#: ../client/pk-generate-pack.c:401
+#: ../client/pk-generate-pack.c:416
 #, c-format
 msgid "Failed to find package '%s': %s"
 msgstr "Pakket '%s' niet gevonden: %s"
 
 #. TRANSLATORS: This is telling the user we are in the process of making the pack
-#: ../client/pk-generate-pack.c:409
+#: ../client/pk-generate-pack.c:424
 msgid "Creating service pack..."
 msgstr "Servicepack wordt aangemaakt...."
 
 #. TRANSLATORS: we succeeded in making the file
-#: ../client/pk-generate-pack.c:424
+#: ../client/pk-generate-pack.c:439
 #, c-format
 msgid "Service pack created '%s'"
 msgstr "Servicepack aangemaakt '%s'"
 
 #. TRANSLATORS: we failed to make te file
-#: ../client/pk-generate-pack.c:429
+#: ../client/pk-generate-pack.c:444
 #, c-format
 msgid "Failed to create '%s': %s"
 msgstr "'%s' aanmaken niet gelukt: %s"
@@ -764,7 +799,8 @@ msgstr "Pakket %s vinden is mislukt, of is reeds geïnstalleerd: %s"
 
 #. command line argument, simulate what would be done, but don't actually do it
 #: ../contrib/debuginfo-install/pk-debuginfo-install.c:518
-msgid "Don't actually install any packages, only simulate what would be installed"
+msgid ""
+"Don't actually install any packages, only simulate what would be installed"
 msgstr ""
 "Ik installeer geen pakketten, ik simuleer alleen maar wat geïnstallerd moet "
 "worden"
@@ -1664,12 +1700,15 @@ msgid "Authentication is required to accept a EULA"
 msgstr "Authenticatie is vereist om een EULA te accepteren"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:9
-msgid "Authentication is required to cancel a task that was not started by yourself"
-msgstr "Athenticatie is vereist om een taak af te breken die niet door u is gestart"
+msgid ""
+"Authentication is required to cancel a task that was not started by yourself"
+msgstr ""
+"Athenticatie is vereist om een taak af te breken die niet door u is gestart"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:10
 msgid "Authentication is required to change software source parameters"
-msgstr "Athenticatie is vereist om de parameters van de softwarebronnen te wijzigen"
+msgstr ""
+"Athenticatie is vereist om de parameters van de softwarebronnen te wijzigen"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:11
 msgid ""
@@ -1693,7 +1732,8 @@ msgstr "Authenticatie is vereist om de systeembronnen te vernieuwen"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:15
 msgid "Authentication is required to reload the device with a new driver"
-msgstr "Authenticatie is vereist om het device te herladen met een nieuwe driver"
+msgstr ""
+"Authenticatie is vereist om het device te herladen met een nieuwe driver"
 
 #: ../policy/org.freedesktop.packagekit.policy.in.h:16
 msgid "Authentication is required to remove packages"
@@ -1836,7 +1876,8 @@ msgstr "Dit kan twee redenen hebben:"
 #. TRANSLATORS: only allowed to be owned by root
 #: ../src/pk-main.c:91
 msgid "The correct user is not launching the executable (usually root)"
-msgstr "Het programma wordt niet door de correcte gebruiker gestart (gewoonlijk root)"
+msgstr ""
+"Het programma wordt niet door de correcte gebruiker gestart (gewoonlijk root)"
 
 #. TRANSLATORS: or we are installed in a prefix
 #: ../src/pk-main.c:93
@@ -1894,7 +1935,8 @@ msgstr "Fout bij het proberen te starten:"
 
 #: ../src/pk-polkit-action-lookup.c:150
 msgid "To install debugging packages, extra sources need to be enabled"
-msgstr "Om debug pakketten te installeren, moeten extra bronnen aangezet worden"
+msgstr ""
+"Om debug pakketten te installeren, moeten extra bronnen aangezet worden"
 
 #. TRANSLATORS: is not GPG signed
 #: ../src/pk-polkit-action-lookup.c:171 ../src/pk-polkit-action-lookup.c:190
@@ -1925,46 +1967,44 @@ msgstr ""
 "Installeer deze pakketten niet behalve als je zeker weet dat het veilig is "
 "om te doen."
 
-#. TRANSLATORS: warn the user that all bets are off
-#: ../src/pk-polkit-action-lookup.c:202
-msgid "Malicious software can damage your computer or cause other harm."
-msgstr "Kwaadwillige software kan je computer beschadigen of ander kwaad doen."
-
 #. TRANSLATORS: too many packages to list each one
-#: ../src/pk-polkit-action-lookup.c:277
+#: ../src/pk-polkit-action-lookup.c:273
 msgid "Many packages"
 msgstr "Vele pakketten"
 
 #. TRANSLATORS: if the transaction is forced to install only trusted packages
-#: ../src/pk-polkit-action-lookup.c:343
+#: ../src/pk-polkit-action-lookup.c:339
 msgid "Only trusted"
 msgstr "Alleen vertrouwde"
 
 #. TRANSLATORS: turn on all debugging
-#: ../src/egg-debug.c:364
+#: ../src/egg-debug.c:388
 msgid "Show debugging information for all files"
 msgstr "Toon debuginformatie voor alle bestanden"
 
 #. TRANSLATORS: a list of modules to debug
-#: ../src/egg-debug.c:440
+#: ../src/egg-debug.c:459
 msgid "Debug these specific modules"
 msgstr "Debug deze specifieke modules"
 
 #. TRANSLATORS: a list of functions to debug
-#: ../src/egg-debug.c:443
+#: ../src/egg-debug.c:462
 msgid "Debug these specific functions"
 msgstr "Debug deze specifieke functies"
 
 #. TRANSLATORS: save to a log
-#: ../src/egg-debug.c:446
+#: ../src/egg-debug.c:465
 msgid "Log debugging data to a file"
 msgstr "Log debuggingdata naar een file"
 
-#: ../src/egg-debug.c:450
+#: ../src/egg-debug.c:469
 msgid "Debugging Options"
 msgstr "Debugging Opties"
 
-#: ../src/egg-debug.c:450
+#: ../src/egg-debug.c:469
 msgid "Show debugging options"
 msgstr "Toon debugopties"
 
+#~ msgid "Malicious software can damage your computer or cause other harm."
+#~ msgstr ""
+#~ "Kwaadwillige software kan je computer beschadigen of ander kwaad doen."
commit 95a49ba1dcff1c2bf438d49c8a1c9e946eedfd5a
Author: Richard Hughes <richard at hughsie.com>
Date:   Mon Dec 7 16:05:52 2009 +0000

    Break internal and external API to support OR queries
    
    SearchFile() -> SearchFiles()
    SearchGroup() -> SearchGroups()
    SearchName() -> SearchNames()
    
    Note: applications using PackageKit-glib2 just need recompiling, as this API has been already forward-converted

diff --git a/backends/dummy/pk-backend-dummy.c b/backends/dummy/pk-backend-dummy.c
index 0f3267c..365b96e 100644
--- a/backends/dummy/pk-backend-dummy.c
+++ b/backends/dummy/pk-backend-dummy.c
@@ -30,7 +30,7 @@
 static guint _progress_percentage = 0;
 static gulong _signal_timeout = 0;
 static gchar **_package_ids;
-static const gchar *_values;
+static gchar **_values;
 static guint _package_current = 0;
 static gboolean _repo_enabled_local = FALSE;
 static gboolean _repo_enabled_fedora = TRUE;
@@ -724,7 +724,7 @@ backend_remove_packages (PkBackend *backend, gchar **package_ids, gboolean allow
  * backend_search_details:
  */
 static void
-backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_details (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_status (backend, PK_STATUS_ENUM_QUERY);
 	pk_backend_set_allow_cancel (backend, TRUE);
@@ -735,10 +735,10 @@ backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *val
 }
 
 /**
- * backend_search_file:
+ * backend_search_files:
  */
 static void
-backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_files (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_status (backend, PK_STATUS_ENUM_QUERY);
 	pk_backend_set_allow_cancel (backend, TRUE);
@@ -754,10 +754,10 @@ backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *values
 }
 
 /**
- * backend_search_group:
+ * backend_search_groups:
  */
 static void
-backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_groups (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_status (backend, PK_STATUS_ENUM_QUERY);
 	pk_backend_set_allow_cancel (backend, TRUE);
@@ -804,10 +804,10 @@ backend_search_name_timeout (gpointer data)
 }
 
 /**
- * backend_search_name:
+ * backend_search_names:
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_names (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_percentage (backend, PK_BACKEND_PERCENTAGE_INVALID);
 	pk_backend_set_allow_cancel (backend, TRUE);
@@ -1113,17 +1113,17 @@ backend_what_provides_timeout (gpointer data)
 {
 	PkBackend *backend = (PkBackend *) data;
 	if (_progress_percentage == 100) {
-		if (g_strcmp0 (_values, "gstreamer0.10(decoder-audio/x-wma)(wmaversion=3)") == 0) {
+		if (g_strcmp0 (_values[0], "gstreamer0.10(decoder-audio/x-wma)(wmaversion=3)") == 0) {
 			pk_backend_package (backend, PK_INFO_ENUM_AVAILABLE,
 					    "gstreamer-plugins-bad;0.10.3-5.lvn;i386;available",
 					    "GStreamer streaming media framework \"bad\" plug-ins");
-		} else if (g_strcmp0 (_values, "gstreamer0.10(decoder-video/x-wma)(wmaversion=3)") == 0) {
+		} else if (g_strcmp0 (_values[0], "gstreamer0.10(decoder-video/x-wma)(wmaversion=3)") == 0) {
 			pk_backend_package (backend, PK_INFO_ENUM_AVAILABLE,
 					    "gstreamer-plugins-flumpegdemux;0.10.15-5.lvn;i386;available",
 					    "MPEG demuxer for GStreamer");
 		} else {
 			/* pkcon install vips-doc says it's installed cause evince is INSTALLED */
-			if (g_strcmp0 (_values, "vips-doc") != 0) {
+			if (g_strcmp0 (_values[0], "vips-doc") != 0) {
 				if (!pk_bitfield_contain (_filters, PK_FILTER_ENUM_NOT_INSTALLED)) {
 					pk_backend_package (backend, PK_INFO_ENUM_INSTALLED,
 							    "evince;0.9.3-5.fc8;i386;installed",
@@ -1148,7 +1148,7 @@ backend_what_provides_timeout (gpointer data)
  * backend_what_provides:
  */
 static void
-backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, const gchar *values)
+backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, gchar **values)
 {
 	_progress_percentage = 0;
 	_values = values;
@@ -1267,9 +1267,9 @@ PK_BACKEND_OPTIONS (
 	backend_resolve,			/* resolve */
 	backend_rollback,			/* rollback */
 	backend_search_details,			/* search_details */
-	backend_search_file,			/* search_file */
-	backend_search_group,			/* search_group */
-	backend_search_name,			/* search_name */
+	backend_search_files,			/* search_files */
+	backend_search_groups,			/* search_groups */
+	backend_search_names,			/* search_names */
 	backend_update_packages,		/* update_packages */
 	backend_update_system,			/* update_system */
 	backend_what_provides,			/* what_provides */
diff --git a/backends/test/pk-backend-test-fail.c b/backends/test/pk-backend-test-fail.c
index 651f697..ade398f 100644
--- a/backends/test/pk-backend-test-fail.c
+++ b/backends/test/pk-backend-test-fail.c
@@ -191,16 +191,16 @@ backend_rollback (PkBackend *backend, const gchar *transaction_id)
  * backend_search_details:
  */
 static void
-backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_details (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_finished (backend);
 }
 
 /**
- * backend_search_file:
+ * backend_search_files:
  */
 static void
-backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_files (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_error_code (backend, PK_ERROR_ENUM_INTERNAL_ERROR,
 			       "Error number 1");
@@ -210,19 +210,19 @@ backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *search
 }
 
 /**
- * backend_search_group:
+ * backend_search_groups:
  */
 static void
-backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_groups (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_finished (backend);
 }
 
 /**
- * backend_search_name:
+ * backend_search_names:
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_names (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_error_code (backend, PK_ERROR_ENUM_INTERNAL_ERROR,
 			       "Error number 1");
@@ -278,9 +278,9 @@ PK_BACKEND_OPTIONS (
 	backend_resolve,			/* resolve */
 	backend_rollback,			/* rollback */
 	backend_search_details,			/* search_details */
-	backend_search_file,			/* search_file */
-	backend_search_group,			/* search_group */
-	backend_search_name,			/* search_name */
+	backend_search_files,			/* search_files */
+	backend_search_groups,			/* search_groups */
+	backend_search_names,			/* search_names */
 	backend_update_packages,		/* update_packages */
 	backend_update_system,			/* update_system */
 	NULL,					/* what_provides */
diff --git a/backends/test/pk-backend-test-nop.c b/backends/test/pk-backend-test-nop.c
index 4058b79..2a49aaa 100644
--- a/backends/test/pk-backend-test-nop.c
+++ b/backends/test/pk-backend-test-nop.c
@@ -54,9 +54,9 @@ PK_BACKEND_OPTIONS (
 	NULL,					/* resolve */
 	NULL,					/* rollback */
 	NULL,					/* search_details */
-	NULL,					/* search_file */
-	NULL,					/* search_group */
-	NULL,					/* search_name */
+	NULL,					/* search_files */
+	NULL,					/* search_groups */
+	NULL,					/* search_names */
 	NULL,					/* update_package */
 	NULL,					/* update_system */
 	NULL,					/* what_provides */
diff --git a/backends/test/pk-backend-test-spawn.c b/backends/test/pk-backend-test-spawn.c
index 44f84fa..1e39f05 100644
--- a/backends/test/pk-backend-test-spawn.c
+++ b/backends/test/pk-backend-test-spawn.c
@@ -28,17 +28,20 @@
 static PkBackendSpawn *spawn;
 
 /**
- * backend_search_name:
+ * backend_search_names:
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_names (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	gchar *filters_text;
+	gchar *search;
 	pk_backend_set_allow_cancel (backend, TRUE);
 	pk_backend_set_percentage (backend, PK_BACKEND_PERCENTAGE_INVALID);
 	filters_text = pk_filter_bitfield_to_text (filters);
+	search = g_strjoinv ("&", values);
 	pk_backend_spawn_helper (spawn, "search-name.sh", filters_text, search, NULL);
 	g_free (filters_text);
+	g_free (search);
 }
 
 /**
@@ -95,9 +98,9 @@ PK_BACKEND_OPTIONS (
 	NULL,					/* resolve */
 	NULL,					/* rollback */
 	NULL,					/* search_details */
-	NULL,					/* search_file */
-	NULL,					/* search_group */
-	backend_search_name,			/* search_name */
+	NULL,					/* search_files */
+	NULL,					/* search_groups */
+	backend_search_names,			/* search_names */
 	NULL,					/* update_package */
 	NULL,					/* update_system */
 	NULL,					/* what_provides */
diff --git a/backends/test/pk-backend-test-succeed.c b/backends/test/pk-backend-test-succeed.c
index 6d3cc40..b8bfb6a 100644
--- a/backends/test/pk-backend-test-succeed.c
+++ b/backends/test/pk-backend-test-succeed.c
@@ -234,7 +234,7 @@ backend_rollback (PkBackend *backend, const gchar *transaction_id)
  * backend_search_details:
  */
 static void
-backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_details (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_finished (backend);
 }
@@ -243,7 +243,7 @@ backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *sea
  * backend_search_file:
  */
 static void
-backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_file (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_finished (backend);
 }
@@ -252,7 +252,7 @@ backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *search
  * backend_search_group:
  */
 static void
-backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_group (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_finished (backend);
 }
@@ -274,7 +274,7 @@ backend_search_name_timeout (gpointer data)
  * A really long wait........
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_name (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_set_percentage (backend, PK_BACKEND_PERCENTAGE_INVALID);
 	g_timeout_add (200000, backend_search_name_timeout, backend);
@@ -329,7 +329,7 @@ backend_repo_set_data (PkBackend *backend, const gchar *rid, const gchar *parame
  * backend_what_provides:
  */
 static void
-backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, const gchar *search)
+backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, gchar **values)
 {
 	pk_backend_finished (backend);
 }
@@ -410,9 +410,9 @@ PK_BACKEND_OPTIONS (
 	backend_resolve,			/* resolve */
 	backend_rollback,			/* rollback */
 	backend_search_details,			/* search_details */
-	backend_search_file,			/* search_file */
-	backend_search_group,			/* search_group */
-	backend_search_name,			/* search_name */
+	backend_search_file,			/* search_files */
+	backend_search_group,			/* search_groups */
+	backend_search_name,			/* search_names */
 	backend_update_packages,		/* update_packages */
 	backend_update_system,			/* update_system */
 	backend_what_provides,			/* what_provides */
diff --git a/backends/test/pk-backend-test-thread.c b/backends/test/pk-backend-test-thread.c
index dc891eb..2948a83 100644
--- a/backends/test/pk-backend-test-thread.c
+++ b/backends/test/pk-backend-test-thread.c
@@ -67,7 +67,7 @@ backend_search_group_thread (PkBackend *backend)
  * backend_search_group:
  */
 static void
-backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_group (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_thread_create (backend, backend_search_group_thread);
 }
@@ -121,7 +121,7 @@ backend_search_name_thread (PkBackend *backend)
  * backend_search_name:
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search)
+backend_search_name (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	pk_backend_thread_create (backend, backend_search_name_thread);
 }
@@ -167,9 +167,9 @@ PK_BACKEND_OPTIONS (
 	NULL,					/* resolve */
 	NULL,					/* rollback */
 	NULL,					/* search_details */
-	NULL,					/* search_file */
-	backend_search_group,			/* search_group */
-	backend_search_name,			/* search_name */
+	NULL,					/* search_files */
+	backend_search_group,			/* search_groups */
+	backend_search_name,			/* search_names */
 	NULL,					/* update_package */
 	NULL,					/* update_system */
 	NULL,					/* what_provides */
diff --git a/backends/yum/pk-backend-yum.c b/backends/yum/pk-backend-yum.c
index 365159c..b83c0e7 100644
--- a/backends/yum/pk-backend-yum.c
+++ b/backends/yum/pk-backend-yum.c
@@ -407,48 +407,60 @@ backend_remove_packages (PkBackend *backend, gchar **package_ids, gboolean allow
  * pk_backend_search_details:
  */
 static void
-backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_details (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	gchar *filters_text;
+	gchar *search;
 	filters_text = pk_filter_bitfield_to_text (filters);
-	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-details", filters_text, values, NULL);
+	search = g_strjoinv ("&", values);
+	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-details", filters_text, search, NULL);
 	g_free (filters_text);
+	g_free (search);
 }
 
 /**
- * pk_backend_search_file:
+ * pk_backend_search_files:
  */
 static void
-backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_files (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	gchar *filters_text;
+	gchar *search;
 	filters_text = pk_filter_bitfield_to_text (filters);
-	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-file", filters_text, values, NULL);
+	search = g_strjoinv ("&", values);
+	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-file", filters_text, search, NULL);
 	g_free (filters_text);
+	g_free (search);
 }
 
 /**
- * pk_backend_search_group:
+ * pk_backend_search_groups:
  */
 static void
-backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_groups (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	gchar *filters_text;
+	gchar *search;
 	filters_text = pk_filter_bitfield_to_text (filters);
-	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-group", filters_text, values, NULL);
+	search = g_strjoinv ("&", values);
+	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-group", filters_text, search, NULL);
 	g_free (filters_text);
+	g_free (search);
 }
 
 /**
- * pk_backend_search_name:
+ * pk_backend_search_names:
  */
 static void
-backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *values)
+backend_search_names (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	gchar *filters_text;
+	gchar *search;
 	filters_text = pk_filter_bitfield_to_text (filters);
-	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-name", filters_text, values, NULL);
+	search = g_strjoinv ("&", values);
+	pk_backend_spawn_helper (spawn, "yumBackend.py", "search-name", filters_text, search, NULL);
 	g_free (filters_text);
+	g_free (search);
 }
 
 /**
@@ -527,14 +539,17 @@ backend_repo_set_data (PkBackend *backend, const gchar *rid, const gchar *parame
  * backend_what_provides:
  */
 static void
-backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, const gchar *values)
+backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, gchar **values)
 {
 	gchar *filters_text;
+	gchar *search;
 	const gchar *provides_text;
 	provides_text = pk_provides_enum_to_text (provides);
 	filters_text = pk_filter_bitfield_to_text (filters);
-	pk_backend_spawn_helper (spawn, "yumBackend.py", "what-provides", filters_text, provides_text, values, NULL);
+	search = g_strjoinv ("&", values);
+	pk_backend_spawn_helper (spawn, "yumBackend.py", "what-provides", filters_text, provides_text, search, NULL);
 	g_free (filters_text);
+	g_free (search);
 }
 
 /**
@@ -591,9 +606,9 @@ PK_BACKEND_OPTIONS (
 	backend_resolve,			/* resolve */
 	NULL,					/* rollback */
 	backend_search_details,			/* search_details */
-	backend_search_file,			/* search_file */
-	backend_search_group,			/* search_group */
-	backend_search_name,			/* search_name */
+	backend_search_files,			/* search_files */
+	backend_search_groups,			/* search_groups */
+	backend_search_names,			/* search_names */
 	backend_update_packages,		/* update_packages */
 	backend_update_system,			/* update_system */
 	backend_what_provides,			/* what_provides */
diff --git a/lib/packagekit-glib2/pk-client.c b/lib/packagekit-glib2/pk-client.c
index d6f7e7d..d728363 100644
--- a/lib/packagekit-glib2/pk-client.c
+++ b/lib/packagekit-glib2/pk-client.c
@@ -96,7 +96,7 @@ typedef struct {
 	gchar				**package_ids;
 	gchar				*parameter;
 	gchar				*repo_id;
-	gchar				*search;
+	gchar				**search;
 	gchar				*tid;
 	gchar				*transaction_id;
 	gchar				*value;
@@ -631,7 +631,7 @@ pk_client_state_finish (PkClientState *state, const GError *error)
 	g_free (state->package_id);
 	g_free (state->parameter);
 	g_free (state->repo_id);
-	g_free (state->search);
+	g_strfreev (state->search);
 	g_free (state->value);
 	g_free (state->tid);
 	g_free (state->transaction_id);
@@ -1516,31 +1516,31 @@ pk_client_set_hints_cb (DBusGProxy *proxy, DBusGProxyCall *call, PkClientState *
 		g_object_set (state->results, "inputs", g_strv_length (state->package_ids), NULL);
 	} else if (state->role == PK_ROLE_ENUM_SEARCH_NAME) {
 		filters_text = pk_filter_bitfield_to_text (state->filters);
-		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchName",
+		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchNames",
 						       (DBusGProxyCallNotify) pk_client_method_cb, state, NULL,
 						       G_TYPE_STRING, filters_text,
-						       G_TYPE_STRING, state->search,
+						       G_TYPE_STRV, state->search,
 						       G_TYPE_INVALID);
 	} else if (state->role == PK_ROLE_ENUM_SEARCH_DETAILS) {
 		filters_text = pk_filter_bitfield_to_text (state->filters);
 		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchDetails",
 						       (DBusGProxyCallNotify) pk_client_method_cb, state, NULL,
 						       G_TYPE_STRING, filters_text,
-						       G_TYPE_STRING, state->search,
+						       G_TYPE_STRV, state->search,
 						       G_TYPE_INVALID);
 	} else if (state->role == PK_ROLE_ENUM_SEARCH_GROUP) {
 		filters_text = pk_filter_bitfield_to_text (state->filters);
-		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchGroup",
+		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchGroups",
 						       (DBusGProxyCallNotify) pk_client_method_cb, state, NULL,
 						       G_TYPE_STRING, filters_text,
-						       G_TYPE_STRING, state->search,
+						       G_TYPE_STRV, state->search,
 						       G_TYPE_INVALID);
 	} else if (state->role == PK_ROLE_ENUM_SEARCH_FILE) {
 		filters_text = pk_filter_bitfield_to_text (state->filters);
-		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchFile",
+		state->call = dbus_g_proxy_begin_call (state->proxy, "SearchFiles",
 						       (DBusGProxyCallNotify) pk_client_method_cb, state, NULL,
 						       G_TYPE_STRING, filters_text,
-						       G_TYPE_STRING, state->search,
+						       G_TYPE_STRV, state->search,
 						       G_TYPE_INVALID);
 	} else if (state->role == PK_ROLE_ENUM_GET_DETAILS) {
 		state->call = dbus_g_proxy_begin_call (state->proxy, "GetDetails",
@@ -1607,7 +1607,7 @@ pk_client_set_hints_cb (DBusGProxy *proxy, DBusGProxyCall *call, PkClientState *
 						       (DBusGProxyCallNotify) pk_client_method_cb, state, NULL,
 						       G_TYPE_STRING, filters_text,
 						       G_TYPE_STRING, enum_text,
-						       G_TYPE_STRING, state->search,
+						       G_TYPE_STRV, state->search,
 						       G_TYPE_INVALID);
 	} else if (state->role == PK_ROLE_ENUM_GET_DISTRO_UPGRADES) {
 		state->call = dbus_g_proxy_begin_call (state->proxy, "GetDistroUpgrades",
@@ -1930,7 +1930,7 @@ pk_client_search_names_async (PkClient *client, PkBitfield filters, gchar **valu
 		state->cancellable_id = g_cancellable_connect (cancellable, G_CALLBACK (pk_client_cancellable_cancel_cb), state, NULL);
 	}
 	state->filters = filters;
-	state->search = g_strjoinv ("&", values);
+	state->search = g_strdupv (values);
 	state->progress_callback = progress_callback;
 	state->progress_user_data = progress_user_data;
 	state->progress = pk_progress_new ();
@@ -1979,7 +1979,7 @@ pk_client_search_details_async (PkClient *client, PkBitfield filters, gchar **va
 		state->cancellable_id = g_cancellable_connect (cancellable, G_CALLBACK (pk_client_cancellable_cancel_cb), state, NULL);
 	}
 	state->filters = filters;
-	state->search = g_strjoinv ("&", values);
+	state->search = g_strdupv (values);
 	state->progress_callback = progress_callback;
 	state->progress_user_data = progress_user_data;
 	state->progress = pk_progress_new ();
@@ -2026,7 +2026,7 @@ pk_client_search_groups_async (PkClient *client, PkBitfield filters, gchar **val
 		state->cancellable_id = g_cancellable_connect (cancellable, G_CALLBACK (pk_client_cancellable_cancel_cb), state, NULL);
 	}
 	state->filters = filters;
-	state->search = g_strjoinv ("&", values);
+	state->search = g_strdupv (values);
 	state->progress_callback = progress_callback;
 	state->progress_user_data = progress_user_data;
 	state->progress = pk_progress_new ();
@@ -2073,7 +2073,7 @@ pk_client_search_files_async (PkClient *client, PkBitfield filters, gchar **valu
 		state->cancellable_id = g_cancellable_connect (cancellable, G_CALLBACK (pk_client_cancellable_cancel_cb), state, NULL);
 	}
 	state->filters = filters;
-	state->search = g_strjoinv ("&", values);
+	state->search = g_strdupv (values);
 	state->progress_callback = progress_callback;
 	state->progress_user_data = progress_user_data;
 	state->progress = pk_progress_new ();
@@ -2551,7 +2551,7 @@ pk_client_what_provides_async (PkClient *client, PkBitfield filters, PkProvidesE
 	}
 	state->filters = filters;
 	state->provides = provides;
-	state->search = g_strjoinv ("&", values);
+	state->search = g_strdupv (values);
 	state->progress_callback = progress_callback;
 	state->progress_user_data = progress_user_data;
 	state->progress = pk_progress_new ();
diff --git a/src/org.freedesktop.PackageKit.Transaction.xml b/src/org.freedesktop.PackageKit.Transaction.xml
index 71b320b..239d834 100644
--- a/src/org.freedesktop.PackageKit.Transaction.xml
+++ b/src/org.freedesktop.PackageKit.Transaction.xml
@@ -992,7 +992,7 @@
           </doc:summary>
         </doc:doc>
       </arg>
-      <arg type="as" name="package" direction="in">
+      <arg type="as" name="packages" direction="in">
         <doc:doc>
           <doc:summary>
             <doc:para>
@@ -1075,7 +1075,7 @@
           </doc:summary>
         </doc:doc>
       </arg>
-      <arg type="s" name="values" direction="in">
+      <arg type="as" name="values" direction="in">
         <doc:doc>
           <doc:summary>
             <doc:para>
@@ -1089,25 +1089,13 @@
             <doc:para>
               The search should not be treated as case sensitive.
             </doc:para>
-            <doc:para>
-              NOTE: On some backends an OR search can be specified by delimiting
-              each value with <doc:tt>&amp;</doc:tt>, so this query would become
-              <doc:tt>games-text&amp;games-gui</doc:tt>.
-              It is recommended that front-end clients do not depend on this
-              functionality at this time.
-              In future versions of this specification the <doc:tt>values</doc:tt>
-              argument will become a string array (and no delimiters), and all backends
-              will have to accept multiple requests.
-              In this instance the failure to find one of the values would not be
-              fatal, but the failure to find all of the values would be fatal.
-            </doc:para>
           </doc:summary>
         </doc:doc>
       </arg>
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="SearchFile">
+    <method name="SearchFiles">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
         <doc:description>
@@ -1139,37 +1127,24 @@
           </doc:summary>
         </doc:doc>
       </arg>
-      <arg type="s" name="values" direction="in">
+      <arg type="as" name="values" direction="in">
         <doc:doc>
           <doc:summary>
             <doc:para>
               A filename or fully qualified path and filename on the system.
               If the search term begins with a <doc:tt>/</doc:tt> it will be assumed the entire path has been given and only packages that contain this exact path and filename will be returned.
               If the search term does not start with <doc:tt>/</doc:tt> then it should be treated as a single filename, which can be in any directory.
-              Only one filename can be specified, which should not be escaped or surrounded in quotes.
             </doc:para>
             <doc:para>
               The search is case sensitive, and should not be escaped or surrounded in quotes.
             </doc:para>
-            <doc:para>
-              NOTE: On some backends an OR search can be specified by delimiting
-              each value with <doc:tt>&amp;</doc:tt>, so this query would become
-              <doc:tt>games-text&amp;games-gui</doc:tt>.
-              It is recommended that front-end clients do not depend on this
-              functionality at this time.
-              In future versions of this specification the <doc:tt>values</doc:tt>
-              argument will become a string array (and no delimiters), and all backends
-              will have to accept multiple requests.
-              In this instance the failure to find one of the values would not be
-              fatal, but the failure to find all of the values would be fatal.
-            </doc:para>
           </doc:summary>
         </doc:doc>
       </arg>
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="SearchGroup">
+    <method name="SearchGroups">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
         <doc:description>
@@ -1212,32 +1187,20 @@
           </doc:summary>
         </doc:doc>
       </arg>
-      <arg type="s" name="values" direction="in">
+      <arg type="as" name="values" direction="in">
         <doc:doc>
           <doc:summary>
             <doc:para>
               An enumerated group_type, or <doc:tt>unknown</doc:tt>. The search
               can't contain spaces. It must contains only one group_type.
             </doc:para>
-            <doc:para>
-              NOTE: On some backends an OR search can be specified by delimiting
-              each value with <doc:tt>&amp;</doc:tt>, so this query would become
-              <doc:tt>games-text&amp;games-gui</doc:tt>.
-              It is recommended that front-end clients do not depend on this
-              functionality at this time.
-              In future versions of this specification the <doc:tt>values</doc:tt>
-              argument will become a string array (and no delimiters), and all backends
-              will have to accept multiple requests.
-              In this instance the failure to find one of the values would not be
-              fatal, but the failure to find all of the values would be fatal.
-            </doc:para>
           </doc:summary>
         </doc:doc>
       </arg>
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="SearchName">
+    <method name="SearchNames">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
         <doc:description>
@@ -1286,7 +1249,7 @@
           </doc:summary>
         </doc:doc>
       </arg>
-      <arg type="s" name="values" direction="in">
+      <arg type="as" name="values" direction="in">
         <doc:doc>
           <doc:summary>
             <doc:para>
@@ -1300,18 +1263,6 @@
             <doc:para>
               The search should not be treated as case sensitive.
             </doc:para>
-            <doc:para>
-              NOTE: On some backends an OR search can be specified by delimiting
-              each value with <doc:tt>&amp;</doc:tt>, so this query would become
-              <doc:tt>games-text&amp;games-gui</doc:tt>.
-              It is recommended that front-end clients do not depend on this
-              functionality at this time.
-              In future versions of this specification the <doc:tt>values</doc:tt>
-              argument will become a string array (and no delimiters), and all backends
-              will have to accept multiple requests.
-              In this instance the failure to find one of the values would not be
-              fatal, but the failure to find all of the values would be fatal.
-            </doc:para>
           </doc:summary>
         </doc:doc>
       </arg>
@@ -1545,25 +1496,13 @@
           </doc:summary>
         </doc:doc>
       </arg>
-      <arg type="s" name="values" direction="in">
+      <arg type="as" name="values" direction="in">
         <doc:doc>
           <doc:summary>
             <doc:para>
               The data to send to the backend to get the packages.
               Note: This is backend specific.
             </doc:para>
-            <doc:para>
-              NOTE: On some backends an OR search can be specified by delimiting
-              each value with <doc:tt>&amp;</doc:tt>, so this query would become
-              <doc:tt>games-text&amp;games-gui</doc:tt>.
-              It is recommended that front-end clients do not depend on this
-              functionality at this time.
-              In future versions of this specification the <doc:tt>values</doc:tt>
-              argument will become a string array (and no delimiters), and all backends
-              will have to accept multiple requests.
-              In this instance the failure to find one of the values would not be
-              fatal, but the failure to find all of the values would be fatal.
-            </doc:para>
           </doc:summary>
         </doc:doc>
       </arg>
diff --git a/src/pk-backend-internal.h b/src/pk-backend-internal.h
index 4efdef6..038d3ca 100644
--- a/src/pk-backend-internal.h
+++ b/src/pk-backend-internal.h
@@ -116,21 +116,21 @@ void		pk_backend_remove_packages		(PkBackend	*backend,
 							 gboolean	 autoremove);
 void		pk_backend_resolve			(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 gchar		**package_ids);
+							 gchar		**packages);
 void		pk_backend_rollback			(PkBackend	*backend,
 							 const gchar	*transaction_id);
 void		pk_backend_search_details		(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*search);
-void		pk_backend_search_file			(PkBackend	*backend,
+							 gchar		**search);
+void		pk_backend_search_files			(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*search);
-void		pk_backend_search_group			(PkBackend	*backend,
+							 gchar		**search);
+void		pk_backend_search_groups		(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*search);
-void		pk_backend_search_name			(PkBackend	*backend,
+							 gchar		**search);
+void		pk_backend_search_names			(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*search);
+							 gchar		**search);
 void		pk_backend_update_packages		(PkBackend	*backend,
 							 gboolean	 only_trusted,
 							 gchar		**package_ids);
@@ -148,7 +148,7 @@ void		pk_backend_repo_set_data		(PkBackend	*backend,
 void		pk_backend_what_provides		(PkBackend	*backend,
 							 PkBitfield	 filters,
 							 PkProvidesEnum provides,
-							 const gchar	*search);
+							 gchar		**search);
 void		pk_backend_get_packages			(PkBackend	*backend,
 							 PkBitfield	 filters);
 void		pk_backend_simulate_install_files	(PkBackend	*backend,
diff --git a/src/pk-backend.c b/src/pk-backend.c
index 5216b63..5eb43b3 100644
--- a/src/pk-backend.c
+++ b/src/pk-backend.c
@@ -263,11 +263,11 @@ pk_backend_get_roles (PkBackend *backend)
 		pk_bitfield_add (roles, PK_ROLE_ENUM_ROLLBACK);
 	if (desc->search_details != NULL)
 		pk_bitfield_add (roles, PK_ROLE_ENUM_SEARCH_DETAILS);
-	if (desc->search_file != NULL)
+	if (desc->search_files != NULL)
 		pk_bitfield_add (roles, PK_ROLE_ENUM_SEARCH_FILE);
-	if (desc->search_group != NULL)
+	if (desc->search_groups != NULL)
 		pk_bitfield_add (roles, PK_ROLE_ENUM_SEARCH_GROUP);
-	if (desc->search_name != NULL)
+	if (desc->search_names != NULL)
 		pk_bitfield_add (roles, PK_ROLE_ENUM_SEARCH_NAME);
 	if (desc->update_packages != NULL)
 		pk_bitfield_add (roles, PK_ROLE_ENUM_UPDATE_PACKAGES);
@@ -2705,48 +2705,48 @@ pk_backend_rollback (PkBackend *backend, const gchar *transaction_id)
  * pk_backend_search_details:
  */
 void
-pk_backend_search_details (PkBackend *backend, PkBitfield filters, const gchar *values)
+pk_backend_search_details (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	g_return_if_fail (PK_IS_BACKEND (backend));
 	pk_store_set_uint (backend->priv->store, "filters", filters);
-	pk_store_set_string (backend->priv->store, "search", values);
+	pk_store_set_strv (backend->priv->store, "search", values);
 	backend->priv->desc->search_details (backend, filters, values);
 }
 
 /**
- * pk_backend_search_file:
+ * pk_backend_search_files:
  */
 void
-pk_backend_search_file (PkBackend *backend, PkBitfield filters, const gchar *values)
+pk_backend_search_files (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	g_return_if_fail (PK_IS_BACKEND (backend));
 	pk_store_set_uint (backend->priv->store, "filters", filters);
-	pk_store_set_string (backend->priv->store, "search", values);
-	backend->priv->desc->search_file (backend, filters, values);
+	pk_store_set_strv (backend->priv->store, "search", values);
+	backend->priv->desc->search_files (backend, filters, values);
 }
 
 /**
- * pk_backend_search_group:
+ * pk_backend_search_groups:
  */
 void
-pk_backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *values)
+pk_backend_search_groups (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	g_return_if_fail (PK_IS_BACKEND (backend));
 	pk_store_set_uint (backend->priv->store, "filters", filters);
-	pk_store_set_string (backend->priv->store, "search", values);
-	backend->priv->desc->search_group (backend, filters, values);
+	pk_store_set_strv (backend->priv->store, "search", values);
+	backend->priv->desc->search_groups (backend, filters, values);
 }
 
 /**
- * pk_backend_search_name:
+ * pk_backend_search_names:
  */
 void
-pk_backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *values)
+pk_backend_search_names (PkBackend *backend, PkBitfield filters, gchar **values)
 {
 	g_return_if_fail (PK_IS_BACKEND (backend));
 	pk_store_set_uint (backend->priv->store, "filters", filters);
-	pk_store_set_string (backend->priv->store, "search", values);
-	backend->priv->desc->search_name (backend, filters, values);
+	pk_store_set_strv (backend->priv->store, "search", values);
+	backend->priv->desc->search_names (backend, filters, values);
 }
 
 /**
@@ -2812,12 +2812,12 @@ pk_backend_repo_set_data (PkBackend *backend, const gchar *repo_id, const gchar
  * pk_backend_what_provides:
  */
 void
-pk_backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, const gchar *values)
+pk_backend_what_provides (PkBackend *backend, PkBitfield filters, PkProvidesEnum provides, gchar **values)
 {
 	g_return_if_fail (PK_IS_BACKEND (backend));
 	pk_store_set_uint (backend->priv->store, "filters", filters);
 	pk_store_set_uint (backend->priv->store, "provides", provides);
-	pk_store_set_string (backend->priv->store, "search", values);
+	pk_store_set_strv (backend->priv->store, "search", values);
 	backend->priv->desc->what_provides (backend, filters, provides, values);
 }
 
diff --git a/src/pk-backend.h b/src/pk-backend.h
index 2be7be6..c6d14bd 100644
--- a/src/pk-backend.h
+++ b/src/pk-backend.h
@@ -274,16 +274,16 @@ typedef struct {
 							 const gchar	*transaction_id);
 	void		(*search_details)		(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*values);
-	void		(*search_file)			(PkBackend	*backend,
+							 gchar		**values);
+	void		(*search_files)			(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*values);
-	void		(*search_group)			(PkBackend	*backend,
+							 gchar		**values);
+	void		(*search_groups)		(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*values);
-	void		(*search_name)			(PkBackend	*backend,
+							 gchar		**values);
+	void		(*search_names)			(PkBackend	*backend,
 							 PkBitfield	 filters,
-							 const gchar	*values);
+							 gchar		**values);
 	void		(*update_packages)		(PkBackend	*backend,
 							 gboolean	 only_trusted,
 							 gchar		**package_ids);
@@ -292,7 +292,7 @@ typedef struct {
 	void		(*what_provides)		(PkBackend	*backend,
 							 PkBitfield	 filters,
 							 PkProvidesEnum	 provides,
-							 const gchar	*values);
+							 gchar		**values);
 	void		(*simulate_install_files)	(PkBackend	*backend,
 							 gchar		**full_paths);
 	void		(*simulate_install_packages)	(PkBackend	*backend,
diff --git a/src/pk-transaction-extra.c b/src/pk-transaction-extra.c
index ea01255..0bf6b54 100644
--- a/src/pk-transaction-extra.c
+++ b/src/pk-transaction-extra.c
@@ -127,12 +127,15 @@ static PkPackage *
 pk_transaction_extra_get_installed_package_for_file (PkTransactionExtra *extra, const gchar *filename)
 {
 	PkPackage *package = NULL;
+	gchar **filenames;
 
 	/* use PK to find the correct package */
 	if (extra->priv->list->len > 0)
 		g_ptr_array_remove_range (extra->priv->list, 0, extra->priv->list->len);
 	pk_backend_reset (extra->priv->backend);
-	pk_backend_search_file (extra->priv->backend, pk_bitfield_value (PK_FILTER_ENUM_INSTALLED), filename);
+	filenames = g_strsplit (filename, "|||", -1);
+	pk_backend_search_files (extra->priv->backend, pk_bitfield_value (PK_FILTER_ENUM_INSTALLED), filenames);
+	g_strfreev (filenames);
 
 	/* wait for finished */
 	g_main_loop_run (extra->priv->loop);
diff --git a/src/pk-transaction.c b/src/pk-transaction.c
index f3a7b71..7cbc42b 100644
--- a/src/pk-transaction.c
+++ b/src/pk-transaction.c
@@ -138,7 +138,7 @@ struct PkTransactionPrivate
 	gchar			*cached_transaction_id;
 	gchar			**cached_full_paths;
 	PkBitfield		 cached_filters;
-	gchar			*cached_values;
+	gchar			**cached_values;
 	gchar			*cached_repo_id;
 	gchar			*cached_key_id;
 	gchar			*cached_parameter;
@@ -1724,11 +1724,11 @@ pk_transaction_set_running (PkTransaction *transaction)
 	else if (priv->role == PK_ROLE_ENUM_SEARCH_DETAILS)
 		pk_backend_search_details (priv->backend, priv->cached_filters, priv->cached_values);
 	else if (priv->role == PK_ROLE_ENUM_SEARCH_FILE)
-		pk_backend_search_file (priv->backend, priv->cached_filters, priv->cached_values);
+		pk_backend_search_files (priv->backend, priv->cached_filters, priv->cached_values);
 	else if (priv->role == PK_ROLE_ENUM_SEARCH_GROUP)
-		pk_backend_search_group (priv->backend, priv->cached_filters, priv->cached_values);
+		pk_backend_search_groups (priv->backend, priv->cached_filters, priv->cached_values);
 	else if (priv->role == PK_ROLE_ENUM_SEARCH_NAME)
-		pk_backend_search_name (priv->backend,priv->cached_filters,priv->cached_values);
+		pk_backend_search_names (priv->backend,priv->cached_filters,priv->cached_values);
 	else if (priv->role == PK_ROLE_ENUM_INSTALL_PACKAGES)
 		pk_backend_install_packages (priv->backend, priv->cached_only_trusted, priv->cached_package_ids);
 	else if (priv->role == PK_ROLE_ENUM_INSTALL_FILES)
@@ -2000,10 +2000,10 @@ pk_transaction_strvalidate (const gchar *text)
 }
 
 /**
- * pk_transaction_search_check:
+ * pk_transaction_search_check_item:
  **/
 static gboolean
-pk_transaction_search_check (const gchar *values, GError **error)
+pk_transaction_search_check_item (const gchar *values, GError **error)
 {
 	guint size;
 	gboolean ret;
@@ -2046,6 +2046,25 @@ pk_transaction_search_check (const gchar *values, GError **error)
 }
 
 /**
+ * pk_transaction_search_check:
+ **/
+static gboolean
+pk_transaction_search_check (gchar **values, GError **error)
+{
+	guint i;
+	gboolean ret = TRUE;
+
+	/* check each parameter */
+	for (i=0; values[i] != NULL; i++) {
+		ret = pk_transaction_search_check_item (values[i], error);
+		if (!ret)
+			goto out;
+	}
+out:
+	return ret;
+}
+
+/**
  * pk_transaction_filter_check:
  **/
 static gboolean
@@ -4124,7 +4143,7 @@ pk_transaction_rollback (PkTransaction *transaction, const gchar *transaction_id
  **/
 void
 pk_transaction_search_details (PkTransaction *transaction, const gchar *filter,
-			       const gchar *values, DBusGMethodInvocation *context)
+			       gchar **values, DBusGMethodInvocation *context)
 {
 	gboolean ret;
 	GError *error;
@@ -4132,7 +4151,7 @@ pk_transaction_search_details (PkTransaction *transaction, const gchar *filter,
 	g_return_if_fail (PK_IS_TRANSACTION (transaction));
 	g_return_if_fail (transaction->priv->tid != NULL);
 
-	egg_debug ("SearchDetails method called: %s, %s", filter, values);
+	egg_debug ("SearchDetails method called: %s, %s", filter, values[0]);
 
 	/* not implemented yet */
 	if (!pk_backend_is_implemented (transaction->priv->backend, PK_ROLE_ENUM_SEARCH_DETAILS)) {
@@ -4169,7 +4188,7 @@ pk_transaction_search_details (PkTransaction *transaction, const gchar *filter,
 
 	/* save so we can run later */
 	transaction->priv->cached_filters = pk_filter_bitfield_from_text (filter);
-	transaction->priv->cached_values = g_strdup (values);
+	transaction->priv->cached_values = g_strdupv (values);
 	pk_transaction_set_role (transaction, PK_ROLE_ENUM_SEARCH_DETAILS);
 
 	/* try to commit this */
@@ -4187,24 +4206,25 @@ pk_transaction_search_details (PkTransaction *transaction, const gchar *filter,
 }
 
 /**
- * pk_transaction_search_file:
+ * pk_transaction_search_files:
  **/
 void
-pk_transaction_search_file (PkTransaction *transaction, const gchar *filter,
-			    const gchar *values, DBusGMethodInvocation *context)
+pk_transaction_search_files (PkTransaction *transaction, const gchar *filter,
+			     gchar **values, DBusGMethodInvocation *context)
 {
 	gboolean ret;
 	GError *error;
+	guint i;
 
 	g_return_if_fail (PK_IS_TRANSACTION (transaction));
 	g_return_if_fail (transaction->priv->tid != NULL);
 
-	egg_debug ("SearchFile method called: %s, %s", filter, values);
+	egg_debug ("SearchFiles method called: %s, %s", filter, values[0]);
 
 	/* not implemented yet */
 	if (!pk_backend_is_implemented (transaction->priv->backend, PK_ROLE_ENUM_SEARCH_FILE)) {
 		error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_NOT_SUPPORTED,
-				     "SearchFile not yet supported by backend");
+				     "SearchFiles not yet supported by backend");
 		pk_transaction_release_tid (transaction);
 		pk_transaction_dbus_return_error (context, error);
 		return;
@@ -4227,12 +4247,14 @@ pk_transaction_search_file (PkTransaction *transaction, const gchar *filter,
 	}
 
 	/* when not an absolute path, disallow slashes in search */
-	if (values[0] != '/' && strstr (values, "/") != NULL) {
-		error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_SEARCH_PATH_INVALID,
-				     "Invalid search path");
-		pk_transaction_release_tid (transaction);
-		pk_transaction_dbus_return_error (context, error);
-		return;
+	for (i=0; values[i] != NULL; i++) {
+		if (values[i][0] != '/' && strstr (values[i], "/") != NULL) {
+			error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_SEARCH_PATH_INVALID,
+					     "Invalid search path");
+			pk_transaction_release_tid (transaction);
+			pk_transaction_dbus_return_error (context, error);
+			return;
+		}
 	}
 
 	/* check the filter */
@@ -4245,7 +4267,7 @@ pk_transaction_search_file (PkTransaction *transaction, const gchar *filter,
 
 	/* save so we can run later */
 	transaction->priv->cached_filters = pk_filter_bitfield_from_text (filter);
-	transaction->priv->cached_values = g_strdup (values);
+	transaction->priv->cached_values = g_strdupv (values);
 	pk_transaction_set_role (transaction, PK_ROLE_ENUM_SEARCH_FILE);
 
 	/* try to commit this */
@@ -4263,24 +4285,25 @@ pk_transaction_search_file (PkTransaction *transaction, const gchar *filter,
 }
 
 /**
- * pk_transaction_search_group:
+ * pk_transaction_search_groups:
  **/
 void
-pk_transaction_search_group (PkTransaction *transaction, const gchar *filter,
-			     const gchar *values, DBusGMethodInvocation *context)
+pk_transaction_search_groups (PkTransaction *transaction, const gchar *filter,
+			      gchar **values, DBusGMethodInvocation *context)
 {
 	gboolean ret;
 	GError *error;
+	guint i;
 
 	g_return_if_fail (PK_IS_TRANSACTION (transaction));
 	g_return_if_fail (transaction->priv->tid != NULL);
 
-	egg_debug ("SearchGroup method called: %s, %s", filter, values);
+	egg_debug ("SearchGroups method called: %s, %s", filter, values[0]);
 
 	/* not implemented yet */
 	if (!pk_backend_is_implemented (transaction->priv->backend, PK_ROLE_ENUM_SEARCH_GROUP)) {
 		error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_NOT_SUPPORTED,
-				     "SearchGroup not yet supported by backend");
+				     "SearchGroups not yet supported by backend");
 		pk_transaction_release_tid (transaction);
 		pk_transaction_dbus_return_error (context, error);
 		return;
@@ -4303,12 +4326,14 @@ pk_transaction_search_group (PkTransaction *transaction, const gchar *filter,
 	}
 
 	/* do not allow spaces */
-	if (strstr (values, " ") != NULL) {
-		error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_SEARCH_INVALID,
-				     "Invalid search containing spaces");
-		pk_transaction_release_tid (transaction);
-		pk_transaction_dbus_return_error (context, error);
-		return;
+	for (i=0; values[i] != NULL; i++) {
+		if (strstr (values[i], " ") != NULL) {
+			error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_SEARCH_INVALID,
+					     "Invalid search containing spaces");
+			pk_transaction_release_tid (transaction);
+			pk_transaction_dbus_return_error (context, error);
+			return;
+		}
 	}
 
 	/* check the filter */
@@ -4321,7 +4346,7 @@ pk_transaction_search_group (PkTransaction *transaction, const gchar *filter,
 
 	/* save so we can run later */
 	transaction->priv->cached_filters = pk_filter_bitfield_from_text (filter);
-	transaction->priv->cached_values = g_strdup (values);
+	transaction->priv->cached_values = g_strdupv (values);
 	pk_transaction_set_role (transaction, PK_ROLE_ENUM_SEARCH_GROUP);
 
 	/* try to commit this */
@@ -4342,8 +4367,8 @@ pk_transaction_search_group (PkTransaction *transaction, const gchar *filter,
  * pk_transaction_search_name:
  **/
 void
-pk_transaction_search_name (PkTransaction *transaction, const gchar *filter,
-			    const gchar *values, DBusGMethodInvocation *context)
+pk_transaction_search_names (PkTransaction *transaction, const gchar *filter,
+			     gchar **values, DBusGMethodInvocation *context)
 {
 	gboolean ret;
 	GError *error;
@@ -4351,12 +4376,12 @@ pk_transaction_search_name (PkTransaction *transaction, const gchar *filter,
 	g_return_if_fail (PK_IS_TRANSACTION (transaction));
 	g_return_if_fail (transaction->priv->tid != NULL);
 
-	egg_debug ("SearchName method called: %s, %s", filter, values);
+	egg_debug ("SearchNames method called: %s, %s", filter, values[0]);
 
 	/* not implemented yet */
 	if (!pk_backend_is_implemented (transaction->priv->backend, PK_ROLE_ENUM_SEARCH_NAME)) {
 		error = g_error_new (PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_NOT_SUPPORTED,
-				     "SearchName not yet supported by backend");
+				     "SearchNames not yet supported by backend");
 		pk_transaction_release_tid (transaction);
 		pk_transaction_dbus_return_error (context, error);
 		return;
@@ -4388,7 +4413,7 @@ pk_transaction_search_name (PkTransaction *transaction, const gchar *filter,
 
 	/* save so we can run later */
 	transaction->priv->cached_filters = pk_filter_bitfield_from_text (filter);
-	transaction->priv->cached_values = g_strdup (values);
+	transaction->priv->cached_values = g_strdupv (values);
 	pk_transaction_set_role (transaction, PK_ROLE_ENUM_SEARCH_NAME);
 
 	/* try to commit this */
@@ -5021,7 +5046,7 @@ pk_transaction_update_system (PkTransaction *transaction, gboolean only_trusted,
  **/
 void
 pk_transaction_what_provides (PkTransaction *transaction, const gchar *filter, const gchar *type,
-			      const gchar *values, DBusGMethodInvocation *context)
+			      gchar **values, DBusGMethodInvocation *context)
 {
 	gboolean ret;
 	PkProvidesEnum provides;
@@ -5030,7 +5055,7 @@ pk_transaction_what_provides (PkTransaction *transaction, const gchar *filter, c
 	g_return_if_fail (PK_IS_TRANSACTION (transaction));
 	g_return_if_fail (transaction->priv->tid != NULL);
 
-	egg_debug ("WhatProvides method called: %s, %s", type, values);
+	egg_debug ("WhatProvides method called: %s, %s", type, values[0]);
 
 	/* not implemented yet */
 	if (!pk_backend_is_implemented (transaction->priv->backend, PK_ROLE_ENUM_WHAT_PROVIDES)) {
@@ -5077,7 +5102,7 @@ pk_transaction_what_provides (PkTransaction *transaction, const gchar *filter, c
 
 	/* save so we can run later */
 	transaction->priv->cached_filters = pk_filter_bitfield_from_text (filter);
-	transaction->priv->cached_values = g_strdup (values);
+	transaction->priv->cached_values = g_strdupv (values);
 	transaction->priv->cached_provides = provides;
 	pk_transaction_set_role (transaction, PK_ROLE_ENUM_WHAT_PROVIDES);
 
@@ -5483,7 +5508,7 @@ pk_transaction_finalize (GObject *object)
 	g_strfreev (transaction->priv->cached_package_ids);
 	g_free (transaction->priv->cached_transaction_id);
 	g_free (transaction->priv->cached_directory);
-	g_free (transaction->priv->cached_values);
+	g_strfreev (transaction->priv->cached_values);
 	g_free (transaction->priv->cached_repo_id);
 	g_free (transaction->priv->cached_parameter);
 	g_free (transaction->priv->cached_value);
diff --git a/src/pk-transaction.h b/src/pk-transaction.h
index f755f29..2b6f291 100644
--- a/src/pk-transaction.h
+++ b/src/pk-transaction.h
@@ -180,19 +180,19 @@ void		 pk_transaction_rollback			(PkTransaction	*transaction,
 								 DBusGMethodInvocation *context);
 void		 pk_transaction_search_details			(PkTransaction	*transaction,
 								 const gchar	*filter,
-								 const gchar	*values,
+								 gchar		**values,
 								 DBusGMethodInvocation *context);
-void		 pk_transaction_search_file			(PkTransaction	*transaction,
+void		 pk_transaction_search_files			(PkTransaction	*transaction,
 								 const gchar	*filter,
-								 const gchar	*values,
+								 gchar		**values,
 								 DBusGMethodInvocation *context);
-void		 pk_transaction_search_group			(PkTransaction	*transaction,
+void		 pk_transaction_search_groups			(PkTransaction	*transaction,
 								 const gchar	*filter,
-								 const gchar	*values,
+								 gchar		**values,
 								 DBusGMethodInvocation *context);
-void		 pk_transaction_search_name			(PkTransaction	*transaction,
+void		 pk_transaction_search_names			(PkTransaction	*transaction,
 								 const gchar	*filter,
-								 const gchar	*values,
+								 gchar		**values,
 								 DBusGMethodInvocation *context);
 void		 pk_transaction_set_locale			(PkTransaction	*transaction,
 								 const gchar	*code,
@@ -222,7 +222,7 @@ void		 pk_transaction_update_system			(PkTransaction	*transaction,
 void		 pk_transaction_what_provides			(PkTransaction	*transaction,
 								 const gchar	*filter,
 								 const gchar	*type,
-								 const gchar	*values,
+								 gchar		**values,
 								 DBusGMethodInvocation *context);
 
 G_END_DECLS
commit d9485ff282d2edb1c557c8a9dcdc5be6549899b4
Author: Richard Hughes <richard at hughsie.com>
Date:   Mon Dec 7 15:50:40 2009 +0000

    Update the version number post-branch

diff --git a/configure.ac b/configure.ac
index 52db22b..107cde8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,8 +2,8 @@
 AC_PREREQ(2.52)
 
 m4_define([pk_major_version], [0])
-m4_define([pk_minor_version], [5])
-m4_define([pk_micro_version], [6])
+m4_define([pk_minor_version], [6])
+m4_define([pk_micro_version], [0])
 m4_define([pk_version],
           [pk_major_version.pk_minor_version.pk_micro_version])
 
commit d4c319ed2a6d635effffc956d6fd1cff16c8ff8e
Author: Richard Hughes <richard at hughsie.com>
Date:   Mon Dec 7 15:50:15 2009 +0000

    Remove the deprecated DBus methods from the daemon

diff --git a/src/org.freedesktop.PackageKit.Transaction.xml b/src/org.freedesktop.PackageKit.Transaction.xml
index 4e90bb0..71b320b 100644
--- a/src/org.freedesktop.PackageKit.Transaction.xml
+++ b/src/org.freedesktop.PackageKit.Transaction.xml
@@ -281,30 +281,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="GetAllowCancel">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Get if cancel is allowed for the transaction
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="b" name="allow_cancel" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              If cancel is allowed
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="GetCategories">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
@@ -452,32 +428,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="GetPackageLast">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This method emits the package that was last emmitted from the daemon.
-            This allows any GUI that is monitoring transactions to accurately reflect the current
-            state of the transaction at startup.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="package" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The last package_id.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="GetPackages">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
@@ -509,57 +459,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="GetProgress">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This method gets the progress completion of the daemon.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="u" name="percentage" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The percentage complete of the whole transaction.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="u" name="subpercentage" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The percentage complete of the individual task, for example, downloading.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="u" name="elapsed" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The amount of time elapsed during the transaction.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="u" name="remaining" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The estimated remaining time of the transaction, or 0 if not known.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="GetRepoList">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
@@ -640,64 +539,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="GetRole">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This method returns the current role of the transaction.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="role" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The PkRoleEnum in text form.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="s" name="text" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The original search terms or package names that are used to start the transaction.
-              Multiple entries are split using <doc:tt>;</doc:tt>.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
-    <method name="GetStatus">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This method returns the status of the transaction.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="status" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The PkStatusEnum in string form.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="GetUpdateDetail">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
@@ -950,33 +791,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="IsCallerActive">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This method allows us to find if the original caller of the method is still connected
-            to the session bus.
-            This is usually an indication that the client can handle it's own error handling and
-            EULA callbacks rather than another program taking over.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="b" name="is_active" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              If the client is still connected.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="RefreshCache">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
@@ -2610,144 +2424,6 @@
     </signal>
 
     <!--*****************************************************************************************-->
-    <signal name="ProgressChanged">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This signal describes the completion of the transaction.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the Changed signal and the properties interface instead.
-          </doc:para>
-          <doc:para>
-            This is optional.
-            Backends should send the percentage fields to 101 if the amount complete
-            cannot be calculated.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="u" name="percentage" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The percentage complete of the whole transaction.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="u" name="subpercentage" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The percentage complete of the individual task, for example, downloading.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="u" name="elapsed" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The amount of time in seconds this transaction has been in the
-              running state
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="u" name="remaining" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The amount of time in seconds this transaction will take to
-              complete. Zero is sent for unknown.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </signal>
-
-    <!--*****************************************************************************************-->
-    <signal name="StatusChanged">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This signal is sent when the status of the transaction has changed.
-          </doc:para>
-          <doc:para>
-            This is optional, but highly recommended.
-            It gives the GUI tools a chance to show a different icon to show what stage the
-            transaction is in, for instance, a downloading icon can be shown whilst in the
-            <doc:tt>download</doc:tt> state.
-           <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the Changed signal and the properties interface instead.
-          </doc:para>
-         </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="status" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              One of <doc:tt>download</doc:tt>, <doc:tt>install</doc:tt>,
-              <doc:tt>update</doc:tt> or <doc:tt>remove</doc:tt>.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </signal>
-
-    <!--*****************************************************************************************-->
-    <signal name="AllowCancel">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This signal is sent when the backend decides that the transaction can no longer be
-            cancelled, or is now able to be cancelled.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the Changed signal and the properties interface instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="b" name="allow_cancel" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              If the backend is in a cancelable state.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </signal>
-
-    <!--*****************************************************************************************-->
-    <signal name="CallerActiveChanged">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This signal is emitted when the session program that started the transaction exits.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the Changed signal and the properties interface instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="b" name="is_active" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              If the caller is active, usually FALSE.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </signal>
-
-    <!--*****************************************************************************************-->
     <signal name="Destroy">
       <doc:doc>
         <doc:description>
diff --git a/src/org.freedesktop.PackageKit.xml b/src/org.freedesktop.PackageKit.xml
index 49c702d..3df51b1 100644
--- a/src/org.freedesktop.PackageKit.xml
+++ b/src/org.freedesktop.PackageKit.xml
@@ -195,135 +195,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="GetActions">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Gets a list of all the actions that are supported by the backend.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="actions" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              A list of actions, e.g. <doc:tt>search-name;get-updates;update-system</doc:tt>
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
-    <method name="GetBackendDetail">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Gets any details about the backend being used by PackageKit
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="name" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The name of the backend, e.g. yum
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-      <arg type="s" name="author" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The author of the backend, e.g. <doc:tt>Richard Hughes &lt;richard at hughsie.com&gt;</doc:tt>
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
-    <method name="GetFilters">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Gets the list of filters that the backend supports
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="filters" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The list of filters as a string, e.g. <doc:tt>installed;devel</doc:tt>
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
-    <method name="GetGroups">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Gets the groups that are supported
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="groups" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The group list, e.g. <doc:tt>accesories;games;system</doc:tt>
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
-    <method name="GetMimeTypes">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Gets the MIME types of packages that are supported
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="types" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The MIME list, e.g. <doc:tt>application/x-rpm;application/x-deb</doc:tt>
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="GetTid">
       <annotation name="org.freedesktop.DBus.GLib.Async" value=""/>
       <doc:doc>
@@ -430,37 +301,6 @@
     </method>
 
     <!--*****************************************************************************************-->
-    <method name="GetNetworkState">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            Gets the network state from the daemon. This is provided as some clients may not want
-            to use NetworkManager if the system daemon is configured to use something else.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="state" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The network state. If the system is managed using NetworkManager then the following
-              states are supported:
-              <doc:tt>unknown</doc:tt>, <doc:tt>offline</doc:tt>, <doc:tt>online</doc:tt>,
-              <doc:tt>wifi</doc:tt>, <doc:tt>mobile</doc:tt> or <doc:tt>wired</doc:tt>.
-              If the system is configured for legacy UNIX network fallback, or NetworkManager
-              is not running then the folowing states are supported:
-              <doc:tt>unknown</doc:tt>, <doc:tt>offline</doc:tt> or <doc:tt>online</doc:tt>.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </method>
-
-    <!--*****************************************************************************************-->
     <method name="GetDaemonState">
       <doc:doc>
         <doc:description>
@@ -535,54 +375,6 @@
     </signal>
 
     <!--*****************************************************************************************-->
-    <signal name="Locked">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This signal is emitted when the backend is locked and native tools would fail.
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="b" name="is_locked" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              If we have locked the package backend.
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </signal>
-
-    <!--*****************************************************************************************-->
-    <signal name="NetworkStateChanged">
-      <doc:doc>
-        <doc:description>
-          <doc:para>
-            This signal is emitted when the network state has changed
-          </doc:para>
-          <doc:para>
-            THIS FUNCTION IS DEPRECATED. It will be removed in a future release.
-            Use the properties interface for the transaction instead.
-          </doc:para>
-        </doc:description>
-      </doc:doc>
-      <arg type="s" name="state" direction="out">
-        <doc:doc>
-          <doc:summary>
-            <doc:para>
-              The new network state
-            </doc:para>
-          </doc:summary>
-        </doc:doc>
-      </arg>
-    </signal>
-
-    <!--*****************************************************************************************-->
     <signal name="RestartSchedule">
       <doc:doc>
         <doc:description>
diff --git a/src/pk-engine.c b/src/pk-engine.c
index 9b289b6..dcc47ec 100644
--- a/src/pk-engine.c
+++ b/src/pk-engine.c
@@ -106,10 +106,8 @@ struct PkEnginePrivate
 };
 
 enum {
-	SIGNAL_LOCKED,
 	SIGNAL_TRANSACTION_LIST_CHANGED,
 	SIGNAL_REPO_LIST_CHANGED,
-	SIGNAL_NETWORK_STATE_CHANGED,
 	SIGNAL_RESTART_SCHEDULE,
 	SIGNAL_UPDATES_CHANGED,
 	SIGNAL_CHANGED,
@@ -216,8 +214,6 @@ static void
 pk_engine_inhibit_locked_cb (PkInhibit *inhibit, gboolean is_locked, PkEngine *engine)
 {
 	g_return_if_fail (PK_IS_ENGINE (engine));
-	egg_debug ("emitting locked %i", is_locked);
-	g_signal_emit (engine, signals[SIGNAL_LOCKED], 0, is_locked);
 
 	/* already set */
 	if (engine->priv->locked == is_locked)
@@ -303,24 +299,6 @@ out:
 }
 
 /**
- * pk_engine_get_network_state:
- **/
-gboolean
-pk_engine_get_network_state (PkEngine *engine, gchar **state, GError **error)
-{
-	PkNetworkEnum network;
-	g_return_val_if_fail (PK_IS_ENGINE (engine), FALSE);
-	/* get the network state */
-	network = pk_network_get_network_state (engine->priv->network);
-	*state = g_strdup (pk_network_enum_to_text (network));
-
-	/* reset the timer */
-	pk_engine_reset_timer (engine);
-
-	return TRUE;
-}
-
-/**
  * pk_get_os_release:
  *
  * Return value: The current OS release, e.g. "7.2-RELEASE"
@@ -626,92 +604,6 @@ out:
 }
 
 /**
- * pk_engine_get_actions:
- **/
-gboolean
-pk_engine_get_actions (PkEngine *engine, gchar **roles, GError **error)
-{
-	g_return_val_if_fail (PK_IS_ENGINE (engine), FALSE);
-	*roles = pk_role_bitfield_to_text (engine->priv->roles);
-
-	/* reset the timer */
-	pk_engine_reset_timer (engine);
-
-	return TRUE;
-}
-
-/**
- * pk_engine_get_groups:
- **/
-gboolean
-pk_engine_get_groups (PkEngine *engine, gchar **groups, GError **error)
-{
-	g_return_val_if_fail (PK_IS_ENGINE (engine), FALSE);
-	*groups = pk_group_bitfield_to_text (engine->priv->groups);
-
-	/* reset the timer */
-	pk_engine_reset_timer (engine);
-
-	return TRUE;
-}
-
-/**
- * pk_engine_get_mime_types:
- **/
-gboolean
-pk_engine_get_mime_types (PkEngine *engine, gchar **types, GError **error)
-{
-	g_return_val_if_fail (PK_IS_ENGINE (engine), FALSE);
-
-	/* not compulsory for backends */
-	if (engine->priv->mime_types == NULL) {
-		g_set_error (error, PK_ENGINE_ERROR, PK_ENGINE_ERROR_NOT_SUPPORTED,
-			     "Backend does not provide this information");
-		return FALSE;
-	}
-
-	*types = g_strdup (engine->priv->mime_types);
-
-	/* reset the timer */
-	pk_engine_reset_timer (engine);
-
-	return TRUE;
-}
-
-/**
- * pk_engine_get_filters:
- **/
-gboolean
-pk_engine_get_filters (PkEngine *engine, gchar **filters, GError **error)
-{
-	g_return_val_if_fail (PK_IS_ENGINE (engine), FALSE);
-	*filters = pk_filter_bitfield_to_text (engine->priv->filters);
-
-	/* reset the timer */
-	pk_engine_reset_timer (engine);
-
-	return TRUE;
-}
-
-/**
- * pk_engine_get_backend_detail:
- **/
-gboolean
-pk_engine_get_backend_detail (PkEngine *engine, gchar **name, gchar **author, GError **error)
-{
-	g_return_val_if_fail (PK_IS_ENGINE (engine), FALSE);
-
-	egg_debug ("GetBackendDetail method called");
-	*name = pk_backend_get_description (engine->priv->backend);
-	*author = pk_backend_get_author (engine->priv->backend);
-
-	/* reset the timer */
-	pk_engine_reset_timer (engine);
-
-	return TRUE;
-}
-
-/**
  * pk_engine_get_time_since_action:
  *
  * @seconds: Number of seconds since the role was called, or zero is unknown
@@ -1296,11 +1188,6 @@ pk_engine_class_init (PkEngineClass *klass)
 	g_object_class_install_property (object_class, PROP_DISTRO_ID, pspec);
 
 	/* signals */
-	signals[SIGNAL_LOCKED] =
-		g_signal_new ("locked",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
 	signals[SIGNAL_TRANSACTION_LIST_CHANGED] =
 		g_signal_new ("transaction-list-changed",
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
@@ -1316,11 +1203,6 @@ pk_engine_class_init (PkEngineClass *klass)
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
 			      0, NULL, NULL, g_cclosure_marshal_VOID__VOID,
 			      G_TYPE_NONE, 0);
-	signals[SIGNAL_NETWORK_STATE_CHANGED] =
-		g_signal_new ("network-state-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, g_cclosure_marshal_VOID__STRING,
-			      G_TYPE_NONE, 1, G_TYPE_STRING);
 	signals[SIGNAL_UPDATES_CHANGED] =
 		g_signal_new ("updates-changed",
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
@@ -1370,11 +1252,7 @@ pk_engine_binary_file_changed_cb (PkFileMonitor *file_monitor, PkEngine *engine)
 static void
 pk_engine_network_state_changed_cb (PkNetwork *network, PkNetworkEnum network_state, PkEngine *engine)
 {
-	const gchar *state_text;
 	g_return_if_fail (PK_IS_ENGINE (engine));
-	state_text = pk_network_enum_to_text (network_state);
-	egg_debug ("emitting network-state-changed: %s", state_text);
-	g_signal_emit (engine, signals[SIGNAL_NETWORK_STATE_CHANGED], 0, state_text);
 
 	/* already set */
 	if (engine->priv->network_state == network_state)
diff --git a/src/pk-engine.h b/src/pk-engine.h
index 4c88670..5a8a002 100644
--- a/src/pk-engine.h
+++ b/src/pk-engine.h
@@ -75,27 +75,8 @@ PkEngine	*pk_engine_new				(void);
 guint		 pk_engine_get_seconds_idle		(PkEngine	*engine);
 
 /* dbus methods */
-gboolean	 pk_engine_get_actions			(PkEngine	*engine,
-							 gchar		**roles,
-							 GError		**error);
-gboolean	 pk_engine_get_backend_detail		(PkEngine	*engine,
-							 gchar		**name,
-							 gchar		**author,
-							 GError		**error);
-gboolean	 pk_engine_get_filters			(PkEngine	*engine,
-							 gchar		**filters,
-							 GError		**error);
-gboolean	 pk_engine_get_groups			(PkEngine	*engine,
-							 gchar		**groups,
-							 GError		**error);
-gboolean	 pk_engine_get_mime_types		(PkEngine	*engine,
-							 gchar		**types,
-							 GError		**error);
 void		 pk_engine_get_tid			(PkEngine	*engine,
 							 DBusGMethodInvocation *context);
-gboolean	 pk_engine_get_network_state		(PkEngine	*engine,
-							 gchar		**state,
-							 GError		**error);
 gboolean	 pk_engine_get_daemon_state		(PkEngine	*engine,
 							 gchar		**state,
 							 GError		**error);
diff --git a/src/pk-transaction.c b/src/pk-transaction.c
index 59bdf11..f3a7b71 100644
--- a/src/pk-transaction.c
+++ b/src/pk-transaction.c
@@ -168,8 +168,6 @@ struct PkTransactionPrivate
 };
 
 enum {
-	SIGNAL_ALLOW_CANCEL,
-	SIGNAL_CALLER_ACTIVE_CHANGED,
 	SIGNAL_DETAILS,
 	SIGNAL_ERROR_CODE,
 	SIGNAL_DISTRO_UPGRADE,
@@ -177,13 +175,11 @@ enum {
 	SIGNAL_FINISHED,
 	SIGNAL_MESSAGE,
 	SIGNAL_PACKAGE,
-	SIGNAL_PROGRESS_CHANGED,
 	SIGNAL_REPO_DETAIL,
 	SIGNAL_REPO_SIGNATURE_REQUIRED,
 	SIGNAL_EULA_REQUIRED,
 	SIGNAL_MEDIA_CHANGE_REQUIRED,
 	SIGNAL_REQUIRE_RESTART,
-	SIGNAL_STATUS_CHANGED,
 	SIGNAL_TRANSACTION,
 	SIGNAL_UPDATE_DETAIL,
 	SIGNAL_CATEGORY,
@@ -296,31 +292,6 @@ pk_transaction_set_role (PkTransaction *transaction, PkRoleEnum role)
 }
 
 /**
- * pk_transaction_get_text:
- **/
-static gchar *
-pk_transaction_get_text (PkTransaction *transaction)
-{
-	gchar *text = NULL;
-	const gchar *data;
-
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), NULL);
-	g_return_val_if_fail (transaction->priv->tid != NULL, NULL);
-
-	if (transaction->priv->cached_package_id != NULL) {
-		data = transaction->priv->cached_package_id;
-		text = pk_package_id_to_printable (data);
-	} else if (transaction->priv->cached_package_ids != NULL) {
-		data = transaction->priv->cached_package_ids[0];
-		text = pk_package_id_to_printable (data);
-	} else if (transaction->priv->cached_values != NULL) {
-		text = g_strdup (transaction->priv->cached_values);
-	}
-
-	return text;
-}
-
-/**
  * pk_transaction_finish_invalidate_caches:
  **/
 static gboolean
@@ -380,9 +351,6 @@ pk_transaction_progress_changed_emit (PkTransaction *transaction, guint percenta
 	transaction->priv->elapsed_time = elapsed;
 	transaction->priv->remaining_time = remaining;
 
-	egg_debug ("emitting percentage-changed %i, %i, %i, %i", percentage, subpercentage, elapsed, remaining);
-	g_signal_emit (transaction, signals[SIGNAL_PROGRESS_CHANGED], 0, percentage, subpercentage, elapsed, remaining);
-
 	/* emit */
 	egg_debug ("emitting changed");
 	g_signal_emit (transaction, signals[SIGNAL_CHANGED], 0);
@@ -408,9 +376,6 @@ pk_transaction_allow_cancel_emit (PkTransaction *transaction, gboolean allow_can
 	else
 		pk_inhibit_add (transaction->priv->inhibit, transaction);
 
-	egg_debug ("emitting allow-cancel %i", allow_cancel);
-	g_signal_emit (transaction, signals[SIGNAL_ALLOW_CANCEL], 0, allow_cancel);
-
 	/* emit */
 	egg_debug ("emitting changed");
 	g_signal_emit (transaction, signals[SIGNAL_CHANGED], 0);
@@ -422,8 +387,6 @@ pk_transaction_allow_cancel_emit (PkTransaction *transaction, gboolean allow_can
 static void
 pk_transaction_status_changed_emit (PkTransaction *transaction, PkStatusEnum status)
 {
-	const gchar *status_text;
-
 	g_return_if_fail (PK_IS_TRANSACTION (transaction));
 	g_return_if_fail (transaction->priv->tid != NULL);
 
@@ -432,10 +395,6 @@ pk_transaction_status_changed_emit (PkTransaction *transaction, PkStatusEnum sta
 		return;
 
 	transaction->priv->status = status;
-	status_text = pk_status_enum_to_text (status);
-
-	egg_debug ("emitting status-changed '%s'", status_text);
-	g_signal_emit (transaction, signals[SIGNAL_STATUS_CHANGED], 0, status_text);
 
 	/* emit */
 	egg_debug ("emitting changed");
@@ -495,12 +454,6 @@ pk_transaction_caller_active_changed_cb (EggDbusMonitor *egg_dbus_monitor, gbool
 	/* save as a property */
 	transaction->priv->caller_active = caller_active;
 
-	/* only send if false, a client can hardly re-connect... */
-	if (caller_active == FALSE) {
-		egg_debug ("client disconnected....");
-		g_signal_emit (transaction, signals[SIGNAL_CALLER_ACTIVE_CHANGED], 0, FALSE);
-	}
-
 	/* emit */
 	egg_debug ("emitting changed");
 	g_signal_emit (transaction, signals[SIGNAL_CHANGED], 0);
@@ -1625,7 +1578,8 @@ pk_transaction_speed_cb (GObject *object, GParamSpec *pspec, PkTransaction *tran
 		      "speed", &transaction->priv->speed,
 		      NULL);
 	/* emit */
-	egg_warning ("need to emit changed event");
+	egg_debug ("emitting changed");
+	g_signal_emit (transaction, signals[SIGNAL_CHANGED], 0);
 }
 
 /**
@@ -2716,21 +2670,6 @@ out:
 }
 
 /**
- * pk_transaction_get_allow_cancel:
- **/
-gboolean
-pk_transaction_get_allow_cancel (PkTransaction *transaction, gboolean *allow_cancel, GError **error)
-{
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), FALSE);
-	g_return_val_if_fail (transaction->priv->tid != NULL, FALSE);
-
-	/* we do not need to get the context and check the uid */
-	egg_debug ("GetAllowCancel method called");
-	*allow_cancel = transaction->priv->allow_cancel;
-	return TRUE;
-}
-
-/**
  * pk_transaction_get_categories:
  **/
 void
@@ -3153,46 +3092,6 @@ pk_transaction_get_old_transactions (PkTransaction *transaction, guint number, G
 }
 
 /**
- * pk_transaction_get_package_last:
- **/
-gboolean
-pk_transaction_get_package_last (PkTransaction *transaction, gchar **package_id, GError **error)
-{
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), FALSE);
-	g_return_val_if_fail (transaction->priv->tid != NULL, FALSE);
-
-	egg_debug ("GetPackageLast method called");
-
-	if (transaction->priv->last_package_id == NULL) {
-		g_set_error (error, PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_INVALID_STATE,
-			     "No package data available");
-		return FALSE;
-	}
-	*package_id = g_strdup (transaction->priv->last_package_id);
-	return TRUE;
-}
-
-/**
- * pk_transaction_get_progress:
- **/
-gboolean
-pk_transaction_get_progress (PkTransaction *transaction,
-			     guint *percentage, guint *subpercentage,
-			     guint *elapsed, guint *remaining, GError **error)
-{
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), FALSE);
-	g_return_val_if_fail (transaction->priv->tid != NULL, FALSE);
-
-	egg_debug ("GetProgress method called, using cached values");
-	*percentage = transaction->priv->percentage;
-	*subpercentage = transaction->priv->subpercentage;
-	*elapsed = transaction->priv->elapsed_time;
-	*remaining = transaction->priv->remaining_time;
-
-	return TRUE;
-}
-
-/**
  * pk_transaction_get_repo_list:
  **/
 void
@@ -3338,47 +3237,6 @@ pk_transaction_get_requires (PkTransaction *transaction, const gchar *filter, gc
 }
 
 /**
- * pk_transaction_get_role:
- **/
-gboolean
-pk_transaction_get_role (PkTransaction *transaction,
-			 const gchar **role, const gchar **text, GError **error)
-{
-	gchar *text_temp;
-
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), FALSE);
-
-	egg_debug ("GetRole method called");
-
-	/* we might not have this set yet */
-	if (transaction->priv->tid == NULL) {
-		g_set_error (error, PK_TRANSACTION_ERROR, PK_TRANSACTION_ERROR_NO_SUCH_TRANSACTION, "Role not set");
-		return FALSE;
-	}
-
-	text_temp = pk_transaction_get_text (transaction);
-	*role = g_strdup (pk_role_enum_to_text (transaction->priv->role));
-	*text = g_strdup (text_temp);
-	g_free (text_temp);
-	return TRUE;
-}
-
-/**
- * pk_transaction_get_status:
- **/
-gboolean
-pk_transaction_get_status (PkTransaction *transaction, const gchar **status, GError **error)
-{
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), FALSE);
-	g_return_val_if_fail (transaction->priv->tid != NULL, FALSE);
-
-	egg_debug ("GetStatus method called");
-
-	*status = g_strdup (pk_status_enum_to_text (transaction->priv->status));
-	return TRUE;
-}
-
-/**
  * pk_transaction_get_update_detail:
  **/
 void
@@ -3868,21 +3726,6 @@ pk_transaction_install_signature (PkTransaction *transaction, const gchar *sig_t
 }
 
 /**
- * pk_transaction_is_caller_active:
- **/
-gboolean
-pk_transaction_is_caller_active (PkTransaction *transaction, gboolean *is_active, GError **error)
-{
-	g_return_val_if_fail (PK_IS_TRANSACTION (transaction), FALSE);
-	g_return_val_if_fail (transaction->priv->tid != NULL, FALSE);
-
-	egg_debug ("is caller active");
-
-	*is_active = egg_dbus_monitor_is_connected (transaction->priv->monitor);
-	return TRUE;
-}
-
-/**
  * pk_transaction_refresh_cache:
  **/
 void
@@ -5414,16 +5257,6 @@ pk_transaction_class_init (PkTransactionClass *klass)
 				  G_PARAM_READABLE);
 	g_object_class_install_property (object_class, PROP_SPEED, spec);
 
-	signals[SIGNAL_ALLOW_CANCEL] =
-		g_signal_new ("allow-cancel",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-	signals[SIGNAL_CALLER_ACTIVE_CHANGED] =
-		g_signal_new ("caller-active-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
 	signals[SIGNAL_DETAILS] =
 		g_signal_new ("details",
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
@@ -5465,11 +5298,6 @@ pk_transaction_class_init (PkTransactionClass *klass)
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
 			      0, NULL, NULL, pk_marshal_VOID__STRING_STRING_STRING,
 			      G_TYPE_NONE, 3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);
-	signals[SIGNAL_PROGRESS_CHANGED] =
-		g_signal_new ("progress-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, pk_marshal_VOID__UINT_UINT_UINT_UINT,
-			      G_TYPE_NONE, 4, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT);
 	signals[SIGNAL_REPO_DETAIL] =
 		g_signal_new ("repo-detail",
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
@@ -5497,11 +5325,6 @@ pk_transaction_class_init (PkTransactionClass *klass)
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
 			      0, NULL, NULL, pk_marshal_VOID__STRING_STRING,
 			      G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_STRING);
-	signals[SIGNAL_STATUS_CHANGED] =
-		g_signal_new ("status-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, g_cclosure_marshal_VOID__STRING,
-			      G_TYPE_NONE, 1, G_TYPE_STRING);
 	signals[SIGNAL_TRANSACTION] =
 		g_signal_new ("transaction",
 			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
diff --git a/src/pk-transaction.h b/src/pk-transaction.h
index a454144..f755f29 100644
--- a/src/pk-transaction.h
+++ b/src/pk-transaction.h
@@ -106,9 +106,6 @@ void		 pk_transaction_cancel				(PkTransaction	*transaction,
 void		 pk_transaction_download_packages		(PkTransaction  *transaction,
 								 gchar		**package_ids,
 								 DBusGMethodInvocation *context);
-gboolean	 pk_transaction_get_allow_cancel		(PkTransaction	*transaction,
-								 gboolean	*allow_cancel,
-								 GError		**error);
 void		 pk_transaction_get_categories			(PkTransaction	*transaction,
 								 DBusGMethodInvocation *context);
 void		 pk_transaction_get_depends			(PkTransaction	*transaction,
@@ -127,18 +124,9 @@ void		 pk_transaction_get_files			(PkTransaction	*transaction,
 gboolean	 pk_transaction_get_old_transactions		(PkTransaction	*transaction,
 								 guint		 number,
 								 GError		**error);
-gboolean	 pk_transaction_get_package_last		(PkTransaction	*transaction,
-								 gchar		**package,
-								 GError		**error);
 void		 pk_transaction_get_packages			(PkTransaction	*transaction,
 								 const gchar	*filter,
 								 DBusGMethodInvocation *context);
-gboolean	 pk_transaction_get_progress			(PkTransaction	*transaction,
-								 guint		*percentage,
-								 guint		*subpercentage,
-								 guint		*elapsed,
-								 guint		*remaining,
-								 GError		**error);
 void		 pk_transaction_get_repo_list			(PkTransaction	*transaction,
 								 const gchar	*filter,
 								 DBusGMethodInvocation *context);
@@ -147,13 +135,6 @@ void		 pk_transaction_get_requires			(PkTransaction	*transaction,
 								 gchar		**package_ids,
 								 gboolean	 recursive,
 								 DBusGMethodInvocation *context);
-gboolean	 pk_transaction_get_role			(PkTransaction	*transaction,
-								 const gchar	**role,
-								 const gchar	**text,
-								 GError		**error);
-gboolean	 pk_transaction_get_status			(PkTransaction	*transaction,
-								 const gchar	**status,
-								 GError		**error);
 void		 pk_transaction_get_update_detail		(PkTransaction	*transaction,
 								 gchar		**package_ids,
 								 DBusGMethodInvocation *context);
@@ -173,9 +154,6 @@ void		 pk_transaction_install_signature		(PkTransaction	*transaction,
 								 const gchar	*key_id,
 								 const gchar	*package_id,
 								DBusGMethodInvocation *context);
-gboolean	 pk_transaction_is_caller_active		(PkTransaction	*transaction,
-								 gboolean	*is_active,
-								 GError		**error);
 void		 pk_transaction_refresh_cache			(PkTransaction	*transaction,
 								 gboolean	 force,
 								 DBusGMethodInvocation *context);
commit 5f9397ca0db8e3d258b2804f7cfbe825fc9d461b
Author: Richard Hughes <richard at hughsie.com>
Date:   Mon Dec 7 15:43:20 2009 +0000

    Remove the deprecated glib library

diff --git a/client/egg-string.c b/client/egg-string.c
index a5ff465..6ad7909 120000
--- a/client/egg-string.c
+++ b/client/egg-string.c
@@ -1 +1 @@
-../lib/packagekit-glib/egg-string.c
\ No newline at end of file
+../src/egg-string.c
\ No newline at end of file
diff --git a/client/egg-string.h b/client/egg-string.h
index 1c0eaa9..d7e801b 120000
--- a/client/egg-string.h
+++ b/client/egg-string.h
@@ -1 +1 @@
-../lib/packagekit-glib/egg-string.h
\ No newline at end of file
+../src/egg-string.h
\ No newline at end of file
diff --git a/client/egg-test.c b/client/egg-test.c
index faa250b..bdc6509 120000
--- a/client/egg-test.c
+++ b/client/egg-test.c
@@ -1 +1 @@
-../lib/packagekit-glib/egg-test.c
\ No newline at end of file
+../src/egg-test.c
\ No newline at end of file
diff --git a/client/egg-test.h b/client/egg-test.h
index 9e81e53..89f8622 120000
--- a/client/egg-test.h
+++ b/client/egg-test.h
@@ -1 +1 @@
-../lib/packagekit-glib/egg-test.h
\ No newline at end of file
+../src/egg-test.h
\ No newline at end of file
diff --git a/configure.ac b/configure.ac
index ba2c7cf..52db22b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -538,16 +538,6 @@ AC_ARG_ENABLE(ruck, AS_HELP_STRING([--enable-ruck],[Build ruck client]),
 	      build_ruck=$enableval,build_ruck=yes)
 AM_CONDITIONAL(PK_BUILD_RUCK, test $build_ruck = "yes")
 
-dnl ---------------------------------------------------------------------------
-dnl - Able to build GLib (legacy) library
-dnl ---------------------------------------------------------------------------
-AC_ARG_ENABLE(glib, AS_HELP_STRING([--enable-glib],[Build glib library (legacy)]),
-	      build_glib=$enableval,build_glib=yes)
-AM_CONDITIONAL(PK_BUILD_GLIB, test $build_glib = "yes")
-if test x$build_glib = xyes; then
-	AC_DEFINE(PK_BUILD_GLIB,1,[Build glib code])
-fi
-
 # backends
 AC_ARG_ENABLE(alpm, AS_HELP_STRING([--enable-alpm],[use the ALPM backend]),enable_alpm=$enableval,enable_alpm=no)
 AC_ARG_ENABLE(apt, AS_HELP_STRING([--enable-apt],[use the APT backend]),enable_apt=$enableval,enable_apt=no)
@@ -847,9 +837,6 @@ data/Makefile
 data/org.freedesktop.PackageKit.conf
 data/tests/Makefile
 lib/Makefile
-lib/packagekit-glib/pk-version.h
-lib/packagekit-glib/Makefile
-lib/packagekit-glib/packagekit-glib.pc
 lib/packagekit-glib2/pk-version.h
 lib/packagekit-glib2/Makefile
 lib/packagekit-glib2/packagekit-glib2.pc
@@ -893,7 +880,6 @@ echo "
         pm-utils scripts:          ${build_pm_utils}
         RUCK client:               ${build_ruck}
         QT library:                ${build_qt}
-        GLib library (legacy):     ${build_glib}
 	Managed bindings:          ${build_managed}
 
         Backends:
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 976a9be..666510e 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -8,7 +8,3 @@ if PK_BUILD_MANAGED
 SUBDIRS += packagekit-sharp
 endif
 
-if PK_BUILD_GLIB
-SUBDIRS += packagekit-glib
-endif
-
diff --git a/lib/packagekit-glib/.gitignore b/lib/packagekit-glib/.gitignore
deleted file mode 100644
index a013a7d..0000000
--- a/lib/packagekit-glib/.gitignore
+++ /dev/null
@@ -1,12 +0,0 @@
-.deps
-.libs
-*.o
-*.la
-*.lo
-*-marshal.c
-*-marshal.h
-pk-self-test
-*.loT
-*.db
-pk-version.h
-
diff --git a/lib/packagekit-glib/Makefile.am b/lib/packagekit-glib/Makefile.am
deleted file mode 100644
index d4a10b9..0000000
--- a/lib/packagekit-glib/Makefile.am
+++ /dev/null
@@ -1,178 +0,0 @@
-
-NULL =
-
-INCLUDES = \
-	$(GLIB_CFLAGS)						\
-	$(DBUS_CFLAGS)						\
-	$(POLKIT_CFLAGS)					\
-	$(SQLITE_CFLAGS)					\
-	-I$(top_srcdir)/lib					\
-	-I$(top_builddir)/lib					\
-	-I$(top_builddir)/lib/packagekit-glib			\
-	-I.							\
-	-DPK_COMPILATION					\
-	-DPK_DB_DIR=\""$(PK_DB_DIR)"\" 				\
-	-DLOCALSTATEDIR=\""$(localstatedir)"\" 			\
-	-DPACKAGE_DATA_DIR=\""$(datadir)"\"			\
-	-DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\"
-
-pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = 						\
-	packagekit-glib.pc					\
-	$(NULL)
-
-lib_LTLIBRARIES =						\
-	libpackagekit-glib.la					\
-	$(NULL)
-
-libpackagekit_glib_includedir = $(includedir)/PackageKit/packagekit-glib
-
-libpackagekit_glib_include_HEADERS =				\
-	packagekit.h						\
-	pk-bitfield.h						\
-	pk-catalog.h						\
-	pk-category-obj.h					\
-	pk-client.h						\
-	pk-client-pool.h					\
-	pk-common.h						\
-	pk-connection.h						\
-	pk-control.h						\
-	pk-desktop.h						\
-	pk-details-obj.h					\
-	pk-distro-upgrade-obj.h					\
-	pk-enum.h						\
-	pk-obj-list.h						\
-	pk-package-id.h						\
-	pk-package-ids.h					\
-	pk-package-list.h					\
-	pk-package-obj.h					\
-	pk-require-restart-obj.h				\
-	pk-service-pack.h					\
-	pk-task-list.h						\
-	pk-transaction-obj.h					\
-	pk-update-detail-obj.h					\
-	pk-version.h						\
-	$(NULL)
-
-libpackagekit_glib_la_SOURCES =					\
-	packagekit.h						\
-	egg-debug.c						\
-	egg-debug.h						\
-	egg-string.c						\
-	egg-string.h						\
-	pk-version.h						\
-	pk-marshal.c						\
-	pk-marshal.h						\
-	pk-desktop.c						\
-	pk-desktop.h						\
-	pk-connection.c						\
-	pk-connection.h						\
-	pk-service-pack.c					\
-	pk-service-pack.h					\
-	pk-package-id.c						\
-	pk-package-id.h						\
-	pk-package-ids.c					\
-	pk-package-ids.h					\
-	pk-package-obj.c					\
-	pk-package-obj.h					\
-	pk-obj-list.c						\
-	pk-obj-list.h						\
-	pk-package-list.c					\
-	pk-package-list.h					\
-	pk-category-obj.c					\
-	pk-category-obj.h					\
-	pk-update-detail-obj.c					\
-	pk-update-detail-obj.h					\
-	pk-distro-upgrade-obj.c					\
-	pk-distro-upgrade-obj.h					\
-	pk-require-restart-obj.c				\
-	pk-require-restart-obj.h				\
-	pk-details-obj.c					\
-	pk-details-obj.h					\
-	pk-transaction-obj.c					\
-	pk-transaction-obj.h					\
-	pk-enum.c						\
-	pk-enum.h						\
-	pk-bitfield.c						\
-	pk-bitfield.h						\
-	pk-common.c						\
-	pk-common.h						\
-	pk-client.c						\
-	pk-client.h						\
-	pk-client-pool.c					\
-	pk-client-pool.h					\
-	pk-catalog.c						\
-	pk-catalog.h						\
-	pk-control.c						\
-	pk-control.h						\
-	pk-task-list.c						\
-	pk-task-list.h						\
-	$(NULL)
-
-libpackagekit_glib_la_LIBADD =					\
-	$(GLIB_LIBS)						\
-	$(DBUS_LIBS)						\
-	$(POLKIT_LIBS)						\
-	$(SQLITE_LIBS)						\
-	$(ARCHIVE_LIBS)						\
-	$(NULL)
-
-libpackagekit_glib_la_LDFLAGS =					\
-	-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)	\
-	-export-dynamic						\
-	-no-undefined						\
-	-export-symbols-regex '^pk_.*'				\
-	$(NULL)
-
-libpackagekit_glib_la_CFLAGS =					\
-	$(WARNINGFLAGS_C)					\
-	$(NULL)
-
-if EGG_BUILD_TESTS
-check_PROGRAMS =						\
-	pk-self-test
-
-pk_self_test_SOURCES =						\
-	$(libpackagekit_glib_la_SOURCES)			\
-	egg-test.h						\
-	egg-test.c						\
-	pk-self-test.c						\
-	$(NULL)
-
-pk_self_test_LDADD =						\
-	$(GLIB_LIBS)						\
-	$(DBUS_LIBS)						\
-	$(SELFTEST_LIBS)					\
-	$(POLKIT_LIBS)						\
-	$(SQLITE_LIBS)						\
-	$(ARCHIVE_LIBS)						\
-	$(NULL)
-
-pk_self_test_CFLAGS = -DEGG_TEST $(AM_CFLAGS)
-
-TESTS = pk-self-test
-endif
-
-EXTRA_DIST =							\
-	packagekit-glib.pc.in					\
-	pk-version.h.in						\
-	pk-marshal.list
-
-BUILT_SOURCES = 						\
-	pk-marshal.c						\
-	pk-marshal.h						\
-	$(NULL)
-
-pk-marshal.c: pk-marshal.list
-	echo "#include \"pk-marshal.h\"" > $@ && \
-	@GLIB_GENMARSHAL@ $< --prefix=pk_marshal --body >> $@
-
-pk-marshal.h: pk-marshal.list
-	@GLIB_GENMARSHAL@ $< --prefix=pk_marshal --header > $@
-
-CLEANFILES = $(BUILT_SOURCES)
-
-clean-local:
-	rm -f *~
-	rm -f $(CLEANFILES)
-
diff --git a/lib/packagekit-glib/egg-debug.c b/lib/packagekit-glib/egg-debug.c
deleted file mode 120000
index 98fd102..0000000
--- a/lib/packagekit-glib/egg-debug.c
+++ /dev/null
@@ -1 +0,0 @@
-../../src/egg-debug.c
\ No newline at end of file
diff --git a/lib/packagekit-glib/egg-debug.h b/lib/packagekit-glib/egg-debug.h
deleted file mode 120000
index 13de545..0000000
--- a/lib/packagekit-glib/egg-debug.h
+++ /dev/null
@@ -1 +0,0 @@
-../../src/egg-debug.h
\ No newline at end of file
diff --git a/lib/packagekit-glib/egg-string.c b/lib/packagekit-glib/egg-string.c
deleted file mode 120000
index da9b4c3..0000000
--- a/lib/packagekit-glib/egg-string.c
+++ /dev/null
@@ -1 +0,0 @@
-../../src/egg-string.c
\ No newline at end of file
diff --git a/lib/packagekit-glib/egg-string.h b/lib/packagekit-glib/egg-string.h
deleted file mode 120000
index 6186dac..0000000
--- a/lib/packagekit-glib/egg-string.h
+++ /dev/null
@@ -1 +0,0 @@
-../../src/egg-string.h
\ No newline at end of file
diff --git a/lib/packagekit-glib/egg-test.c b/lib/packagekit-glib/egg-test.c
deleted file mode 120000
index ad24c4f..0000000
--- a/lib/packagekit-glib/egg-test.c
+++ /dev/null
@@ -1 +0,0 @@
-../../src/egg-test.c
\ No newline at end of file
diff --git a/lib/packagekit-glib/egg-test.h b/lib/packagekit-glib/egg-test.h
deleted file mode 120000
index 5a65e4a..0000000
--- a/lib/packagekit-glib/egg-test.h
+++ /dev/null
@@ -1 +0,0 @@
-../../src/egg-test.h
\ No newline at end of file
diff --git a/lib/packagekit-glib/packagekit-glib.pc.in b/lib/packagekit-glib/packagekit-glib.pc.in
deleted file mode 100644
index 4857ed2..0000000
--- a/lib/packagekit-glib/packagekit-glib.pc.in
+++ /dev/null
@@ -1,13 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: packagekit-glib
-Description: PackageKit is a system daemon for installing stuff.
-Version: @VERSION@
-Requires.private: dbus-1, gthread-2.0
-Requires: glib-2.0, gobject-2.0, sqlite3
-Libs: -L${libdir} -lpackagekit-glib
-Cflags: -I${includedir}/PackageKit
-
diff --git a/lib/packagekit-glib/packagekit.h b/lib/packagekit-glib/packagekit.h
deleted file mode 100644
index 8536509..0000000
--- a/lib/packagekit-glib/packagekit.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#ifndef __PACKAGEKIT_H__
-#define __PACKAGEKIT_H__
-
-#define __PACKAGEKIT_H_INSIDE__
-
-#include <packagekit-glib/pk-version.h>
-#include <packagekit-glib/pk-bitfield.h>
-#include <packagekit-glib/pk-catalog.h>
-#include <packagekit-glib/pk-category-obj.h>
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-client-pool.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-connection.h>
-#include <packagekit-glib/pk-control.h>
-#include <packagekit-glib/pk-details-obj.h>
-#include <packagekit-glib/pk-distro-upgrade-obj.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-desktop.h>
-#include <packagekit-glib/pk-obj-list.h>
-#include <packagekit-glib/pk-package-id.h>
-#include <packagekit-glib/pk-package-ids.h>
-#include <packagekit-glib/pk-package-list.h>
-#include <packagekit-glib/pk-package-obj.h>
-#include <packagekit-glib/pk-require-restart-obj.h>
-#include <packagekit-glib/pk-service-pack.h>
-#include <packagekit-glib/pk-task-list.h>
-#include <packagekit-glib/pk-transaction-obj.h>
-#include <packagekit-glib/pk-update-detail-obj.h>
-
-#undef __PACKAGEKIT_H_INSIDE__
-
-#endif /* __PACKAGEKIT_H__ */
-
diff --git a/lib/packagekit-glib/pk-bitfield.c b/lib/packagekit-glib/pk-bitfield.c
deleted file mode 100644
index 72f3ea6..0000000
--- a/lib/packagekit-glib/pk-bitfield.c
+++ /dev/null
@@ -1,544 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-enum
- * @short_description: Functions for converting strings to enum and vice-versa
- *
- * This file contains functions to convert to and from enumerated types.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-bitfield.h>
-
-/**
- * pk_bitfield_contain_priority:
- * @values: a valid bitfield instance
- * @value: the values we are searching for
- *
- * Finds elements in a list, but with priority going to the preceeding entry
- *
- * Return value: The return enumerated type, or -1 if none are found
- **/
-gint
-pk_bitfield_contain_priority (PkBitfield values, gint value, ...)
-{
-	va_list args;
-	guint i;
-	gint value_temp;
-	gint retval = -1;
-
-	/* we must query at least one thing */
-	if (pk_bitfield_contain (values, value))
-		return value;
-
-	/* process the valist */
-	va_start (args, value);
-	for (i=0;; i++) {
-		value_temp = va_arg (args, gint);
-		/* do we have this one? */
-		if (pk_bitfield_contain (values, value_temp)) {
-			retval = value_temp;
-			break;
-		}
-		/* end of the list */
-		if (value_temp == -1)
-			break;
-	}
-	va_end (args);
-
-	return retval;
-}
-
-/**
- * pk_bitfield_from_enums:
- * @value: the values we want to add to the bitfield
- *
- * Return value: The return bitfield, or 0 if invalid
- **/
-PkBitfield
-pk_bitfield_from_enums (gint value, ...)
-{
-	va_list args;
-	guint i;
-	gint value_temp;
-	PkBitfield values;
-
-	/* we must query at least one thing */
-	values = pk_bitfield_value (value);
-
-	/* process the valist */
-	va_start (args, value);
-	for (i=0;; i++) {
-		value_temp = va_arg (args, gint);
-		if (value_temp == -1)
-			break;
-		values += pk_bitfield_value (value_temp);
-	}
-	va_end (args);
-
-	return values;
-}
-
-/**
- * pk_role_bitfield_to_text:
- * @roles: The enumerated type values
- *
- * Converts a enumerated type bitfield to its text representation
- *
- * Return value: the enumerated constant value, e.g. "install-file;update-system"
- **/
-gchar *
-pk_role_bitfield_to_text (PkBitfield roles)
-{
-	GString *string;
-	guint i;
-
-	string = g_string_new ("");
-	for (i=0; i<=PK_ROLE_ENUM_UNKNOWN; i++) {
-		if ((roles & pk_bitfield_value (i)) == 0)
-			continue;
-		g_string_append_printf (string, "%s;", pk_role_enum_to_text (i));
-	}
-	/* do we have a no bitfield? \n */
-	if (string->len == 0) {
-		egg_warning ("not valid!");
-		g_string_append (string, pk_role_enum_to_text (PK_ROLE_ENUM_UNKNOWN));
-	} else {
-		/* remove last \n */
-		g_string_set_size (string, string->len - 1);
-	}
-	return g_string_free (string, FALSE);
-}
-
-/**
- * pk_role_bitfield_from_text:
- * @roles: the enumerated constant value, e.g. "available;~gui"
- *
- * Converts text representation to its enumerated type bitfield
- *
- * Return value: The enumerated type values, or 0 for invalid
- **/
-PkBitfield
-pk_role_bitfield_from_text (const gchar *roles)
-{
-	PkBitfield roles_enum = 0;
-	gchar **split;
-	guint length;
-	guint i;
-	PkRoleEnum role;
-
-	split = g_strsplit (roles, ";", 0);
-	if (split == NULL) {
-		egg_warning ("unable to split");
-		goto out;
-	}
-
-	length = g_strv_length (split);
-	for (i=0; i<length; i++) {
-		role = pk_role_enum_from_text (split[i]);
-		if (role == PK_ROLE_ENUM_UNKNOWN) {
-			roles_enum = 0;
-			break;
-		}
-		roles_enum += pk_bitfield_value (role);
-	}
-out:
-	g_strfreev (split);
-	return roles_enum;
-}
-
-/**
- * pk_groups_bitfield_to_text:
- * @groups: The enumerated type values
- *
- * Converts a enumerated type bitfield to its text representation
- *
- * Return value: the enumerated constant value, e.g. "gnome;kde"
- **/
-gchar *
-pk_group_bitfield_to_text (PkBitfield groups)
-{
-	GString *string;
-	guint i;
-
-	string = g_string_new ("");
-	for (i=0; i<=PK_GROUP_ENUM_UNKNOWN; i++) {
-		if ((groups & pk_bitfield_value (i)) == 0)
-			continue;
-		g_string_append_printf (string, "%s;", pk_group_enum_to_text (i));
-	}
-	/* do we have a no bitfield? \n */
-	if (string->len == 0) {
-		egg_warning ("not valid!");
-		g_string_append (string, pk_group_enum_to_text (PK_GROUP_ENUM_UNKNOWN));
-	} else {
-		/* remove last \n */
-		g_string_set_size (string, string->len - 1);
-	}
-	return g_string_free (string, FALSE);
-}
-
-/**
- * pk_group_bitfield_from_text:
- * @groups: the enumerated constant value, e.g. "available;~gui"
- *
- * Converts text representation to its enumerated type bitfield
- *
- * Return value: The enumerated type values, or 0 for invalid
- **/
-PkBitfield
-pk_group_bitfield_from_text (const gchar *groups)
-{
-	PkBitfield groups_enum = 0;
-	gchar **split;
-	guint length;
-	guint i;
-	PkGroupEnum group;
-
-	split = g_strsplit (groups, ";", 0);
-	if (split == NULL) {
-		egg_warning ("unable to split");
-		goto out;
-	}
-
-	length = g_strv_length (split);
-	for (i=0; i<length; i++) {
-		group = pk_group_enum_from_text (split[i]);
-		if (group == PK_GROUP_ENUM_UNKNOWN) {
-			groups_enum = 0;
-			break;
-		}
-		groups_enum += pk_bitfield_value (group);
-	}
-out:
-	g_strfreev (split);
-	return groups_enum;
-}
-
-/**
- * pk_filter_bitfield_to_text:
- * @filters: The enumerated type values
- *
- * Converts a enumerated type bitfield to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available;~gui"
- **/
-gchar *
-pk_filter_bitfield_to_text (PkBitfield filters)
-{
-	GString *string;
-	guint i;
-
-	/* shortcut */
-	if (filters == 0)
-		return g_strdup (pk_filter_enum_to_text (filters));
-
-	string = g_string_new ("");
-	for (i=0; i<=PK_FILTER_ENUM_UNKNOWN; i++) {
-		if ((filters & pk_bitfield_value (i)) == 0)
-			continue;
-		g_string_append_printf (string, "%s;", pk_filter_enum_to_text (i));
-	}
-	/* do we have a 'none' filter? \n */
-	if (string->len == 0) {
-		egg_warning ("not valid!");
-		g_string_append (string, pk_filter_enum_to_text (PK_FILTER_ENUM_NONE));
-	} else {
-		/* remove last \n */
-		g_string_set_size (string, string->len - 1);
-	}
-	return g_string_free (string, FALSE);
-}
-
-/**
- * pk_filter_bitfield_from_text:
- * @filters: the enumerated constant value, e.g. "available;~gui"
- *
- * Converts text representation to its enumerated type bitfield, or 0 for invalid
- *
- * Return value: The enumerated type values
- **/
-PkBitfield
-pk_filter_bitfield_from_text (const gchar *filters)
-{
-	PkBitfield filters_enum = PK_FILTER_ENUM_NONE;
-	gchar **split;
-	guint length;
-	guint i;
-	PkFilterEnum filter;
-
-	split = g_strsplit (filters, ";", 0);
-	if (split == NULL) {
-		egg_warning ("unable to split");
-		goto out;
-	}
-
-	length = g_strv_length (split);
-	for (i=0; i<length; i++) {
-		filter = pk_filter_enum_from_text (split[i]);
-		if (filter == PK_FILTER_ENUM_UNKNOWN) {
-			filters_enum = 0;
-			break;
-		}
-		filters_enum += pk_bitfield_value (filter);
-	}
-out:
-	g_strfreev (split);
-	return filters_enum;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_bitfield_test (gpointer user_data)
-{
-	EggTest *test = (EggTest *) user_data;
-	gchar *text;
-	PkBitfield filter;
-	gint value;
-	PkBitfield values;
-
-	if (!egg_test_start (test, "PkBitfield"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "check we can convert filter bitfield to text (none)");
-	text = pk_filter_bitfield_to_text (pk_bitfield_value (PK_FILTER_ENUM_NONE));
-	if (g_strcmp0 (text, "none") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "text was %s", text);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "check we can invert a bit 1 -> 0");
-	values = pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT) | pk_bitfield_value (PK_FILTER_ENUM_NOT_NEWEST);
-	pk_bitfield_invert (values, PK_FILTER_ENUM_NOT_DEVELOPMENT);
-	if (values == pk_bitfield_value (PK_FILTER_ENUM_NOT_NEWEST))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "values were %" PK_BITFIELD_FORMAT, values);
-
-	/************************************************************/
-	egg_test_title (test, "check we can invert a bit 0 -> 1");
-	values = 0;
-	pk_bitfield_invert (values, PK_FILTER_ENUM_NOT_DEVELOPMENT);
-	if (values == pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "values were %" PK_BITFIELD_FORMAT, values);
-
-	/************************************************************/
-	egg_test_title (test, "check we can convert filter bitfield to text (single)");
-	text = pk_filter_bitfield_to_text (pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT));
-	if (g_strcmp0 (text, "~devel") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "text was %s", text);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "check we can convert filter bitfield to text (plural)");
-	text = pk_filter_bitfield_to_text (pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT) |
-					   pk_bitfield_value (PK_FILTER_ENUM_GUI) |
-					   pk_bitfield_value (PK_FILTER_ENUM_NEWEST));
-	if (g_strcmp0 (text, "~devel;gui;newest") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "text was %s", text);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "check we can convert filter text to bitfield (none)");
-	filter = pk_filter_bitfield_from_text ("none");
-	if (filter == pk_bitfield_value (PK_FILTER_ENUM_NONE))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "filter was %" PK_BITFIELD_FORMAT, filter);
-
-	/************************************************************/
-	egg_test_title (test, "check we can convert filter text to bitfield (single)");
-	filter = pk_filter_bitfield_from_text ("~devel");
-	if (filter == pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "filter was %" PK_BITFIELD_FORMAT, filter);
-
-	/************************************************************/
-	egg_test_title (test, "check we can convert filter text to bitfield (plural)");
-	filter = pk_filter_bitfield_from_text ("~devel;gui;newest");
-	if (filter == (pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT) |
-		       pk_bitfield_value (PK_FILTER_ENUM_GUI) |
-		       pk_bitfield_value (PK_FILTER_ENUM_NEWEST)))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "filter was %" PK_BITFIELD_FORMAT, filter);
-
-	/************************************************************/
-	egg_test_title (test, "check we can add / remove bitfield");
-	filter = pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT) |
-		 pk_bitfield_value (PK_FILTER_ENUM_GUI) |
-		 pk_bitfield_value (PK_FILTER_ENUM_NEWEST);
-	pk_bitfield_add (filter, PK_FILTER_ENUM_NOT_FREE);
-	pk_bitfield_remove (filter, PK_FILTER_ENUM_NOT_DEVELOPMENT);
-	text = pk_filter_bitfield_to_text (filter);
-	if (g_strcmp0 (text, "gui;~free;newest") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "text was %s", text);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "check we can test enum presence");
-	filter = pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT) |
-		 pk_bitfield_value (PK_FILTER_ENUM_GUI) |
-		 pk_bitfield_value (PK_FILTER_ENUM_NEWEST);
-	if (pk_bitfield_contain (filter, PK_FILTER_ENUM_NOT_DEVELOPMENT))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "wrong boolean");
-
-	/************************************************************/
-	egg_test_title (test, "check we can test enum false-presence");
-	if (!pk_bitfield_contain (filter, PK_FILTER_ENUM_FREE))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "wrong boolean");
-
-	/************************************************************/
-	egg_test_title (test, "check we can add / remove bitfield to nothing");
-	filter = pk_bitfield_value (PK_FILTER_ENUM_NOT_DEVELOPMENT);
-	pk_bitfield_remove (filter, PK_FILTER_ENUM_NOT_DEVELOPMENT);
-	text = pk_filter_bitfield_to_text (filter);
-	if (g_strcmp0 (text, "none") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "text was %s", text);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "role bitfield from enums (unknown)");
-	values = pk_bitfield_from_enums (PK_ROLE_ENUM_UNKNOWN, -1);
-	if (values == pk_bitfield_value (PK_ROLE_ENUM_UNKNOWN))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield %" PK_BITFIELD_FORMAT, values);
-
-	/************************************************************/
-	egg_test_title (test, "role bitfield from enums (random)");
-	values = pk_bitfield_from_enums (PK_ROLE_ENUM_SEARCH_GROUP, PK_ROLE_ENUM_SEARCH_DETAILS, -1);
-	if (values == (pk_bitfield_value (PK_ROLE_ENUM_SEARCH_DETAILS) |
-		       pk_bitfield_value (PK_ROLE_ENUM_SEARCH_GROUP)))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield %" PK_BITFIELD_FORMAT, values);
-
-	/************************************************************/
-	egg_test_title (test, "group bitfield from enums (unknown)");
-	values = pk_bitfield_from_enums (PK_GROUP_ENUM_UNKNOWN, -1);
-	if (values == pk_bitfield_value (PK_GROUP_ENUM_UNKNOWN))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield %" PK_BITFIELD_FORMAT, values);
-
-	/************************************************************/
-	egg_test_title (test, "group bitfield from enums (random)");
-	values = pk_bitfield_from_enums (PK_GROUP_ENUM_ACCESSIBILITY, -1);
-	if (values == (pk_bitfield_value (PK_GROUP_ENUM_ACCESSIBILITY)))
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield %" PK_BITFIELD_FORMAT, values);
-
-	/************************************************************/
-	egg_test_title (test, "group bitfield to text (unknown)");
-	values = pk_bitfield_from_enums (PK_GROUP_ENUM_UNKNOWN, -1);
-	text = pk_group_bitfield_to_text (values);
-	if (g_strcmp0 (text, "unknown") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield text %s (%" PK_BITFIELD_FORMAT ")", text, values);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "group bitfield to text (first and last)");
-	values = pk_bitfield_from_enums (PK_GROUP_ENUM_ACCESSIBILITY, PK_GROUP_ENUM_UNKNOWN, -1);
-	text = pk_group_bitfield_to_text (values);
-	if (g_strcmp0 (text, "accessibility;unknown") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield text %s (%" PK_BITFIELD_FORMAT ")", text, values);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "group bitfield to text (random)");
-	values = pk_bitfield_from_enums (PK_GROUP_ENUM_UNKNOWN, PK_GROUP_ENUM_REPOS, -1);
-	text = pk_group_bitfield_to_text (values);
-	if (g_strcmp0 (text, "repos;unknown") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned bitfield text %s (%" PK_BITFIELD_FORMAT ")", text, values);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "priority check missing");
-	values = pk_bitfield_value (PK_ROLE_ENUM_SEARCH_DETAILS) |
-		 pk_bitfield_value (PK_ROLE_ENUM_SEARCH_GROUP);
-	value = pk_bitfield_contain_priority (values, PK_ROLE_ENUM_SEARCH_FILE, -1);
-	if (value == -1)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned priority %i when should be missing", value);
-
-	/************************************************************/
-	egg_test_title (test, "priority check first");
-	value = pk_bitfield_contain_priority (values, PK_ROLE_ENUM_SEARCH_GROUP, -1);
-	if (value == PK_ROLE_ENUM_SEARCH_GROUP)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned wrong value; %i", value);
-
-	/************************************************************/
-	egg_test_title (test, "priority check second, correct");
-	value = pk_bitfield_contain_priority (values, PK_ROLE_ENUM_SEARCH_FILE, PK_ROLE_ENUM_SEARCH_GROUP, -1);
-	if (value == PK_ROLE_ENUM_SEARCH_GROUP)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "returned wrong value; %i", value);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-bitfield.h b/lib/packagekit-glib/pk-bitfield.h
deleted file mode 100644
index 07bdbec..0000000
--- a/lib/packagekit-glib/pk-bitfield.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_BITFIELD_H
-#define __PK_BITFIELD_H
-
-#include <glib-object.h>
-#include <glib.h>
-#include <packagekit-glib/pk-enum.h>
-
-G_BEGIN_DECLS
-
-typedef guint64 PkBitfield;
-#define PK_BITFIELD_FORMAT G_GUINT64_FORMAT
-
-/* convenience functions as it's easy to forget the bitwise operators */
-#define pk_bitfield_add(bitfield,enum)		do { ((bitfield) |= (pk_bitfield_value(enum))); } while (0)
-#define pk_bitfield_remove(bitfield,enum)	do { ((bitfield) &= ~(pk_bitfield_value(enum))); } while (0)
-#define pk_bitfield_invert(bitfield,enum)	do { ((bitfield) ^= (pk_bitfield_value(enum))); } while (0)
-#define pk_bitfield_contain(bitfield,enum)	(((bitfield) & (pk_bitfield_value(enum))) > 0)
-#define pk_bitfield_value(enum)			((PkBitfield) 1 << (enum))
-
-gint		 pk_bitfield_contain_priority		(PkBitfield	 values,
-							 gint		 value, ...);
-PkBitfield	 pk_bitfield_from_enums			(gint		 value, ...);
-PkBitfield	 pk_role_bitfield_from_text 		(const gchar	*roles);
-gchar		*pk_role_bitfield_to_text		(PkBitfield	 roles);
-PkBitfield	 pk_group_bitfield_from_text 		(const gchar	*groups);
-gchar		*pk_group_bitfield_to_text		(PkBitfield	 groups);
-PkBitfield	 pk_filter_bitfield_from_text 		(const gchar	*filters);
-gchar		*pk_filter_bitfield_to_text		(PkBitfield	 filters);
-void		 pk_bitfield_test			(gpointer	 user_data);
-
-G_END_DECLS
-
-#endif /* __PK_BITFIELD_H */
-
diff --git a/lib/packagekit-glib/pk-catalog.c b/lib/packagekit-glib/pk-catalog.c
deleted file mode 100644
index e16be87..0000000
--- a/lib/packagekit-glib/pk-catalog.c
+++ /dev/null
@@ -1,431 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-package-list.h>
-#include <packagekit-glib/pk-package-ids.h>
-#include <packagekit-glib/pk-marshal.h>
-#include <packagekit-glib/pk-catalog.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-static void     pk_catalog_finalize	(GObject	*object);
-
-#define PK_CATALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_CATALOG, PkCatalogPrivate))
-
-struct PkCatalogPrivate
-{
-	GKeyFile		*file;
-	gchar			*distro_id;
-	const gchar		*type;
-	PkClient		*client;
-	PkPackageList		*list;
-	gboolean		 is_cancelled;
-};
-
-enum {
-	PK_CATALOG_PROGRESS,
-	PK_CATALOG_LAST_SIGNAL
-};
-
-static guint signals [PK_CATALOG_LAST_SIGNAL] = { 0 };
-
-G_DEFINE_TYPE (PkCatalog, pk_catalog, G_TYPE_OBJECT)
-#define PK_CATALOG_FILE_HEADER	"PackageKit Catalog"
-
-/**
- * pk_catalog_process_type_part:
- **/
-static gboolean
-pk_catalog_process_type_part (PkCatalog *catalog, const gchar *type, GPtrArray *array, const gchar *distro_id_part)
-{
-	gchar *data;
-	gchar **list;
-	gchar *key;
-	guint len;
-	guint i;
-
-	/* cancelled? */
-	if (catalog->priv->is_cancelled) {
-		egg_debug ("escaping as cancelled!");
-		return FALSE;
-	}
-
-	/* make key */
-	if (distro_id_part == NULL)
-		key = g_strdup (type);
-	else
-		key = g_strdup_printf ("%s(%s)", type, distro_id_part);
-	data = g_key_file_get_string (catalog->priv->file, PK_CATALOG_FILE_HEADER, key, NULL);
-	g_free (key);
-
-	/* we have no key of this name */
-	if (data == NULL)
-		return FALSE;
-
-	/* split using the three delimiters */
-	list = g_strsplit_set (data, ";, ", 0);
-
-	/* add to array */
-	len = g_strv_length (list);
-	for (i=0; i<len; i++) {
-		g_ptr_array_add (array, g_strdup (list[i]));
-	}
-	g_strfreev (list);
-	g_free (data);
-	return TRUE;
-}
-
-/**
- * pk_catalog_process_type:
- **/
-static gboolean
-pk_catalog_process_type (PkCatalog *catalog, const gchar *type)
-{
-	PkCatalogProgress mode = 0;
-	PkPackageList *list;
-	GPtrArray *array;
-	GError *error = NULL;
-	gchar **parts = NULL;
-	gchar *distro_id_part;
-	gchar **packages;
-	const gchar *package;
-	gboolean ret = TRUE;
-	guint i;
-
-	/* cancelled? */
-	if (catalog->priv->is_cancelled) {
-		egg_debug ("escaping as cancelled!");
-		return FALSE;
-	}
-
-	parts = g_strsplit (catalog->priv->distro_id, "-", 0);
-	array = g_ptr_array_new ();
-
-	/* no specifier */
-	pk_catalog_process_type_part (catalog, type, array, NULL);
-
-	/* distro */
-	pk_catalog_process_type_part (catalog, type, array, parts[0]);
-
-	/* distro-ver */
-	distro_id_part = g_strjoin ("-", parts[0], parts[1], NULL);
-	pk_catalog_process_type_part (catalog, type, array, distro_id_part);
-	g_free (distro_id_part);
-
-	/* distro-ver-arch */
-	pk_catalog_process_type_part (catalog, type, array, catalog->priv->distro_id);
-
-	/* find mode */
-	if (g_strcmp0 (type, "InstallPackages") == 0) {
-		mode = PK_CATALOG_PROGRESS_PACKAGES;
-	} else if (g_strcmp0 (type, "InstallFiles") == 0) {
-		mode = PK_CATALOG_PROGRESS_FILES;
-	} else if (g_strcmp0 (type, "InstallProvides") == 0) {
-		mode = PK_CATALOG_PROGRESS_PROVIDES;
-	}
-
-	/* do each entry */
-	for (i=0; i<array->len; i++) {
-		if (catalog->priv->is_cancelled) {
-			egg_debug ("escaping as cancelled!");
-			break;
-		}
-
-		/* reset */
-		ret = pk_client_reset (catalog->priv->client, &error);
-		if (!ret) {
-			egg_warning ("reset failed: %s", error->message);
-			g_error_free (error);
-			break;
-		}
-
-		/* get data */
-		package = (const gchar *) g_ptr_array_index (array, i);
-
-		/* tell the client what we are doing */
-		g_signal_emit (catalog, signals [PK_CATALOG_PROGRESS], 0, mode, package);
-
-		/* do the actions */
-		if (mode == PK_CATALOG_PROGRESS_PACKAGES) {
-			packages = pk_package_ids_from_id (package);
-			ret = pk_client_resolve (catalog->priv->client,
-						 pk_bitfield_from_enums (PK_FILTER_ENUM_NOT_INSTALLED, PK_FILTER_ENUM_NEWEST, -1),
-						 packages, &error);
-			g_strfreev (packages);
-		} else if (mode == PK_CATALOG_PROGRESS_FILES) {
-			ret = pk_client_search_file (catalog->priv->client,
-						     pk_bitfield_from_enums (PK_FILTER_ENUM_NOT_INSTALLED, PK_FILTER_ENUM_NEWEST, -1),
-						     package, &error);
-		} else if (mode == PK_CATALOG_PROGRESS_PROVIDES) {
-			ret = pk_client_what_provides (catalog->priv->client,
-						      pk_bitfield_from_enums (PK_FILTER_ENUM_NOT_INSTALLED, PK_FILTER_ENUM_NEWEST, -1),
-						      PK_PROVIDES_ENUM_ANY, package, &error);
-		}
-		if (!ret) {
-			egg_warning ("method failed: %s", error->message);
-			g_error_free (error);
-			break;
-		}
-
-		/* add to list any results */
-		list = pk_client_get_package_list (catalog->priv->client);
-		pk_obj_list_add_list (PK_OBJ_LIST(catalog->priv->list), PK_OBJ_LIST(list));
-		g_object_unref (list);
-	}
-
-	g_strfreev (parts);
-	g_ptr_array_foreach (array, (GFunc) g_free, NULL);
-	g_ptr_array_free (array, TRUE);
-	return ret;
-}
-
-/**
- * pk_catalog_process_file:
- **/
-static gboolean
-pk_catalog_process_file (PkCatalog *catalog, const gchar *filename)
-{
-	gboolean ret;
-	GError *error = NULL;
-
-	/* cancelled? */
-	if (catalog->priv->is_cancelled) {
-		egg_debug ("escaping as cancelled!");
-		return FALSE;
-	}
-
-	/* load all data */
-	ret = g_key_file_load_from_file (catalog->priv->file, filename, G_KEY_FILE_NONE, &error);
-	if (!ret) {
-		egg_warning ("cannot open file %s, %s", filename, error->message);
-		g_error_free (error);
-		return FALSE;
-	}
-
-	/* InstallPackages */
-	pk_catalog_process_type (catalog, "InstallPackages");
-
-	/* InstallFiles */
-	pk_catalog_process_type (catalog, "InstallFiles");
-
-	/* InstallProvides */
-	pk_catalog_process_type (catalog, "InstallProvides");
-
-	return TRUE;
-}
-
-/**
- * pk_catalog_cancel:
- **/
-gboolean
-pk_catalog_cancel (PkCatalog *catalog)
-{
-	gboolean ret;
-	GError *error = NULL;
-
-	if (catalog->priv->is_cancelled) {
-		egg_warning ("already cancelled");
-		return FALSE;
-	}
-	catalog->priv->is_cancelled = TRUE;
-
-	/* cancel whatever is in progress */
-	ret = pk_client_cancel (catalog->priv->client, &error);
-	if (!ret) {
-		egg_warning ("cancel failed: %s", error->message);
-		g_error_free (error);
-	}
-	return TRUE;
-}
-
-/**
- * pk_catalog_process_files:
- **/
-PkPackageList *
-pk_catalog_process_files (PkCatalog *catalog, gchar **filenames)
-{
-	guint len;
-	guint i;
-
-	/* process each file */
-	len = g_strv_length (filenames);
-	for (i=0; i<len; i++) {
-		if (catalog->priv->is_cancelled) {
-			egg_debug ("escaping as cancelled!");
-			break;
-		}
-		egg_debug ("filenames[%i]=%s", i, filenames[i]);
-		pk_catalog_process_file (catalog, filenames[i]);
-	}
-
-	g_object_ref (catalog->priv->list);
-	return catalog->priv->list;
-}
-
-/**
- * pk_catalog_class_init:
- * @klass: The PkCatalogClass
- **/
-static void
-pk_catalog_class_init (PkCatalogClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize = pk_catalog_finalize;
-	g_type_class_add_private (klass, sizeof (PkCatalogPrivate));
-	signals [PK_CATALOG_PROGRESS] =
-		g_signal_new ("progress",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      0, NULL, NULL, pk_marshal_VOID__UINT_STRING,
-			      G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_STRING);
-}
-
-/**
- * pk_catalog_init:
- * @catalog: This class instance
- **/
-static void
-pk_catalog_init (PkCatalog *catalog)
-{
-	catalog->priv = PK_CATALOG_GET_PRIVATE (catalog);
-	catalog->priv->is_cancelled = FALSE;
-	catalog->priv->file = g_key_file_new ();
-	catalog->priv->list = pk_package_list_new ();
-
-	/* name-version-arch */
-	catalog->priv->distro_id = pk_get_distro_id ();
-	if (catalog->priv->distro_id == NULL) {
-		egg_error ("no distro_id, your distro needs to implement this in pk-common.c!");
-	}
-
-	catalog->priv->client = pk_client_new ();
-	pk_client_set_use_buffer (catalog->priv->client, TRUE, NULL);
-	pk_client_set_synchronous (catalog->priv->client, TRUE, NULL);
-}
-
-/**
- * pk_catalog_finalize:
- * @object: The object to finalize
- **/
-static void
-pk_catalog_finalize (GObject *object)
-{
-	PkCatalog *catalog;
-
-	g_return_if_fail (PK_IS_CATALOG (object));
-
-	catalog = PK_CATALOG (object);
-
-	g_return_if_fail (catalog->priv != NULL);
-	g_key_file_free (catalog->priv->file);
-	g_free (catalog->priv->distro_id);
-	g_object_unref (catalog->priv->list);
-	g_object_unref (catalog->priv->client);
-
-	G_OBJECT_CLASS (pk_catalog_parent_class)->finalize (object);
-}
-
-/**
- * pk_catalog_new:
- *
- * Return value: a new PkCatalog object.
- **/
-PkCatalog *
-pk_catalog_new (void)
-{
-	PkCatalog *catalog;
-	catalog = g_object_new (PK_TYPE_CATALOG, NULL);
-	return PK_CATALOG (catalog);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-#include <packagekit-glib/pk-connection.h>
-
-void
-pk_catalog_test (EggTest *test)
-{
-	PkConnection *connection;
-	PkCatalog *catalog;
-	PkPackageList *list;
-	gboolean ret;
-	gchar **filenames;
-	gchar *path;
-	guint size;
-
-	if (!egg_test_start (test, "PkCatalog"))
-		return;
-
-	/* check to see if there is a daemon running */
-	connection = pk_connection_new ();
-	ret = pk_connection_valid (connection);
-	g_object_unref (connection);
-	if (!ret) {
-		egg_warning ("daemon is not running, skipping tests");
-		goto out;
-	}
-
-	/************************************************************/
-	egg_test_title (test, "get catalog");
-	catalog = pk_catalog_new ();
-	egg_test_assert (test, catalog != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "get test file");
-	path = egg_test_get_data_file ("test.catalog");
-	egg_test_assert (test, path != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "process the files getting non-null");
-	filenames = g_strsplit (path, " ", 0);
-	list = pk_catalog_process_files (catalog, filenames);
-	g_strfreev (filenames);
-	if (list != NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-	g_free (path);
-
-	/************************************************************/
-	egg_test_title (test, "have we got packages?");
-	size = pk_package_list_get_size (list);
-	if (size > 0)
-		egg_test_success (test, "%i packages", size);
-	else
-		egg_test_failed (test, NULL);
-	g_object_unref (list);
-	g_object_unref (catalog);
-out:
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-catalog.h b/lib/packagekit-glib/pk-catalog.h
deleted file mode 100644
index bd4c23f..0000000
--- a/lib/packagekit-glib/pk-catalog.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_CATALOG_H
-#define __PK_CATALOG_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-package-list.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_CATALOG		(pk_catalog_get_type ())
-#define PK_CATALOG(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_CATALOG, PkCatalog))
-#define PK_CATALOG_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_CATALOG, PkCatalogClass))
-#define PK_IS_CATALOG(o)	(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_CATALOG))
-#define PK_IS_CATALOG_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_CATALOG))
-#define PK_CATALOG_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_CATALOG, PkCatalogClass))
-#define PK_CATALOG_ERROR	(pk_catalog_error_quark ())
-#define PK_CATALOG_TYPE_ERROR	(pk_catalog_error_get_type ())
-
-typedef struct PkCatalogPrivate PkCatalogPrivate;
-
-typedef struct
-{
-	 GObject		 parent;
-	 PkCatalogPrivate	*priv;
-} PkCatalog;
-
-typedef struct
-{
-	GObjectClass	parent_class;
-} PkCatalogClass;
-
-typedef enum {
-	PK_CATALOG_PROGRESS_PACKAGES,
-	PK_CATALOG_PROGRESS_FILES,
-	PK_CATALOG_PROGRESS_PROVIDES,
-	PK_CATALOG_PROGRESS_LAST
-} PkCatalogProgress;
-
-GType		 pk_catalog_get_type		  	(void);
-PkCatalog	*pk_catalog_new				(void);
-PkPackageList	*pk_catalog_process_files		(PkCatalog		*catalog,
-							 gchar			**filenames);
-gboolean	 pk_catalog_cancel			(PkCatalog		*catalog);
-
-G_END_DECLS
-
-#endif /* __PK_CATALOG_H */
-
diff --git a/lib/packagekit-glib/pk-category-obj.c b/lib/packagekit-glib/pk-category-obj.c
deleted file mode 100644
index 19b4780..0000000
--- a/lib/packagekit-glib/pk-category-obj.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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 category.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-category-obj
- * @short_description: Functionality to create a category struct
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-category-obj.h>
-
-#include "egg-debug.h"
-
-/**
- * pk_category_obj_new:
- *
- * Creates a new #PkCategoryObj object with default values
- *
- * Return value: a new #PkCategoryObj object
- **/
-PkCategoryObj *
-pk_category_obj_new (void)
-{
-	PkCategoryObj *obj;
-	obj = g_new0 (PkCategoryObj, 1);
-	obj->parent_id = NULL;
-	obj->cat_id = NULL;
-	obj->name = NULL;
-	obj->summary = NULL;
-	obj->icon = NULL;
-
-	return obj;
-}
-
-/**
- * pk_category_obj_new_from_data:
- *
- * Creates a new #PkCategoryObj object with values.
- *
- * Return value: a new #PkCategoryObj object
- **/
-PkCategoryObj *
-pk_category_obj_new_from_data (const gchar *parent_id, const gchar *cat_id, const gchar *name,
-			       const gchar *summary, const gchar *icon)
-{
-	PkCategoryObj *obj = NULL;
-
-	/* create new object */
-	obj = pk_category_obj_new ();
-	obj->parent_id = g_strdup (parent_id);
-	obj->cat_id = g_strdup (cat_id);
-	obj->name = g_strdup (name);
-	obj->summary = g_strdup (summary);
-	obj->icon = g_strdup (icon);
-
-	return obj;
-}
-
-/**
- * pk_category_obj_copy:
- *
- * Return value: a new #PkCategoryObj object
- **/
-PkCategoryObj *
-pk_category_obj_copy (const PkCategoryObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_category_obj_new_from_data (obj->parent_id, obj->cat_id, obj->name, obj->summary, obj->icon);
-}
-
-/**
- * pk_category_obj_free:
- * @obj: the #PkCategoryObj object
- *
- * Return value: %TRUE if the #PkCategoryObj object was freed.
- **/
-gboolean
-pk_category_obj_free (PkCategoryObj *obj)
-{
-	if (obj == NULL)
-		return FALSE;
-	g_free (obj->parent_id);
-	g_free (obj->cat_id);
-	g_free (obj->name);
-	g_free (obj->summary);
-	g_free (obj->icon);
-	g_free (obj);
-	return TRUE;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_category_test (EggTest *test)
-{
-	gboolean ret;
-	PkCategoryObj *obj;
-
-	if (!egg_test_start (test, "PkCategoryObj"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "get an category object");
-	obj = pk_category_obj_new ();
-	egg_test_assert (test, obj != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test category");
-	ret = pk_category_obj_free (obj);
-	egg_test_assert (test, ret);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-category-obj.h b/lib/packagekit-glib/pk-category-obj.h
deleted file mode 100644
index cbc60d3..0000000
--- a/lib/packagekit-glib/pk-category-obj.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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 category.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_CATEGORY_H
-#define __PK_CATEGORY_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkCategoryObj:
- *
- * Cached object to represent category about the package.
- **/
-typedef struct
-{
-	gchar				*parent_id;
-	gchar				*cat_id;
-	gchar				*name;
-	gchar				*summary;
-	gchar				*icon;
-} PkCategoryObj;
-
-PkCategoryObj	*pk_category_obj_new			(void);
-PkCategoryObj	*pk_category_obj_copy			(const PkCategoryObj	*obj);
-PkCategoryObj	*pk_category_obj_new_from_data		(const gchar		*parent_id,
-							 const gchar		*cat_id,
-							 const gchar		*name,
-							 const gchar		*summary,
-							 const gchar		*icon);
-gboolean	 pk_category_obj_free			(PkCategoryObj		*obj);
-
-G_END_DECLS
-
-#endif /* __PK_CATEGORY_H */
diff --git a/lib/packagekit-glib/pk-client-pool.c b/lib/packagekit-glib/pk-client-pool.c
deleted file mode 100644
index 54fd7ea..0000000
--- a/lib/packagekit-glib/pk-client-pool.c
+++ /dev/null
@@ -1,401 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2009 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-client-pool
- * @short_description: A pool of clients that can be treated as one abstract client
- *
- * These provide a way to do many async methods without keeping track of each one --
- * all the destruction is handled transparently.
- */
-
-#include "config.h"
-
-#include <glib/gi18n.h>
-
-#include "egg-debug.h"
-
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-client-pool.h>
-
-static void     pk_client_pool_finalize	(GObject            *object);
-
-#define PK_CLIENT_POOL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_CLIENT_POOL, PkClientPoolPrivate))
-
-typedef struct {
-	gchar		*signal_name;
-	GCallback	 c_handler;
-	GObject		*object;
-} PkClientPoolObj;
-
-/**
- * PkClientPoolPrivate:
- *
- * Private #PkClientPool data
- **/
-struct _PkClientPoolPrivate
-{
-	GPtrArray		*client_array;
-	GPtrArray		*obj_array;
-};
-
-G_DEFINE_TYPE (PkClientPool, pk_client_pool, PK_TYPE_OBJ_LIST)
-
-/**
- * pk_client_pool_get_size:
- * @pool: the %PkClientPool object
- *
- * This returns the number of clients held in the pool
- *
- * Return value: the size of the pool
- **/
-guint
-pk_client_pool_get_size	(PkClientPool *pool)
-{
-	g_return_val_if_fail (PK_IS_CLIENT_POOL (pool), 0);
-	return pool->priv->client_array->len;
-}
-
-/**
- * pk_client_pool_remove:
- * @pool: the %PkClientPool object
- * @client: the %PkClient object to remove
- *
- * Removes a %PkClient instance that is not going to be run, or failed to be run.
- *
- * Return value: %TRUE if the client was removed.
- **/
-gboolean
-pk_client_pool_remove (PkClientPool *pool, PkClient *client)
-{
-	PkClientPoolObj *obj;
-	gboolean ret;
-	guint i;
-
-	g_return_val_if_fail (PK_IS_CLIENT_POOL (pool), FALSE);
-	g_return_val_if_fail (client != NULL, FALSE);
-
-	egg_debug ("client %p removed from pool", client);
-	ret = g_ptr_array_remove (pool->priv->client_array, client);
-	if (!ret) {
-		egg_warning ("failed to remove %p", client);
-		goto out;
-	}
-
-	/* disconnect all objects */
-	for (i=0; i<pool->priv->obj_array->len; i++) {
-		obj = g_ptr_array_index (pool->priv->obj_array, i);
-		g_signal_handlers_disconnect_by_func (client, obj->c_handler, obj->object);
-	}
-
-	/* unref object */
-	g_object_unref (client);
-out:
-	return ret;
-}
-
-/**
- * pk_client_pool_destroy_cb:
- **/
-static void
-pk_client_pool_destroy_cb (PkClient *client, PkClientPool *pool)
-{
-	pk_client_pool_remove (pool, client);
-}
-
-/**
- * pk_client_pool_create:
- * @pool: the %PkClientPool object
- *
- * This creates a %PkClient instance and puts it in the pool. It also connects
- * up and previously connected methods.
- *
- * Return value: a %PkClient instance, or %NULL for an error. You must free this using g_object_unref() when done.
- **/
-PkClient *
-pk_client_pool_create (PkClientPool *pool)
-{
-	PkClient *client;
-	PkClientPoolObj *obj;
-	guint i;
-
-	g_return_val_if_fail (PK_IS_CLIENT_POOL (pool), NULL);
-
-	client = pk_client_new ();
-
-	/* we unref the client on destroy */
-	g_signal_connect (client, "destroy",
-			  G_CALLBACK (pk_client_pool_destroy_cb), pool);
-
-	/* connect up all signals already added */
-	for (i=0; i<pool->priv->obj_array->len; i++) {
-		obj = g_ptr_array_index (pool->priv->obj_array, i);
-		egg_debug ("connecting up %s to client", obj->signal_name);
-		g_signal_connect (client, obj->signal_name, obj->c_handler, obj->object);
-	}
-
-	/* add to array */
-	g_ptr_array_add (pool->priv->client_array, g_object_ref (client));
-	egg_debug ("added %p to pool", client);
-
-	return client;
-}
-
-/**
- * pk_client_pool_find_obj:
- **/
-static PkClientPoolObj *
-pk_client_pool_find_obj (PkClientPool *pool, const gchar *signal_name)
-{
-	PkClientPoolObj *obj;
-	guint i;
-
-	/* disconnect on all objects */
-	for (i=0; i<pool->priv->obj_array->len; i++) {
-		obj = g_ptr_array_index (pool->priv->obj_array, i);
-		if (g_strcmp0 (obj->signal_name, signal_name) == 0)
-			goto out;
-	}
-
-	/* not found */
-	obj = NULL;
-out:
-	return obj;
-}
-
-/**
- * pk_client_pool_free_obj:
- **/
-static void
-pk_client_pool_free_obj (PkClientPoolObj *obj)
-{
-	/* only unref the object if it is valid */
-	if (obj->object != NULL)
-		g_object_unref (obj->object);
-	g_free (obj->signal_name);
-	g_free (obj);
-}
-
-/**
- * pk_client_pool_disconnect:
- * @pool: the %PkClientPool object
- * @signal_name: the signal name, e.g. "finished"
- *
- * This disconnects up a signal from all the clients already in the pool.
- *
- * Return value: %TRUE if the signal was found and removed
- **/
-gboolean
-pk_client_pool_disconnect (PkClientPool *pool, const gchar *signal_name)
-{
-	gboolean ret = TRUE;
-	PkClient *client;
-	PkClientPoolObj *obj;
-	guint i;
-
-	g_return_val_if_fail (PK_IS_CLIENT_POOL (pool), FALSE);
-	g_return_val_if_fail (signal_name != NULL, FALSE);
-
-	/* find signal name */
-	obj = pk_client_pool_find_obj (pool, signal_name);
-	if (obj == NULL) {
-		egg_warning ("failed to find signal name %s", signal_name);
-		ret = FALSE;
-		goto out;
-	}
-
-	egg_debug ("disconnected %s", signal_name);
-
-	/* disconnect on all objects */
-	for (i=0; i<pool->priv->client_array->len; i++) {
-		client = g_ptr_array_index (pool->priv->client_array, i);
-		g_signal_handlers_disconnect_by_func (client, obj->c_handler, obj->object);
-	}
-
-	/* remove obj so we don't apply it on new clients */
-	g_ptr_array_remove (pool->priv->client_array, obj);
-	pk_client_pool_free_obj (obj);
-
-out:
-	return ret;
-}
-
-/**
- * pk_client_pool_connect:
- * @pool: the %PkClientPool object
- * @signal_name: the signal name, e.g. "finished"
- * @c_handler: the %GCallback for the signal
- * @object: the object to pass to the handler
- *
- * This connects up a signal to all the clients already in the pool.
- *
- * Return value: %TRUE if the signal was setup
- **/
-gboolean
-pk_client_pool_connect (PkClientPool *pool, const gchar *signal_name, GCallback c_handler, GObject *object)
-{
-	PkClient *client;
-	PkClientPoolObj *obj;
-	guint i;
-	gboolean ret = TRUE;
-
-	g_return_val_if_fail (PK_IS_CLIENT_POOL (pool), FALSE);
-	g_return_val_if_fail (signal_name != NULL, FALSE);
-
-	/* check if signal has already been added */
-	obj = pk_client_pool_find_obj (pool, signal_name);
-	if (obj != NULL) {
-		egg_warning ("already added signal %s", signal_name);
-		ret = FALSE;
-		goto out;
-	}
-
-	egg_debug ("connected %s", signal_name);
-
-	/* add to existing clients */
-	for (i=0; i<pool->priv->client_array->len; i++) {
-		client = g_ptr_array_index (pool->priv->client_array, i);
-		g_signal_connect (client, signal_name, c_handler, object);
-	}
-
-	/* save so we can add to future clients */
-	obj = g_new0 (PkClientPoolObj, 1);
-	obj->signal_name = g_strdup (signal_name);
-	obj->c_handler = c_handler;
-	obj->object = NULL;
-	/* only ref the object if it is valid */
-	if (object != NULL)
-		obj->object = g_object_ref (object);
-	g_ptr_array_add (pool->priv->obj_array, obj);
-out:
-	return ret;
-}
-
-/**
- * pk_client_pool_class_init:
- * @klass: The PkClientPoolClass
- **/
-static void
-pk_client_pool_class_init (PkClientPoolClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize = pk_client_pool_finalize;
-	g_type_class_add_private (klass, sizeof (PkClientPoolPrivate));
-}
-
-/**
- * pk_client_pool_init:
- **/
-static void
-pk_client_pool_init (PkClientPool *pool)
-{
-	g_return_if_fail (pool != NULL);
-	g_return_if_fail (PK_IS_CLIENT_POOL (pool));
-
-	pool->priv = PK_CLIENT_POOL_GET_PRIVATE (pool);
-	pool->priv->client_array = g_ptr_array_new ();
-	pool->priv->obj_array = g_ptr_array_new ();
-}
-
-/**
- * pk_client_pool_finalize:
- * @object: The object to finalize
- **/
-static void
-pk_client_pool_finalize (GObject *object)
-{
-	PkClientPool *pool;
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_CLIENT_POOL (object));
-	pool = PK_CLIENT_POOL (object);
-	g_return_if_fail (pool->priv != NULL);
-
-	g_ptr_array_foreach (pool->priv->client_array, (GFunc) g_object_unref, NULL);
-	g_ptr_array_free (pool->priv->client_array, TRUE);
-	g_ptr_array_foreach (pool->priv->obj_array, (GFunc) pk_client_pool_free_obj, NULL);
-	g_ptr_array_free (pool->priv->obj_array, TRUE);
-
-	G_OBJECT_CLASS (pk_client_pool_parent_class)->finalize (object);
-}
-
-/**
- * pk_client_pool_new:
- *
- * Return value: a new PkClientPool object.
- **/
-PkClientPool *
-pk_client_pool_new (void)
-{
-	PkClientPool *pool;
-	pool = g_object_new (PK_TYPE_CLIENT_POOL, NULL);
-	return PK_CLIENT_POOL (pool);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_client_pool_test (EggTest *test)
-{
-	PkClientPool *pool;
-	PkClient *client;
-	guint size;
-
-	if (!egg_test_start (test, "PkClientPool"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "create");
-	pool = pk_client_pool_new ();
-	egg_test_assert (test, pool != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "make sure size is zero");
-	size = pk_client_pool_get_size (pool);
-	if (size == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "size: %i", size);
-
-	/************************************************************/
-	egg_test_title (test, "create entry");
-	client = pk_client_pool_create (pool);
-	g_object_unref (client);
-	egg_test_assert (test, (client != NULL));
-
-	/************************************************************/
-	egg_test_title (test, "make sure size is one");
-	size = pk_client_pool_get_size (pool);
-	if (size == 1)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "size: %i", size);
-
-	g_object_unref (pool);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-client-pool.h b/lib/packagekit-glib/pk-client-pool.h
deleted file mode 100644
index 0ead195..0000000
--- a/lib/packagekit-glib/pk-client-pool.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2009 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_CLIENT_POOL_H
-#define __PK_CLIENT_POOL_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-client.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_CLIENT_POOL		(pk_client_pool_get_type ())
-#define PK_CLIENT_POOL(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_CLIENT_POOL, PkClientPool))
-#define PK_CLIENT_POOL_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_CLIENT_POOL, PkClientPoolClass))
-#define PK_IS_CLIENT_POOL(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_CLIENT_POOL))
-#define PK_IS_CLIENT_POOL_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_CLIENT_POOL))
-#define PK_CLIENT_POOL_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_CLIENT_POOL, PkClientPoolClass))
-
-typedef struct _PkClientPoolPrivate	PkClientPoolPrivate;
-typedef struct _PkClientPool		PkClientPool;
-typedef struct _PkClientPoolClass	PkClientPoolClass;
-
-struct _PkClientPool
-{
-	 PkObjList		 parent;
-	 PkClientPoolPrivate	*priv;
-};
-
-struct _PkClientPoolClass
-{
-	PkObjListClass		parent_class;
-	/* Padding for future expansion */
-	void (*_pk_reserved1) (void);
-	void (*_pk_reserved2) (void);
-	void (*_pk_reserved3) (void);
-	void (*_pk_reserved4) (void);
-	void (*_pk_reserved5) (void);
-};
-
-GType			 pk_client_pool_get_type	(void);
-PkClientPool		*pk_client_pool_new		(void);
-guint			 pk_client_pool_get_size	(PkClientPool	*pool);
-PkClient		*pk_client_pool_create		(PkClientPool	*pool);
-gboolean		 pk_client_pool_remove		(PkClientPool	*pool,
-							 PkClient	*client);
-gboolean		 pk_client_pool_connect		(PkClientPool	*pool,
-							 const gchar	*signal_name,
-							 GCallback	 c_handler,
-							 GObject	*object);
-gboolean		 pk_client_pool_disconnect	(PkClientPool	*pool,
-							 const gchar	*signal_name);
-
-G_END_DECLS
-
-#endif /* __PK_CLIENT_POOL_H */
-
diff --git a/lib/packagekit-glib/pk-client.c b/lib/packagekit-glib/pk-client.c
deleted file mode 100644
index 1e0124b..0000000
--- a/lib/packagekit-glib/pk-client.c
+++ /dev/null
@@ -1,5652 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-client
- * @short_description: GObject class for PackageKit client access
- *
- * A nice GObject to use for accessing PackageKit asynchronously
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <string.h>
-#include <sys/types.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <glib/gi18n.h>
-#include <glib/gprintf.h>
-#include <dbus/dbus-glib.h>
-
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-bitfield.h>
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-connection.h>
-#include <packagekit-glib/pk-package-id.h>
-#include <packagekit-glib/pk-package-ids.h>
-#include <packagekit-glib/pk-package-list.h>
-#include <packagekit-glib/pk-marshal.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-control.h>
-#include <packagekit-glib/pk-update-detail-obj.h>
-#include <packagekit-glib/pk-details-obj.h>
-#include <packagekit-glib/pk-transaction-obj.h>
-#include <packagekit-glib/pk-category-obj.h>
-#include <packagekit-glib/pk-distro-upgrade-obj.h>
-#include <packagekit-glib/pk-require-restart-obj.h>
-#include <packagekit-glib/pk-obj-list.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-static void     pk_client_finalize		(GObject	*object);
-static gboolean	pk_client_disconnect_proxy	(PkClient	*client);
-
-#define PK_CLIENT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_CLIENT, PkClientPrivate))
-
-/**
- * PkClientPrivate:
- *
- * Private #PkClient data
- **/
-struct _PkClientPrivate
-{
-	DBusGConnection		*connection;
-	DBusGProxy		*proxy;
-	GMainLoop		*loop;
-	gboolean		 is_finished;
-	gboolean		 is_finishing;
-	gboolean		 use_buffer;
-	gboolean		 synchronous;
-	gchar			*tid;
-	PkControl		*control;
-	PkObjList		*category_list;
-	PkObjList		*distro_upgrade_list;
-	PkObjList		*transaction_list;
-	PkObjList		*require_restart_list;
-	PkPackageList		*package_list;
-	PkConnection		*pconnection;
-	gulong			 pconnection_signal_id;
-	PkRestartEnum		 require_restart;
-	PkStatusEnum		 status;
-	PkRoleEnum		 role;
-	gboolean		 cached_force;
-	gboolean		 cached_allow_deps;
-	gboolean		 cached_autoremove;
-	gboolean		 cached_only_trusted;
-	gchar			*cached_package_id;
-	gchar			**cached_package_ids;
-	gchar			*cached_transaction_id;
-	gchar			*cached_key_id;
-	gchar			*cached_full_path;
-	gchar			**cached_full_paths;
-	gchar			*cached_search;
-	gchar			*cached_directory;
-	PkProvidesEnum		 cached_provides;
-	PkBitfield		 cached_filters;
-	gint			 timeout;
-	guint			 timeout_id;
-	PkExitEnum		 exit;
-	GError			*error;
-};
-
-enum {
-	SIGNAL_DETAILS,
-	SIGNAL_ERROR_CODE,
-	SIGNAL_FILES,
-	SIGNAL_FINISHED,
-	SIGNAL_PACKAGE,
-	SIGNAL_PROGRESS_CHANGED,
-	SIGNAL_REQUIRE_RESTART,
-	SIGNAL_MESSAGE,
-	SIGNAL_TRANSACTION,
-	SIGNAL_DISTRO_UPGRADE,
-	SIGNAL_STATUS_CHANGED,
-	SIGNAL_UPDATE_DETAIL,
-	SIGNAL_REPO_SIGNATURE_REQUIRED,
-	SIGNAL_EULA_REQUIRED,
-	SIGNAL_CALLER_ACTIVE_CHANGED,
-	SIGNAL_REPO_DETAIL,
-	SIGNAL_ALLOW_CANCEL,
-	SIGNAL_CATEGORY,
-	SIGNAL_DESTROY,
-	SIGNAL_MEDIA_CHANGE_REQUIRED,
-	SIGNAL_LAST
-};
-
-enum {
-	PROP_0,
-	PROP_ROLE,
-	PROP_STATUS,
-	PROP_EXIT,
-	PROP_LAST,
-};
-
-static guint signals [SIGNAL_LAST] = { 0 };
-
-G_DEFINE_TYPE (PkClient, pk_client, G_TYPE_OBJECT)
-
-/**
- * pk_client_error_quark:
- *
- * Return value: Our personal error quark.
- **/
-GQuark
-pk_client_error_quark (void)
-{
-	static GQuark quark = 0;
-	if (!quark)
-		quark = g_quark_from_static_string ("pk_client_error");
-	return quark;
-}
-
-/**
- * pk_client_error_get_type:
- **/
-#define ENUM_ENTRY(NAME, DESC) { NAME, "" #NAME "", DESC }
-GType
-pk_client_error_get_type (void)
-{
-	static GType etype = 0;
-
-	if (etype == 0) {
-		static const GEnumValue values[] =
-		{
-			ENUM_ENTRY (PK_CLIENT_ERROR_FAILED, "Failed"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_FAILED_AUTH, "FailedAuth"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_NO_TID, "NoTid"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_ALREADY_TID, "AlreadyTid"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_ROLE_UNKNOWN, "RoleUnknown"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_CANNOT_START_DAEMON, "CannotStartDaemon"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_INVALID_INPUT, "InvalidInput"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_INVALID_FILE, "InvalidFile"),
-			ENUM_ENTRY (PK_CLIENT_ERROR_NOT_SUPPORTED, "NotSupported"),
-			{ 0, NULL, NULL }
-		};
-		etype = g_enum_register_static ("PkClientError", values);
-	}
-	return etype;
-}
-
-/******************************************************************************
- *                    LOCAL FUNCTIONS
- ******************************************************************************/
-
-/**
- * pk_client_error_fixup:
- * @error: a %GError
- **/
-static GError *
-pk_client_error_fixup (GError *error_local)
-{
-	GError *error;
-	const gchar *name;
-
-	g_return_val_if_fail (error_local != NULL, NULL);
-
-	/* PolicyKit failure */
-	if (g_str_has_prefix (error_local->message, "org.freedesktop.packagekit.")) {
-		egg_debug ("fixing up code for Policykit auth failure");
-		error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED_AUTH, "PolicyKit authorization failure");
-		goto out;
-	}
-
-	/* new default error with correct domain and code */
-	error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "%s", error_local->message);
-
-	/* get some proper debugging */
-	if (error_local->domain == DBUS_GERROR &&
-	    error_local->code == DBUS_GERROR_REMOTE_EXCEPTION) {
-		/* use one of our local codes */
-		name = dbus_g_error_get_name (error_local);
-
-		/* trim common prefix */
-		if (g_str_has_prefix (name, "org.freedesktop.PackageKit.Transaction."))
-			name = &name[39];
-
-		/* try to get a better error */
-		if (g_str_has_prefix (name, "PermissionDenied") ||
-		    g_str_has_prefix (name, "RefusedByPolicy"))
-			error->code = PK_CLIENT_ERROR_FAILED_AUTH;
-		else if (g_str_has_prefix (name, "PackageIdInvalid") ||
-			 g_str_has_prefix (name, "SearchInvalid") ||
-			 g_str_has_prefix (name, "FilterInvalid") ||
-			 g_str_has_prefix (name, "InvalidProvide") ||
-			 g_str_has_prefix (name, "InputInvalid"))
-			error->code = PK_CLIENT_ERROR_INVALID_INPUT;
-		else if (g_str_has_prefix (name, "PackInvalid") ||
-			 g_str_has_prefix (name, "NoSuchFile") ||
-			 g_str_has_prefix (name, "NoSuchDirectory"))
-			error->code = PK_CLIENT_ERROR_INVALID_FILE;
-		else if (g_str_has_prefix (name, "NotSupported"))
-			error->code = PK_CLIENT_ERROR_NOT_SUPPORTED;
-	}
-out:
-	return error;
-}
-
-/**
- * pk_client_set_only_trusted:
- * @client: a valid #PkClient instance
- * @only_trusted: only operate on trusted packages
- *
- * Set the trusted mode. This is useful when doing pk_client_requeue()
- *
- * Return value: %TRUE if the mode was set correctly
- **/
-gboolean
-pk_client_set_only_trusted (PkClient *client, gboolean only_trusted)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (client->priv->tid != NULL, FALSE);
-
-	client->priv->cached_only_trusted = only_trusted;
-
-	return TRUE;
-}
-
-/**
- * pk_client_get_tid:
- * @client: a valid #PkClient instance
- *
- * The %tid is unique for this transaction.
- *
- * Return value: The transaction_id we are using for this client, or %NULL
- **/
-gchar *
-pk_client_get_tid (PkClient *client)
-{
-	if (client->priv->tid == NULL)
-		return NULL;
-	return g_strdup (client->priv->tid);
-}
-
-/**
- * pk_client_set_use_buffer:
- * @client: a valid #PkClient instance
- * @use_buffer: if we should use the package buffer
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * If the package buffer is enabled then after the transaction has completed
- * then the package list can be retrieved in one go, rather than processing
- * each package request async.
- * If this is not set true explicitly, then pk_client_get_package_list
- * will always return zero items.
- *
- * This is not forced on as there may be significant overhead if the list
- * contains many hundreds of items.
- *
- * Return value: %TRUE if the package buffer was enabled
- **/
-gboolean
-pk_client_set_use_buffer (PkClient *client, gboolean use_buffer, GError **error)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* are we doing this without any need? */
-	if (client->priv->use_buffer) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "already set use_buffer!");
-		return FALSE;
-	}
-
-	client->priv->use_buffer = use_buffer;
-	return TRUE;
-}
-
-/**
- * pk_client_set_synchronous:
- * @client: a valid #PkClient instance
- * @synchronous: if we should do the method synchronous
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * A synchronous mode allows us to listen in all transactions.
- *
- * Return value: %TRUE if the synchronous mode was enabled
- **/
-gboolean
-pk_client_set_synchronous (PkClient *client, gboolean synchronous, GError **error)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* are we doing this without any need? */
-	if ((client->priv->synchronous && synchronous) ||
-	    (!client->priv->synchronous && !synchronous)) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "already synchronous : %i!", synchronous);
-		return FALSE;
-	}
-
-	client->priv->synchronous = synchronous;
-	return TRUE;
-}
-
-/**
- * pk_client_set_timeout:
- * @client: a valid #PkClient instance
- * @timeout: the timeout in milliseconds, or -1 for disabled
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * A synchronous mode allows us to listen in all transactions.
- *
- * Return value: %TRUE if the timeout mode was set
- **/
-gboolean
-pk_client_set_timeout (PkClient *client, gint timeout, GError **error)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* are we doing this again without reset? */
-	if (client->priv->timeout != -1) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "already set timeout to %i!", client->priv->timeout);
-		return FALSE;
-	}
-
-	client->priv->timeout = timeout;
-	return TRUE;
-}
-
-/**
- * pk_client_get_use_buffer:
- * @client: a valid #PkClient instance
- *
- * Are we using a client side package buffer?
- *
- * Return value: %TRUE if the package buffer is enabled
- **/
-gboolean
-pk_client_get_use_buffer (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-
-	return client->priv->use_buffer;
-}
-
-/**
- * pk_client_get_require_restart:
- * @client: a valid #PkClient instance
- *
- * This method returns the 'worst' restart of all the transactions.
- * It is needed as multiple sub-transactions may emit require-restart with
- * different values, and we always want to get the most invasive of all.
- *
- * For instance, if a transaction emits RequireRestart(system) and then
- * RequireRestart(session) then pk_client_get_require_restart will return
- * system as a session restart is implied with a system restart.
- *
- * Return value: a #PkRestartEnum value, e.g. PK_RESTART_ENUM_SYSTEM
- **/
-PkRestartEnum
-pk_client_get_require_restart (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-
-	return client->priv->require_restart;
-}
-
-/**
- * pk_client_get_require_restart_list:
- * @client: a valid #PkClient instance
- *
- * This method allows a client program to discover what packages
- * caused different require restarts.
- *
- * Return value: a #PkObjList list of #PkRequireRestartObj's or %NULL if not found or invalid
- **/
-PkObjList *
-pk_client_get_require_restart_list (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-
-	if (!client->priv->use_buffer)
-		return NULL;
-	return g_object_ref (client->priv->require_restart_list);
-}
-
-/**
- * pk_client_get_package_list:
- * @client: a valid #PkClient instance
- *
- * We do not provide access to the internal package list (as it could be being
- * updated) so provide a way to get access to objects here.
- *
- * Return value: The #PkPackageList or %NULL if not found or invalid
- **/
-PkPackageList *
-pk_client_get_package_list (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), NULL);
-	if (!client->priv->use_buffer)
-		return NULL;
-	return g_object_ref (client->priv->package_list);
-}
-
-/**
- * pk_client_get_category_list:
- * @client: a valid #PkClient instance
- *
- * Return the cached category list
- *
- * Return value: The #PkObjList of #PkCategoryObj's or %NULL if invalid
- **/
-PkObjList *
-pk_client_get_category_list (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), NULL);
-	if (!client->priv->use_buffer)
-		return NULL;
-	return g_object_ref (client->priv->category_list);
-}
-
-/**
- * pk_client_get_distro_upgrade_list:
- * @client: a valid #PkClient instance
- *
- * Return the cached distro upgrades list
- *
- * Return value: The #PkObjList of #PkDistroUpgradeObj's or %NULL if invalid
- **/
-PkObjList *
-pk_client_get_distro_upgrade_list (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), NULL);
-	if (!client->priv->use_buffer)
-		return NULL;
-	return g_object_ref (client->priv->distro_upgrade_list);
-}
-
-/**
- * pk_client_get_transaction_list:
- * @client: a valid #PkClient instance
- *
- * Return the cached transactions list
- *
- * Return value: The #PkObjList of cached objects or %NULL if invalid
- **/
-PkObjList *
-pk_client_get_transaction_list (PkClient *client)
-{
-	g_return_val_if_fail (PK_IS_CLIENT (client), NULL);
-	if (!client->priv->use_buffer)
-		return NULL;
-	return g_object_ref (client->priv->transaction_list);
-}
-
-/**
- * pk_client_destroy_cb:
- */
-static void
-pk_client_destroy_cb (DBusGProxy *proxy, PkClient *client)
-{
-	gboolean ret;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	/* exit our private loop if it's running */
-	ret = g_main_loop_is_running (client->priv->loop);
-	if (ret && client->priv->synchronous) {
-		egg_warning ("quitting loop due to transaction being destroyed");
-		g_main_loop_quit (client->priv->loop);
-	}
-
-	/* ref in case we unref the PkClient in ::destroy */
-	g_object_ref (client);
-
-	egg_debug ("emit destroy %s", client->priv->tid);
-	g_signal_emit (client, signals [SIGNAL_DESTROY], 0);
-
-	/* unref what we previously ref'd */
-	g_object_unref (client);
-}
-
-/**
- * pk_client_finished_cb:
- */
-static void
-pk_client_finished_cb (DBusGProxy *proxy, const gchar *exit_text, guint runtime, PkClient *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	/* ref in case we unref the PkClient in ::finished */
-	g_object_ref (client);
-
-	/* stop the timeout timer if running */
-	if (client->priv->timeout_id != 0) {
-		g_source_remove (client->priv->timeout_id);
-		client->priv->timeout_id = 0;
-	}
-
-	client->priv->exit = pk_exit_enum_from_text (exit_text);
-	egg_debug ("emit finished %s, %i", exit_text, runtime);
-
-	/* only this instance is finished, and do it before the signal so we can reset */
-	client->priv->is_finished = TRUE;
-
-	/* we are finishing, so we can detect when we try to do insane things
-	 * in the ::Finished() handler */
-	client->priv->is_finishing = TRUE;
-
-	g_signal_emit (client, signals [SIGNAL_FINISHED], 0, client->priv->exit, runtime);
-
-	/* done callback */
-	client->priv->is_finishing = FALSE;
-
-	/* exit our private loop */
-	if (client->priv->synchronous) {
-		if (client->priv->exit != PK_EXIT_ENUM_SUCCESS)
-			client->priv->error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED,
-							   "failed: %s", exit_text);
-		g_main_loop_quit (client->priv->loop);
-	}
-
-	/* unref what we previously ref'd */
-	g_object_unref (client);
-}
-
-/**
- * pk_client_progress_changed_cb:
- */
-static void
-pk_client_progress_changed_cb (DBusGProxy *proxy, guint percentage, guint subpercentage,
-			       guint elapsed, guint remaining, PkClient *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit progress-changed %i, %i, %i, %i", percentage, subpercentage, elapsed, remaining);
-	g_signal_emit (client , signals [SIGNAL_PROGRESS_CHANGED], 0,
-		       percentage, subpercentage, elapsed, remaining);
-}
-
-/**
- * pk_client_change_status:
- */
-static void
-pk_client_change_status (PkClient *client, PkStatusEnum status)
-{
-	egg_debug ("emit status-changed %s", pk_status_enum_to_text (status));
-	g_signal_emit (client , signals [SIGNAL_STATUS_CHANGED], 0, status);
-	client->priv->status = status;
-}
-
-/**
- * pk_client_status_changed_cb:
- */
-static void
-pk_client_status_changed_cb (DBusGProxy *proxy, const gchar *status_text, PkClient *client)
-{
-	PkStatusEnum status;
-
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	status = pk_status_enum_from_text (status_text);
-	pk_client_change_status (client, status);
-}
-
-/**
- * pk_client_package_cb:
- */
-static void
-pk_client_package_cb (DBusGProxy   *proxy,
-		      const gchar  *info_text,
-		      const gchar  *package_id,
-		      const gchar  *summary,
-		      PkClient     *client)
-{
-	PkInfoEnum info;
-	PkPackageId *id;
-	PkPackageObj *obj;
-
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	info = pk_info_enum_from_text (info_text);
-	id = pk_package_id_new_from_string (package_id);
-	obj = pk_package_obj_new (info, id, summary);
-
-	egg_debug ("emit package %s, %s, %s", info_text, package_id, summary);
-	g_signal_emit (client , signals [SIGNAL_PACKAGE], 0, obj);
-
-	/* cache */
-	if (client->priv->use_buffer || client->priv->synchronous)
-		pk_obj_list_add (PK_OBJ_LIST(client->priv->package_list), obj);
-	pk_package_id_free (id);
-	pk_package_obj_free (obj);
-}
-
-/**
- * pk_client_transaction_cb:
- */
-static void
-pk_client_transaction_cb (DBusGProxy *proxy, const gchar *old_tid, const gchar *timespec,
-			  gboolean succeeded, const gchar *role_text, guint duration,
-			  const gchar *data, guint uid, const gchar *cmdline, PkClient *client)
-{
-	PkTransactionObj *obj;
-	PkRoleEnum role;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	role = pk_role_enum_from_text (role_text);
-	obj = pk_transaction_obj_new_from_data (old_tid, timespec, succeeded, role, duration, data, uid, cmdline);
-	egg_debug ("emitting transaction %s, %s, %i, %s, %ims, %s, %i, %s", old_tid, timespec,
-		  succeeded, role_text, duration, data, uid, cmdline);
-	g_signal_emit (client, signals [SIGNAL_TRANSACTION], 0, obj);
-
-	/* cache */
-	if (client->priv->use_buffer || client->priv->synchronous)
-		pk_obj_list_add (client->priv->transaction_list, obj);
-
-	pk_transaction_obj_free (obj);
-}
-
-/**
- * pk_client_distro_upgrade_cb:
- */
-static void
-pk_client_distro_upgrade_cb (DBusGProxy *proxy, const gchar *type_text, const gchar *name,
-			     const gchar *summary, PkClient *client)
-{
-	PkUpdateStateEnum type;
-	PkDistroUpgradeObj *obj;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	type = pk_update_state_enum_from_text (type_text);
-	obj = pk_distro_upgrade_obj_new_from_data  (type, name, summary);
-	egg_debug ("emitting distro_upgrade %s, %s, %s", type_text, name, summary);
-	g_signal_emit (client, signals [SIGNAL_DISTRO_UPGRADE], 0, obj);
-
-	/* cache */
-	if (client->priv->use_buffer || client->priv->synchronous)
-		pk_obj_list_add (client->priv->distro_upgrade_list, obj);
-
-	pk_distro_upgrade_obj_free (obj);
-}
-
-/**
- * pk_client_update_detail_cb:
- */
-static void
-pk_client_update_detail_cb (DBusGProxy  *proxy, const gchar *package_id, const gchar *updates,
-			    const gchar *obsoletes, const gchar *vendor_url, const gchar *bugzilla_url,
-			    const gchar *cve_url, const gchar *restart_text, const gchar *update_text,
-			    const gchar *changelog, const gchar *state_text, const gchar *issued_text,
-			    const gchar *updated_text, PkClient *client)
-{
-	PkRestartEnum restart;
-	PkUpdateDetailObj *detail;
-	PkPackageId *id;
-	GDate *issued;
-	GDate *updated;
-	PkUpdateStateEnum state;
-
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit update-detail %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s",
-		  package_id, updates, obsoletes, vendor_url, bugzilla_url,
-		  cve_url, restart_text, update_text, changelog,
-		  state_text, issued_text, updated_text);
-
-	id = pk_package_id_new_from_string (package_id);
-	restart = pk_restart_enum_from_text (restart_text);
-	state = pk_update_state_enum_from_text (state_text);
-	issued = pk_iso8601_to_date (issued_text);
-	updated = pk_iso8601_to_date (updated_text);
-
-	detail = pk_update_detail_obj_new_from_data (id, updates, obsoletes, vendor_url,
-						     bugzilla_url, cve_url, restart,
-						     update_text, changelog, state,
-						     issued, updated);
-	g_signal_emit (client, signals [SIGNAL_UPDATE_DETAIL], 0, detail);
-
-	if (issued != NULL)
-		g_date_free (issued);
-	if (updated != NULL)
-		g_date_free (updated);
-	pk_package_id_free (id);
-	pk_update_detail_obj_free (detail);
-}
-
-/**
- * pk_client_category_cb:
- */
-static void
-pk_client_category_cb (DBusGProxy  *proxy, const gchar *parent_id, const gchar *cat_id,
-		       const gchar *name, const gchar *summary, const gchar *icon, PkClient *client)
-{
-	PkCategoryObj *category;
-
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit category %s, %s, %s, %s, %s", parent_id, cat_id, name, summary, icon);
-
-	category = pk_category_obj_new_from_data (parent_id, cat_id, name, summary, icon);
-	g_signal_emit (client, signals [SIGNAL_CATEGORY], 0, category);
-
-	/* cache */
-	if (client->priv->use_buffer || client->priv->synchronous)
-		pk_obj_list_add (client->priv->category_list, category);
-
-	pk_category_obj_free (category);
-}
-
-/**
- * pk_client_details_cb:
- */
-static void
-pk_client_details_cb (DBusGProxy *proxy, const gchar *package_id, const gchar *license,
-		      const gchar *group_text, const gchar *description, const gchar *url,
-		      guint64 size, PkClient *client)
-{
-	PkGroupEnum group;
-	PkDetailsObj *details;
-	PkPackageId *id;
-
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	group = pk_group_enum_from_text (group_text);
-	id = pk_package_id_new_from_string (package_id);
-
-	egg_debug ("emit details %s, %s, %s, %s, %s, %ld",
-		  package_id, license, group_text, description, url, (long int) size);
-
-	details = pk_details_obj_new_from_data (id, license, group, description, url, size);
-	g_signal_emit (client, signals [SIGNAL_DETAILS], 0, details);
-
-	pk_package_id_free (id);
-	pk_details_obj_free (details);
-}
-
-/**
- * pk_client_file_copy:
- */
-static gboolean
-pk_client_file_copy (const gchar *filename, const gchar *directory)
-{
-	gboolean ret;
-	GError *error = NULL;
-	gchar *command;
-
-	/* TODO: use GIO when we have a hard dep on it */
-	command = g_strdup_printf ("cp \"%s\" \"%s\"", filename, directory);
-	egg_debug ("command: %s", command);
-	ret = g_spawn_command_line_sync (command, NULL, NULL, NULL, &error);
-	if (!ret) {
-		egg_warning ("failed to copy: %s", error->message);
-		g_error_free (error);
-	}
-	g_free (command);
-	return ret;
-}
-
-/**
- * pk_client_files_cb:
- */
-static void
-pk_client_files_cb (DBusGProxy *proxy, const gchar *package_id, const gchar *filelist, PkClient *client)
-{
-	guint i;
-	guint length;
-	gchar **split;
-
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit files %s, <lots of files>", package_id);
-	g_signal_emit (client , signals [SIGNAL_FILES], 0, package_id, filelist);
-
-	/* we are a callback from DownloadPackages */
-	if (client->priv->role == PK_ROLE_ENUM_DOWNLOAD_PACKAGES) {
-		split = g_strsplit (filelist, ";", -1);
-		length = g_strv_length (split);
-		for (i=0; i<length; i++)
-			pk_client_file_copy (split[i], client->priv->cached_directory);
-		g_strfreev (split);
-	}
-}
-
-/**
- * pk_client_repo_signature_required_cb:
- **/
-static void
-pk_client_repo_signature_required_cb (DBusGProxy *proxy, const gchar *package_id, const gchar *repository_name,
-				      const gchar *key_url, const gchar *key_userid, const gchar *key_id,
-				      const gchar *key_fingerprint, const gchar *key_timestamp,
-				      const gchar *type_text, PkClient *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit repo-signature-required %s, %s, %s, %s, %s, %s, %s, %s",
-		  package_id, repository_name, key_url, key_userid,
-		  key_id, key_fingerprint, key_timestamp, type_text);
-
-	g_signal_emit (client, signals [SIGNAL_REPO_SIGNATURE_REQUIRED], 0,
-		       package_id, repository_name, key_url, key_userid, key_id, key_fingerprint, key_timestamp, type_text);
-}
-
-/**
- * pk_client_eula_required_cb:
- **/
-static void
-pk_client_eula_required_cb (DBusGProxy *proxy, const gchar *eula_id, const gchar *package_id,
-			    const gchar *vendor_name, const gchar *license_agreement, PkClient *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit eula-required %s, %s, %s, %s",
-		  eula_id, package_id, vendor_name, license_agreement);
-
-	g_signal_emit (client, signals [SIGNAL_EULA_REQUIRED], 0,
-		       eula_id, package_id, vendor_name, license_agreement);
-}
-
-/**
- * pk_client_media_change_required_cb:
- **/
-static void
-pk_client_media_change_required_cb (DBusGProxy *proxy,
-				    const gchar *media_type_text,
-				    const gchar *media_id,
-				    const gchar *media_text,
-				    PkClient *client)
-{
-	PkMediaTypeEnum media_type;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	media_type = pk_media_type_enum_from_text (media_type_text);
-	egg_debug ("emit media-change-required %s, %s, %s",
-		   media_type_text, media_id, media_text);
-	g_signal_emit (client, signals [SIGNAL_MEDIA_CHANGE_REQUIRED], 0,
-		       media_type, media_id, media_text);
-}
-
-/**
- * pk_client_repo_detail_cb:
- **/
-static void
-pk_client_repo_detail_cb (DBusGProxy *proxy, const gchar *repo_id,
-			  const gchar *description, gboolean enabled, PkClient *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit repo-detail %s, %s, %i", repo_id, description, enabled);
-	g_signal_emit (client, signals [SIGNAL_REPO_DETAIL], 0, repo_id, description, enabled);
-}
-
-/**
- * pk_client_error_code_cb:
- */
-static void
-pk_client_error_code_cb (DBusGProxy  *proxy,
-			 const gchar *code_text,
-			 const gchar *details,
-			 PkClient    *client)
-{
-	PkErrorCodeEnum code;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	code = pk_error_enum_from_text (code_text);
-	egg_debug ("emit error-code %s, %s", pk_error_enum_to_text (code), details);
-	g_signal_emit (client , signals [SIGNAL_ERROR_CODE], 0, code, details);
-}
-
-/**
- * pk_client_allow_cancel_cb:
- */
-static void
-pk_client_allow_cancel_cb (DBusGProxy *proxy, gboolean allow_cancel, PkClient *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit allow-cancel %i", allow_cancel);
-	g_signal_emit (client , signals [SIGNAL_ALLOW_CANCEL], 0, allow_cancel);
-}
-
-/**
- * pk_client_get_allow_cancel:
- * @client: a valid #PkClient instance
- * @allow_cancel: %TRUE if we are able to cancel the transaction
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Should we be allowed to cancel this transaction?
- * The tid should have been set with pk_client_set_tid() if this is being done
- * on a foreign object.
- *
- * Return value: %TRUE if the daemon serviced the request
- */
-gboolean
-pk_client_get_allow_cancel (PkClient *client, gboolean *allow_cancel, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (client->priv->tid != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetAllowCancel", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_BOOLEAN, allow_cancel,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_caller_active_changed_cb:
- */
-static void
-pk_client_caller_active_changed_cb (DBusGProxy  *proxy,
-				    gboolean     is_active,
-				    PkClient    *client)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	egg_debug ("emit caller-active-changed %i", is_active);
-	g_signal_emit (client , signals [SIGNAL_CALLER_ACTIVE_CHANGED], 0, is_active);
-}
-
-/**
- * pk_client_require_restart_cb:
- */
-static void
-pk_client_require_restart_cb (DBusGProxy  *proxy,
-			      const gchar *restart_text,
-			      const gchar *package_id,
-			      PkClient    *client)
-{
-	PkRestartEnum restart;
-	PkPackageId *id;
-	PkRequireRestartObj *obj;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	restart = pk_restart_enum_from_text (restart_text);
-	id = pk_package_id_new_from_string (package_id);
-	obj = pk_require_restart_obj_new_from_data (restart, id);
-
-	/* cache */
-	if (client->priv->use_buffer || client->priv->synchronous)
-		pk_obj_list_add (client->priv->require_restart_list, obj);
-
-	egg_debug ("emit require-restart %s, %s", pk_restart_enum_to_text (restart), package_id);
-	g_signal_emit (client , signals [SIGNAL_REQUIRE_RESTART], 0, obj);
-	if (restart > client->priv->require_restart) {
-		client->priv->require_restart = restart;
-		egg_debug ("restart status now %s", pk_restart_enum_to_text (restart));
-	}
-	pk_package_id_free (id);
-	pk_require_restart_obj_free (obj);
-}
-
-/**
- * pk_client_message_cb:
- */
-static void
-pk_client_message_cb (DBusGProxy  *proxy, const gchar *message_text, const gchar *details, PkClient *client)
-{
-	PkMessageEnum message;
-	g_return_if_fail (PK_IS_CLIENT (client));
-
-	message = pk_message_enum_from_text (message_text);
-	egg_debug ("emit message %i, %s", message, details);
-	g_signal_emit (client , signals [SIGNAL_MESSAGE], 0, message, details);
-}
-
-/**
- * pk_client_get_status:
- * @client: a valid #PkClient instance
- * @status: a PkStatusEnum value such as %PK_STATUS_ENUM_WAITING
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Gets the status of a transaction.
- * A transaction has one roles in it's lifetime, but many values of status.
- *
- * Reading the property "status" is quicker than contacting the daemon, but this
- * only works when the transaction was created by the application, and not when
- * using pk_client_set_tid() in a client program.
- *
- * TODO: deprecate
- *
- * Return value: %TRUE if we found the status successfully
- **/
-gboolean
-pk_client_get_status (PkClient *client, PkStatusEnum *status, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *status_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (status != NULL, FALSE);
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (client->priv->tid != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetStatus", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &status_text,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-	*status = pk_status_enum_from_text (status_text);
-out:
-	g_free (status_text);
-	return ret;
-}
-
-/**
- * pk_client_get_package:
- * @client: a valid #PkClient instance
- * @package: a %package_id or free text string
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Gets the aim of the transaction, e.g. what was asked to be installed or
- * searched for.
- *
- * Return value: %TRUE if we found the status successfully
- **/
-gboolean
-pk_client_get_package (PkClient *client, gchar **package, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package != NULL, FALSE);
-	g_return_val_if_fail (client->priv->tid != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetPackageLast", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, package,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_progress:
- * @client: a valid #PkClient instance
- * @percentage: the percentage complete of the transaction
- * @subpercentage: the percentage complete of the sub-transaction
- * @elapsed: the duration so far of the transaction
- * @remaining: the estimated time to completion of the transaction
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * To show the user a progress bar or dialog is much more friendly than
- * just a pulsing bar, so we can return this information here.
- * NOTE: the %time_remaining value is guessed and may not be accurate if the
- * backend does not do frequent calls to pk_backend_set_percentage().
- *
- * Return value: %TRUE if we found the progress successfully
- **/
-gboolean
-pk_client_get_progress (PkClient *client, guint *percentage, guint *subpercentage,
-			guint *elapsed, guint *remaining, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (client->priv->tid != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetProgress", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_UINT, percentage,
-				 G_TYPE_UINT, subpercentage,
-				 G_TYPE_UINT, elapsed,
-				 G_TYPE_UINT, remaining,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_role:
- * @client: a valid #PkClient instance
- * @role: a PkRoleEnum value such as %PK_ROLE_ENUM_UPDATE_SYSTEM
- * @text: the primary search term or package name associated with the role
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * The role is the action of the transaction as does not change for the entire
- * lifetime of the transaction.
- *
- * Return value: %TRUE if we found the status successfully
- **/
-gboolean
-pk_client_get_role (PkClient *client, PkRoleEnum *role, gchar **text, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *role_text = NULL;
-	gchar *text_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (role != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* we can avoid a trip to the daemon */
-	if (text == NULL && client->priv->role != PK_ROLE_ENUM_UNKNOWN) {
-		*role = client->priv->role;
-		return TRUE;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetRole", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &role_text,
-				 G_TYPE_STRING, &text_temp,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-	*role = pk_role_enum_from_text (role_text);
-	if (text != NULL)
-		*text = text_temp;
-	else
-		g_free (text_temp);
-out:
-	g_free (role_text);
-	return ret;
-}
-
-/**
- * pk_client_cancel:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Cancel the transaction if possible.
- * This is good idea when downloading or depsolving, but not when writing
- * to the disk.
- * The daemon shouldn't let you do anything stupid, so it's quite safe to call
- * this method.
- *
- * Return value: %TRUE if we cancelled successfully
- **/
-gboolean
-pk_client_cancel (PkClient *client, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* we don't need to cancel, so return TRUE */
-	if (client->priv->proxy == NULL) {
-		ret = TRUE;
-		goto out;
-	}
-
-	/* we cannot cancel a client in ::Finished() */
-	if (client->priv->is_finishing) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "unable to cancel client in finished handler");
-		goto out;
-	}
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "Cancel", &error_local,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* no error to process */
-	if (ret)
-		goto out;
-
-	/* special case - if the tid is already finished, then cancel should return TRUE */
-	if (g_str_has_suffix (error_local->message, " doesn't exist\n")) {
-		egg_debug ("error ignored '%s' as we are trying to cancel", error_local->message);
-		g_error_free (error_local);
-		ret = TRUE;
-		goto out;
-	}
-
-	/* we failed one of these, return the error to the user */
-	if (error != NULL)
-		*error = pk_client_error_fixup (error_local);
-	g_error_free (error_local);
-out:
-	return ret;
-}
-
-/**
- * pk_client_transaction_timeout_cb:
- **/
-static gboolean
-pk_client_transaction_timeout_cb (PkClient *client)
-{
-	gboolean ret;
-	const gchar *details = "cancelling client as timeout is up";
-
-	egg_debug ("timeout up");
-	ret = pk_client_cancel (client, NULL);
-	if (!ret) {
-		egg_warning ("failed to cancel");
-		return TRUE;
-	}
-
-	/* emit signal */
-	egg_debug ("emit error-code %i, %s", PK_ERROR_ENUM_TRANSACTION_CANCELLED, details);
-	g_signal_emit (client , signals [SIGNAL_ERROR_CODE], 0, PK_ERROR_ENUM_TRANSACTION_CANCELLED, details);
-
-	/* set used */
-	client->priv->timeout_id = 0;
-
-	return FALSE;
-}
-
-/**
- * pk_client_allocate_transaction_id:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get a new tid, freeing the old tid if required.
- *
- * Return value: the tid, or %NULL if we had an error.
- **/
-static gboolean
-pk_client_allocate_transaction_id (PkClient *client, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *tid = NULL;
-	GError *error_local = NULL;
-	const gchar **list;
-	guint len;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* special value meaning "don't wait if another transaction queued" */
-	if (client->priv->timeout == 0) {
-		list = pk_control_transaction_list_get (client->priv->control);
-		len = g_strv_length ((gchar**)list);
-		if (len > 0) {
-			if (error != NULL)
-				*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "will not queue as timeout 0");
-			goto out;
-		}
-	}
-
-	/* get a new ID */
-	ret = pk_control_allocate_transaction_id (client->priv->control, &tid, &error_local);
-	if (!ret) {
-		if (error != NULL) {
-			if (error_local->code == PK_CONTROL_ERROR_CANNOT_START_DAEMON)
-				*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_CANNOT_START_DAEMON, "cannot start daemon: %s", error_local->message);
-			else
-				*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "failed to get a TID: %s (%i)", error_local->message, error_local->code);
-		}
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* free any old tid */
-	g_free (client->priv->tid);
-	client->priv->tid = NULL;
-
-	/* set that new ID to this GObject */
-	ret = pk_client_set_tid (client, tid, &error_local);
-	if (!ret) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "failed to set TID: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* set a timeout */
-	if (client->priv->timeout > 0)
-		client->priv->timeout_id = g_timeout_add (client->priv->timeout, (GSourceFunc) pk_client_transaction_timeout_cb, client);
-out:
-	g_free (tid);
-	return ret;
-}
-
-/**
- * pk_client_get_updates:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get a list of all the packages that can be updated for all repositories.
- *
- * Return value: %TRUE if we got told the daemon to get the update list
- **/
-gboolean
-pk_client_get_updates (PkClient *client, PkBitfield filters, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_UPDATES;
-	client->priv->cached_filters = filters;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetUpdates", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_get_categories:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get a list of all categories supported
- *
- * Return value: %TRUE if we got told the daemon to get the category list
- **/
-gboolean
-pk_client_get_categories (PkClient *client, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_CATEGORIES;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetCategories", &error_local,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_update_system:
- * @client: a valid #PkClient instance
- * @only_trusted: only trusted packages should be installed
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Update all the packages on the system with the highest versions found in all
- * repositories.
- * NOTE: you can't choose what repositories to update from, but you can do:
- * - pk_client_repo_disable()
- * - pk_client_update_system()
- * - pk_client_repo_enable()
- *
- * Return value: %TRUE if we told the daemon to update the system
- **/
-gboolean
-pk_client_update_system (PkClient *client, gboolean only_trusted, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_UPDATE_SYSTEM;
-	client->priv->cached_only_trusted = only_trusted;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "UpdateSystem", &error_local,
-				 G_TYPE_BOOLEAN, only_trusted,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_search_name:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @search: free text to search for, for instance, "power"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Search all the locally installed files and remote repositories for a package
- * that matches a specific name.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_search_name (PkClient *client, PkBitfield filters, const gchar *search, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SEARCH_NAME;
-	client->priv->cached_filters = filters;
-	client->priv->cached_search = g_strdup (search);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "SearchName", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRING, search,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_search_details:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @search: free text to search for, for instance, "power"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Search all detailed summary information to try and find a keyword.
- * Think of this as pk_client_search_name(), but trying much harder and
- * taking longer.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_search_details (PkClient *client, PkBitfield filters, const gchar *search, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SEARCH_DETAILS;
-	client->priv->cached_filters = filters;
-	client->priv->cached_search = g_strdup (search);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "SearchDetails", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRING, search,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_search_group:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @search: a group enum to search for, for instance, "system-tools"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Return all packages in a specific group.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_search_group (PkClient *client, PkBitfield filters, const gchar *search, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SEARCH_GROUP;
-	client->priv->cached_filters = filters;
-	client->priv->cached_search = g_strdup (search);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "SearchGroup", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRING, search,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_search_file:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @search: file to search for, for instance, "/sbin/service"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Search for packages that provide a specific file.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_search_file (PkClient *client, PkBitfield filters, const gchar *search, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SEARCH_FILE;
-	client->priv->cached_filters = filters;
-	client->priv->cached_search = g_strdup (search);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "SearchFile", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRING, search,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_get_depends:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @recursive: If we should search recursively for depends
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get the packages that depend this one, i.e. child->parent.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_depends (PkClient *client, PkBitfield filters, gchar **package_ids, gboolean recursive, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	gchar *package_ids_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_DEPENDS;
-	client->priv->cached_filters = filters;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-	client->priv->cached_force = recursive;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetDepends", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_BOOLEAN, recursive,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_download_packages:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @directory: the location where packages are to be downloaded
- * @error: a %GError to put the error code and message in, or %NULL
- * Get the packages that depend this one, i.e. child->parent.
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_download_packages (PkClient *client, gchar **package_ids, const gchar *directory, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_DOWNLOAD_PACKAGES;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-	client->priv->cached_directory = g_strdup (directory);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "DownloadPackages", &error_local,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_packages:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get the list of packages from the backend
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_packages (PkClient *client, PkBitfield filters, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_PACKAGES;
-	client->priv->cached_filters = filters;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetPackages", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_set_locale:
- * @client: a valid #PkClient instance
- * @code: a valid locale code, e.g. en_GB
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Set the locale for this transaction.
- * You normally don't need to call this function as the locale is set
- * automatically when the tid is requested.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_set_locale (PkClient *client, const gchar *code, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (code != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "SetLocale", &error_local,
-				 G_TYPE_STRING, code,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_requires:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @recursive: If we should search recursively for requires
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get the packages that require this one, i.e. parent->child.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_requires (PkClient *client, PkBitfield filters, gchar **package_ids, gboolean recursive, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	gchar *package_ids_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_REQUIRES;
-	client->priv->cached_filters = filters;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-	client->priv->cached_force = recursive;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetRequires", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_BOOLEAN, recursive,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_what_provides:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @provides: a #PkProvidesEnum value such as PK_PROVIDES_ENUM_CODEC
- * @search: a search term such as "sound/mp3"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * This should return packages that provide the supplied attributes.
- * This method is useful for finding out what package(s) provide a modalias
- * or GStreamer codec string.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_what_provides (PkClient *client, PkBitfield filters, PkProvidesEnum provides,
-			 const gchar *search, GError **error)
-{
-	gboolean ret = FALSE;
-	const gchar *provides_text;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (provides != PK_PROVIDES_ENUM_UNKNOWN, FALSE);
-	g_return_val_if_fail (search != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_WHAT_PROVIDES;
-	client->priv->cached_search = g_strdup (search);
-	client->priv->cached_filters = filters;
-	client->priv->cached_provides = provides;
-
-	provides_text = pk_provides_enum_to_text (provides);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "WhatProvides", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRING, provides_text,
-				 G_TYPE_STRING, search,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_get_update_detail:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get details about the specific update, for instance any CVE urls and
- * severity information.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_update_detail (PkClient *client, gchar **package_ids, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_UPDATE_DETAIL;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetUpdateDetail", &error_local,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_rollback:
- * @client: a valid #PkClient instance
- * @transaction_id: a transaction_id structure
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Roll back to a previous transaction. I think only conary supports this right
- * now, but it's useful to add an abstract way of doing it.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_rollback (PkClient *client, const gchar *transaction_id, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_ROLLBACK;
-	client->priv->cached_transaction_id = g_strdup (transaction_id);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "Rollback", &error_local,
-				 G_TYPE_STRING, transaction_id,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_resolve:
- * @client: a valid #PkClient instance
- * @filters: a %PkBitfield such as %PK_FILTER_ENUM_GUI | %PK_FILTER_ENUM_FREE or %PK_FILTER_ENUM_NONE
- * @packages: an array of package names to resolve, e.g. "gnome-system-tools"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Resolve a package name into a %package_id. This can return installed and
- * available packages and allows you find out if a package is installed locally
- * or is available in a repository.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_resolve (PkClient *client, PkBitfield filters, gchar **packages, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (packages != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_RESOLVE;
-	client->priv->cached_filters = filters;
-	client->priv->cached_package_ids = g_strdupv (packages);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "Resolve", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_STRV, packages,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_get_details:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get details of a package, so more information can be obtained for GUI
- * or command line tools.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_details (PkClient *client, gchar **package_ids, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_DETAILS;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetDetails", &error_local,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_distro_upgrades:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * This method should return a list of distribution upgrades that are available.
- * It should not return updates, only major upgrades.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_distro_upgrades (PkClient *client, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_DISTRO_UPGRADES;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetDistroUpgrades", &error_local,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_files:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get the file list (i.e. a list of files installed) for the specified package.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_get_files (PkClient *client, gchar **package_ids, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_FILES;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetFiles", &error_local,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_remove_packages:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @allow_deps: if other dependant packages are allowed to be removed from the computer
- * @autoremove: if other packages installed at the same time should be tried to remove
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Remove a package (optionally with dependancies) from the system.
- * If %allow_deps is set to %FALSE, and other packages would have to be removed,
- * then the transaction would fail.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_remove_packages (PkClient *client, gchar **package_ids, gboolean allow_deps,
-			  gboolean autoremove, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_REMOVE_PACKAGES;
-	client->priv->cached_allow_deps = allow_deps;
-	client->priv->cached_autoremove = autoremove;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "RemovePackages", &error_local,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_BOOLEAN, allow_deps,
-				 G_TYPE_BOOLEAN, autoremove,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_refresh_cache:
- * @client: a valid #PkClient instance
- * @force: if we shoudl aggressively drop caches
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Refresh the cache, i.e. download new metadata from a remote URL so that
- * package lists are up to date.
- * This action may take a few minutes and should be done when the session and
- * system are idle.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_refresh_cache (PkClient *client, gboolean force, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_REFRESH_CACHE;
-	client->priv->cached_force = force;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "RefreshCache", &error_local,
-				 G_TYPE_BOOLEAN, force,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_install_packages:
- * @client: a valid #PkClient instance
- * @only_trusted: only trusted packages should be installed
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Install a package of the newest and most correct version.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_install_packages (PkClient *client, gboolean only_trusted, gchar **package_ids, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_INSTALL_PACKAGES;
-	client->priv->cached_only_trusted = only_trusted;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "InstallPackages", &error_local,
-				 G_TYPE_BOOLEAN, only_trusted,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_install_signature:
- * @client: a valid #PkClient instance
- * @package_id: a signature_id structure such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Install a signature of the newest and most correct version.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_install_signature (PkClient *client, PkSigTypeEnum type, const gchar *key_id,
-			     const gchar *package_id, GError **error)
-{
-	gboolean ret = FALSE;
-	const gchar *type_text;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (type != PK_SIGTYPE_ENUM_UNKNOWN, FALSE);
-	g_return_val_if_fail (key_id != NULL, FALSE);
-	g_return_val_if_fail (package_id != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_INSTALL_SIGNATURE;
-	client->priv->cached_package_id = g_strdup (package_id);
-	client->priv->cached_key_id = g_strdup (key_id);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	type_text = pk_sig_type_enum_to_text (type);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "InstallSignature", &error_local,
-				 G_TYPE_STRING, type_text,
-				 G_TYPE_STRING, key_id,
-				 G_TYPE_STRING, package_id,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_update_packages:
- * @client: a valid #PkClient instance
- * @only_trusted: only trusted packages should be installed
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Update specific packages to the newest available versions.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_update_packages (PkClient *client, gboolean only_trusted, gchar **package_ids, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *package_ids_temp;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_UPDATE_PACKAGES;
-	client->priv->cached_only_trusted = only_trusted;
-
-	/* only copy if we are not requeing */
-	if (client->priv->cached_package_ids != package_ids) {
-		client->priv->cached_package_ids = g_strdupv (package_ids);
-	}
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "UpdatePackages", &error_local,
-				 G_TYPE_BOOLEAN, only_trusted,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_resolve_local_path:
- *
- * Resolves paths like ../../Desktop/bar.rpm to /home/hughsie/Desktop/bar.rpm
- * TODO: We should use canonicalize_filename() in gio/glocalfile.c as realpath()
- * is crap.
- **/
-static gchar *
-pk_resolve_local_path (const gchar *rel_path)
-{
-	gchar *real = NULL;
-	gchar *temp;
-
-	/* don't trust realpath one little bit */
-	if (rel_path == NULL)
-		return NULL;
-
-#ifndef __FreeBSD__
-	/* ITS4: ignore, glibc allocates us a buffer to try and fix some brain damage */
-	temp = realpath (rel_path, NULL);
-	if (temp != NULL) {
-		real = g_strdup (temp);
-		/* yes, free, not g_free */
-		free (temp);
-	}
-#else /* __FreeBSD__ */
-{
-	char abs_path[PATH_MAX];
-	temp = realpath (rel_path, abs_path);
-	if (temp != NULL) {
-		real = g_strdup (temp);
-	}
-}
-#endif
-	return real;
-}
-
-/**
- * pk_client_install_files:
- * @client: a valid #PkClient instance
- * @only_trusted: only trusted packages should be installed
- * @files_rel: a file such as "/home/hughsie/Desktop/hal-devel-0.10.0.rpm"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Install a file locally, and get the deps from the repositories.
- * This is useful for double clicking on a .rpm or .deb file.
- *
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_install_files (PkClient *client, gboolean only_trusted, gchar **files_rel, GError **error)
-{
-	guint i;
-	guint length;
-	gboolean ret = FALSE;
-	gchar **files = NULL;
-	gchar *file;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (files_rel != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* convert all the relative paths to absolute ones */
-	files = g_strdupv (files_rel);
-	length = g_strv_length (files);
-	for (i=0; i<length; i++) {
-		file = pk_resolve_local_path (files[i]);
-		/* only replace if different */
-		if (g_strcmp0 (file, files[i]) != 0) {
-			egg_debug ("resolved %s to %s", files[i], file);
-			/* replace */
-			g_free (files[i]);
-			files[i] = g_strdup (file);
-		}
-		g_free (file);
-	}
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_INSTALL_FILES;
-	client->priv->cached_only_trusted = only_trusted;
-	client->priv->cached_full_paths = g_strdupv (files);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "InstallFiles", &error_local,
-				 G_TYPE_BOOLEAN, only_trusted,
-				 G_TYPE_STRV, files,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_strfreev (files);
-	return ret;
-}
-
-/**
- * pk_client_get_repo_list:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get the list of repositories installed on the system.
- *
- * Return value: %TRUE if the daemon queued the transaction
- */
-gboolean
-pk_client_get_repo_list (PkClient *client, PkBitfield filters, GError **error)
-{
-	gboolean ret = FALSE;
-	gchar *filter_text = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_GET_REPO_LIST;
-	client->priv->cached_filters = filters;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-	filter_text = pk_filter_bitfield_to_text (filters);
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetRepoList", &error_local,
-				 G_TYPE_STRING, filter_text,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	g_free (filter_text);
-	return ret;
-}
-
-/**
- * pk_client_accept_eula:
- * @client: a valid #PkClient instance
- * @eula_id: the <literal>eula_id</literal> we are agreeing to
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * We may want to agree to a EULA dialog if one is presented.
- *
- * Return value: %TRUE if the daemon queued the transaction
- */
-gboolean
-pk_client_accept_eula (PkClient *client, const gchar *eula_id, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (eula_id != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_ACCEPT_EULA;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "AcceptEula", &error_local,
-				 G_TYPE_STRING, eula_id,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_repo_enable:
- * @client: a valid #PkClient instance
- * @repo_id: a repo_id structure such as "livna-devel"
- * @enabled: if we should enable the repository
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Enable or disable the repository.
- *
- * Return value: %TRUE if the daemon queued the transaction
- */
-gboolean
-pk_client_repo_enable (PkClient *client, const gchar *repo_id, gboolean enabled, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (repo_id != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_REPO_ENABLE;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "RepoEnable", &error_local,
-				 G_TYPE_STRING, repo_id,
-				 G_TYPE_BOOLEAN, enabled,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_repo_set_data:
- * @client: a valid #PkClient instance
- * @repo_id: a repo_id structure such as "livna-devel"
- * @parameter: the parameter to change
- * @value: what we should change it to
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * We may want to set a repository parameter.
- * NOTE: this is free text, and is left to the backend to define a format.
- *
- * Return value: %TRUE if the daemon queued the transaction
- */
-gboolean
-pk_client_repo_set_data (PkClient *client, const gchar *repo_id, const gchar *parameter,
-			 const gchar *value, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL; /* we can't use the same error as we might be NULL */
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (repo_id != NULL, FALSE);
-	g_return_val_if_fail (parameter != NULL, FALSE);
-	g_return_val_if_fail (value != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, &error_local);
-	if (!ret)
-		goto out;
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_REPO_SET_DATA;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "RepoSetData", &error_local,
-				 G_TYPE_STRING, repo_id,
-				 G_TYPE_STRING, parameter,
-				 G_TYPE_STRING, value,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_simulate_install_files:
- * @client: a valid #PkClient instance
- * @files_rel: a file such as "/home/hughsie/Desktop/hal-devel-0.10.0.rpm"
- * @error: a %GError to put the error code and message in, or %NULL
- * Simulate an installation of files.
- * NOTE: This method might emit packages with INSTALLING, REMOVING, UPDATING,
- *       REINSTALLING or DOWNGRADING status.
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_simulate_install_files (PkClient *client, gchar **files_rel, GError **error)
-{
-	guint i;
-	guint length;
-	gboolean ret = FALSE;
-	gchar **files = NULL;
-	gchar *file;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (files_rel != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		return FALSE;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret) {
-		return FALSE;
-	}
-
-	/* convert all the relative paths to absolute ones */
-	files = g_strdupv (files_rel);
-	length = g_strv_length (files);
-	for (i=0; i<length; i++) {
-		file = pk_resolve_local_path (files[i]);
-		/* only replace if different */
-		if (g_strcmp0 (file, files[i]) != 0) {
-			egg_debug ("resolved %s to %s", files[i], file);
-			/* replace */
-			g_free (files[i]);
-			files[i] = g_strdup (file);
-		}
-		g_free (file);
-	}
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SIMULATE_INSTALL_FILES;
-	client->priv->cached_full_paths = g_strdupv (files);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		return FALSE;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "SimulateInstallFiles", error,
-				 G_TYPE_STRV, files,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-
-	/* we failed one of these, return the error to the user */
-	if (ret && !client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-
-	return ret;
-}
-
-/**
- * pk_client_simulate_install_packages:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- * Simulate an installation of packages.
- * NOTE: This method might emit packages with INSTALLING, REMOVING, UPDATING,
- *       REINSTALLING or DOWNGRADING status.
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_simulate_install_packages (PkClient *client, gchar **package_ids, GError **error)
-{
-	gboolean ret;
-	gchar *package_ids_temp;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		return FALSE;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		return FALSE;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret) {
-		return FALSE;
-	}
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SIMULATE_INSTALL_PACKAGES;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		return FALSE;
-	}
-	ret = dbus_g_proxy_call (client->priv->proxy, "SimulateInstallPackages", error,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (ret && !client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-
-	return ret;
-}
-
-/**
- * pk_client_simulate_remove_packages:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- * Simulate a removal of packages.
- * NOTE: This method might emit packages with INSTALLING, REMOVING, UPDATING,
- *       REINSTALLING or DOWNGRADING status.
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_simulate_remove_packages (PkClient *client, gchar **package_ids, GError **error)
-{
-	gboolean ret;
-	gchar *package_ids_temp;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		return FALSE;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		return FALSE;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret) {
-		return FALSE;
-	}
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SIMULATE_REMOVE_PACKAGES;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		return FALSE;
-	}
-	ret = dbus_g_proxy_call (client->priv->proxy, "SimulateRemovePackages", error,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (ret && !client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-
-	return ret;
-}
-
-/**
- * pk_client_simulate_update_packages:
- * @client: a valid #PkClient instance
- * @package_ids: a null terminated array of package_id structures such as "hal;0.0.1;i386;fedora"
- * @error: a %GError to put the error code and message in, or %NULL
- * Simulate an update of packages.
- * NOTE: This method might emit packages with INSTALLING, REMOVING, UPDATING,
- *       REINSTALLING or DOWNGRADING status.
- * Return value: %TRUE if the daemon queued the transaction
- **/
-gboolean
-pk_client_simulate_update_packages (PkClient *client, gchar **package_ids, GError **error)
-{
-	gboolean ret;
-	gchar *package_ids_temp;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		return FALSE;
-	}
-
-	/* check the PackageIDs here to avoid a round trip if invalid */
-	ret = pk_package_ids_check (package_ids);
-	if (!ret) {
-		package_ids_temp = pk_package_ids_to_text (package_ids);
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_INVALID_INPUT, "package_ids '%s' are not valid", package_ids_temp);
-		g_free (package_ids_temp);
-		return FALSE;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret) {
-		return FALSE;
-	}
-
-	/* save this so we can re-issue it */
-	client->priv->role = PK_ROLE_ENUM_SIMULATE_UPDATE_PACKAGES;
-	client->priv->cached_package_ids = g_strdupv (package_ids);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		return FALSE;
-	}
-	ret = dbus_g_proxy_call (client->priv->proxy, "SimulateUpdatePackages", error,
-				 G_TYPE_STRV, package_ids,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (ret && !client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-
-	return ret;
-}
-
-/**
- * pk_client_is_caller_active:
- * @client: a valid #PkClient instance
- * @is_active: if the caller of the method is still alive
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * If the caller is no longer active, we may want to show a warning or message
- * as a libnotify box as the application can't handle it internally any more.
- *
- * Return value: %TRUE if the daemon serviced the request
- **/
-gboolean
-pk_client_is_caller_active (PkClient *client, gboolean *is_active, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (is_active != NULL, FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "IsCallerActive", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_BOOLEAN, is_active,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_old_transactions:
- * @client: a valid #PkClient instance
- * @number: the number of past transactions to return, or 0 for all
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Get the old transaction list, mainly used for the rollback viewer.
- *
- * Return value: %TRUE if the daemon serviced the request
- **/
-gboolean
-pk_client_get_old_transactions (PkClient *client, guint number, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* ensure we are not trying to run without reset */
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "TID already set to %s", client->priv->tid);
-		goto out;
-	}
-
-	/* get and set a new ID */
-	ret = pk_client_allocate_transaction_id (client, error);
-	if (!ret)
-		goto out;
-
-	/* check to see if we have a valid proxy */
-	if (client->priv->proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_NO_TID, "No proxy for transaction");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* do the method */
-	ret = dbus_g_proxy_call (client->priv->proxy, "GetOldTransactions", &error_local,
-				 G_TYPE_UINT, number,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		if (error != NULL)
-			*error = pk_client_error_fixup (error_local);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		/* allow clients to respond in the status changed callback */
-		pk_client_change_status (client, PK_STATUS_ENUM_WAIT);
-
-		/* spin until finished */
-		if (client->priv->synchronous) {
-			g_main_loop_run (client->priv->loop);
-			if (PK_IS_CLIENT (client) && client->priv->error != NULL) {
-				ret = FALSE;
-				if (error != NULL)
-					*error = g_error_copy (client->priv->error);
-			}
-		}
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_requeue:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * We might need to requeue if we want to take an existing #PkClient instance
- * and re-run it after completion. Doing this allows us to do things like
- * re-searching when the output list may have changed state.
- *
- * Return value: %TRUE if we could requeue the client
- */
-gboolean
-pk_client_requeue (PkClient *client, GError **error)
-{
-	gboolean ret = FALSE;
-	PkClientPrivate *priv = PK_CLIENT_GET_PRIVATE (client);
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* we are no longer waiting, we are setting up */
-	if (priv->role == PK_ROLE_ENUM_UNKNOWN) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_ROLE_UNKNOWN, "role unknown for reque");
-		goto out;
-	}
-
-	/* is not already finished */
-	if (!client->priv->is_finished) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "not finished, so cannot requeue");
-		goto out;
-	}
-
-	/* clear enough data of the client to allow us to requeue */
-	g_free (client->priv->tid);
-	client->priv->tid = NULL;
-	client->priv->status = PK_STATUS_ENUM_UNKNOWN;
-	client->priv->is_finished = FALSE;
-	g_clear_error (&client->priv->error);
-
-	/* clear package list */
-	pk_obj_list_clear (PK_OBJ_LIST(client->priv->package_list));
-	pk_obj_list_clear (client->priv->category_list);
-	pk_obj_list_clear (client->priv->distro_upgrade_list);
-	pk_obj_list_clear (client->priv->transaction_list);
-
-	/* don't exit from the loop when the first tid times out */
-	pk_client_disconnect_proxy (client);
-
-	/* do the correct action with the cached parameters */
-	if (priv->role == PK_ROLE_ENUM_GET_DEPENDS)
-		ret = pk_client_get_depends (client, priv->cached_filters, priv->cached_package_ids, priv->cached_force, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_UPDATE_DETAIL)
-		ret = pk_client_get_update_detail (client, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_RESOLVE)
-		ret = pk_client_resolve (client, priv->cached_filters, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_ROLLBACK)
-		ret = pk_client_rollback (client, priv->cached_transaction_id, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_DETAILS)
-		ret = pk_client_get_details (client, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_FILES)
-		ret = pk_client_get_files (client, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_DOWNLOAD_PACKAGES)
-		ret = pk_client_download_packages (client, priv->cached_package_ids, priv->cached_directory, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_REQUIRES)
-		ret = pk_client_get_requires (client, priv->cached_filters, priv->cached_package_ids, priv->cached_force, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_UPDATES)
-		ret = pk_client_get_updates (client, priv->cached_filters, error);
-	else if (priv->role == PK_ROLE_ENUM_SEARCH_DETAILS)
-		ret = pk_client_search_details (client, priv->cached_filters, priv->cached_search, error);
-	else if (priv->role == PK_ROLE_ENUM_SEARCH_FILE)
-		ret = pk_client_search_file (client, priv->cached_filters, priv->cached_search, error);
-	else if (priv->role == PK_ROLE_ENUM_SEARCH_GROUP)
-		ret = pk_client_search_group (client, priv->cached_filters, priv->cached_search, error);
-	else if (priv->role == PK_ROLE_ENUM_SEARCH_NAME)
-		ret = pk_client_search_name (client, priv->cached_filters, priv->cached_search, error);
-	else if (priv->role == PK_ROLE_ENUM_INSTALL_PACKAGES)
-		ret = pk_client_install_packages (client, priv->cached_only_trusted, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_INSTALL_FILES)
-		ret = pk_client_install_files (client, priv->cached_only_trusted, priv->cached_full_paths, error);
-	else if (priv->role == PK_ROLE_ENUM_INSTALL_SIGNATURE)
-		ret = pk_client_install_signature (client, PK_SIGTYPE_ENUM_GPG, priv->cached_key_id, priv->cached_package_id, error);
-	else if (priv->role == PK_ROLE_ENUM_REFRESH_CACHE)
-		ret = pk_client_refresh_cache (client, priv->cached_force, error);
-	else if (priv->role == PK_ROLE_ENUM_REMOVE_PACKAGES)
-		ret = pk_client_remove_packages (client, priv->cached_package_ids, priv->cached_allow_deps, priv->cached_autoremove, error);
-	else if (priv->role == PK_ROLE_ENUM_UPDATE_PACKAGES)
-		ret = pk_client_update_packages (client, priv->cached_only_trusted, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_UPDATE_SYSTEM)
-		ret = pk_client_update_system (client, priv->cached_only_trusted, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_REPO_LIST)
-		ret = pk_client_get_repo_list (client, priv->cached_filters, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_CATEGORIES)
-		ret = pk_client_get_categories (client, error);
-	else if (priv->role == PK_ROLE_ENUM_GET_DISTRO_UPGRADES)
-		ret = pk_client_get_distro_upgrades (client, error);
-	else if (priv->role == PK_ROLE_ENUM_SIMULATE_INSTALL_FILES)
-		ret = pk_client_simulate_install_files (client, priv->cached_full_paths, error);
-	else if (priv->role == PK_ROLE_ENUM_SIMULATE_INSTALL_PACKAGES)
-		ret = pk_client_simulate_install_packages (client, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_SIMULATE_REMOVE_PACKAGES)
-		ret = pk_client_simulate_remove_packages (client, priv->cached_package_ids, error);
-	else if (priv->role == PK_ROLE_ENUM_SIMULATE_UPDATE_PACKAGES)
-		ret = pk_client_simulate_update_packages (client, priv->cached_package_ids, error);
-	else {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_ROLE_UNKNOWN, "role unknown for reque");
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_client_set_tid:
- * @client: a valid #PkClient instance
- * @tid: a transaction id
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * This method sets the transaction ID that should be used for the DBUS method
- * and then watched for any callback signals.
- * You cannot call pk_client_set_tid multiple times for one instance.
- *
- * Return value: %TRUE if set correctly
- **/
-gboolean
-pk_client_set_tid (PkClient *client, const gchar *tid, GError **error)
-{
-	DBusGProxy *proxy = NULL;
-	gboolean ret = FALSE;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	if (client->priv->tid != NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_ALREADY_TID, "cannot set the tid on an already set client");
-		goto out;
-	}
-
-	/* get a connection */
-	proxy = dbus_g_proxy_new_for_name (client->priv->connection,
-					   PK_DBUS_SERVICE, tid, PK_DBUS_INTERFACE_TRANSACTION);
-	if (proxy == NULL) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_ALREADY_TID, "Cannot connect to PackageKit tid %s", tid);
-		goto out;
-	}
-
-	/* don't timeout, as dbus-glib sets the timeout ~25 seconds */
-	dbus_g_proxy_set_default_timeout (proxy, INT_MAX);
-
-	client->priv->tid = g_strdup (tid);
-	egg_debug ("set tid %s on %p", client->priv->tid, client);
-
-	dbus_g_proxy_add_signal (proxy, "Finished",
-				 G_TYPE_STRING, G_TYPE_UINT, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "ProgressChanged",
-				 G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "StatusChanged",
-				 G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Package",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Transaction",
-				 G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_STRING,
-				 G_TYPE_UINT, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "UpdateDetail",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "DistroUpgrade",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Details",
-				 G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT64,
-				 G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Files", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "RepoSignatureRequired",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "EulaRequired",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "RepoDetail", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "ErrorCode", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "RequireRestart", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Message", G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "CallerActiveChanged", G_TYPE_BOOLEAN, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "AllowCancel", G_TYPE_BOOLEAN, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Destroy", G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "Category", G_TYPE_STRING, G_TYPE_STRING,
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (proxy, "MediaChangeRequired",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-
-	dbus_g_proxy_connect_signal (proxy, "Finished",
-				     G_CALLBACK (pk_client_finished_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "ProgressChanged",
-				     G_CALLBACK (pk_client_progress_changed_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "StatusChanged",
-				     G_CALLBACK (pk_client_status_changed_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Package",
-				     G_CALLBACK (pk_client_package_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Transaction",
-				     G_CALLBACK (pk_client_transaction_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "UpdateDetail",
-				     G_CALLBACK (pk_client_update_detail_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "DistroUpgrade",
-				     G_CALLBACK (pk_client_distro_upgrade_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Details",
-				     G_CALLBACK (pk_client_details_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Files",
-				     G_CALLBACK (pk_client_files_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "RepoSignatureRequired",
-				     G_CALLBACK (pk_client_repo_signature_required_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "EulaRequired",
-				     G_CALLBACK (pk_client_eula_required_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "RepoDetail",
-				     G_CALLBACK (pk_client_repo_detail_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "ErrorCode",
-				     G_CALLBACK (pk_client_error_code_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "RequireRestart",
-				     G_CALLBACK (pk_client_require_restart_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Message",
-				     G_CALLBACK (pk_client_message_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "CallerActiveChanged",
-				     G_CALLBACK (pk_client_caller_active_changed_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "AllowCancel",
-				     G_CALLBACK (pk_client_allow_cancel_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Category",
-				     G_CALLBACK (pk_client_category_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "MediaChangeRequired",
-				     G_CALLBACK (pk_client_media_change_required_cb), client, NULL);
-	dbus_g_proxy_connect_signal (proxy, "Destroy",
-				     G_CALLBACK (pk_client_destroy_cb), client, NULL);
-	client->priv->proxy = proxy;
-	ret = TRUE;
-out:
-	return ret;
-}
-
-/**
- * pk_client_get_property:
- **/
-static void
-pk_client_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
-{
-	PkClient *client;
-	client = PK_CLIENT (object);
-	switch (prop_id) {
-	case PROP_ROLE:
-		g_value_set_uint (value, client->priv->role);
-		break;
-	case PROP_STATUS:
-		g_value_set_uint (value, client->priv->status);
-		break;
-	case PROP_EXIT:
-		g_value_set_uint (value, client->priv->exit);
-		break;
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-		break;
-	}
-}
-
-/**
- * pk_client_set_property:
- **/
-static void
-pk_client_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
-{
-	switch (prop_id) {
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-		break;
-	}
-}
-
-/**
- * pk_client_class_init:
- **/
-static void
-pk_client_class_init (PkClientClass *klass)
-{
-	GParamSpec *pspec;
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-
-	object_class->finalize = pk_client_finalize;
-	object_class->get_property = pk_client_get_property;
-	object_class->set_property = pk_client_set_property;
-
-	/**
-	 * PkClient:role:
-	 */
-	pspec = g_param_spec_uint ("role", NULL, NULL,
-				   0, G_MAXUINT, 0,
-				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_ROLE, pspec);
-
-	/**
-	 * PkClient:status:
-	 */
-	pspec = g_param_spec_uint ("status", NULL, NULL,
-				   0, G_MAXUINT, 0,
-				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_STATUS, pspec);
-
-	/**
-	 * PkClient:exit:
-	 */
-	pspec = g_param_spec_uint ("exit", NULL, NULL,
-				   0, G_MAXUINT, 0,
-				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_EXIT, pspec);
-
-	/**
-	 * PkClient::status-changed:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @status: the #PkStatusEnum type, e.g. PK_STATUS_ENUM_REMOVE
-	 *
-	 * The ::status-changed signal is emitted when the transaction status
-	 * has changed.
-	 **/
-	signals [SIGNAL_STATUS_CHANGED] =
-		g_signal_new ("status-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, status_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__UINT,
-			      G_TYPE_NONE, 1, G_TYPE_UINT);
-	/**
-	 * PkClient::progress-changed:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @percentage: the percentage of the transaction
-	 * @subpercentage: the percentage of the sub-transaction
-	 * @elapsed: the elapsed time in seconds of the transaction
-	 * @client: the remaining time in seconds of the transaction
-	 *
-	 * The ::progress-changed signal is emitted when the update list may have
-	 * changed and the client program may have to update some UI.
-	 **/
-	signals [SIGNAL_PROGRESS_CHANGED] =
-		g_signal_new ("progress-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, progress_changed),
-			      NULL, NULL, pk_marshal_VOID__UINT_UINT_UINT_UINT,
-			      G_TYPE_NONE, 4, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT);
-
-	/**
-	 * PkClient::package:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkPackageObj structure describing the package
-	 *
-	 * The ::package signal is emitted when the update list may have
-	 * changed and the client program may have to update some UI.
-	 **/
-	signals [SIGNAL_PACKAGE] =
-		g_signal_new ("package",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, package),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::transaction:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkTransactionObj structure describing the transaction
-	 *
-	 * The ::transaction is emitted when the method GetOldTransactions() is
-	 * called, and the values are being replayed from a database.
-	 **/
-	signals [SIGNAL_TRANSACTION] =
-		g_signal_new ("transaction",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, transaction),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::distro_upgrade:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkDistroUpgradeObj structure describing the upgrade
-	 *
-	 * The ::distro_upgrade signal is emitted when the method GetDistroUpgrades() is
-	 * called, and the upgrade options are being sent.
-	 **/
-	signals [SIGNAL_DISTRO_UPGRADE] =
-		g_signal_new ("distro-upgrade",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, distro_upgrade),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::update-detail:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkUpdateDetailsObj structure describing the update
-	 *
-	 * The ::update-detail signal is emitted when GetUpdateDetail() is
-	 * called on a set of package_id's.
-	 **/
-	signals [SIGNAL_UPDATE_DETAIL] =
-		g_signal_new ("update-detail",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, update_detail),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::details:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkDetailObj structure describing the package in detail
-	 *
-	 * The ::details signal is emitted when GetDetails() is called.
-	 **/
-	signals [SIGNAL_DETAILS] =
-		g_signal_new ("details",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, details),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::files:
-	 * @package_id: the package_id of the package
-	 * @files: the list of files owned by the package, delimited by ';'
-	 *
-	 * The ::files signal is emitted when the method GetFiles() is used.
-	 **/
-	signals [SIGNAL_FILES] =
-		g_signal_new ("files",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, files),
-			      NULL, NULL, pk_marshal_VOID__STRING_STRING,
-			      G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_STRING);
-	/**
-	 * PkClient::repo-signature-required:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @package_id: the package_id of the package
-	 * @repository_name: the name of the repository
-	 * @key_url: the URL of the repository
-	 * @key_userid: the user signing the repository
-	 * @key_id: the id of the repository
-	 * @key_fingerprint: the fingerprint of the repository
-	 * @key_timestamp: the timestamp of the repository
-	 * @type: the #PkSigTypeEnum of the repository, e.g. PK_SIGTYPE_ENUM_GPG
-	 *
-	 * The ::repo-signature-required signal is emitted when the transaction
-	 * needs to fail for a signature prompt.
-	 **/
-	signals [SIGNAL_REPO_SIGNATURE_REQUIRED] =
-		g_signal_new ("repo-signature-required",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, repo_signature_required),
-			      NULL, NULL, pk_marshal_VOID__STRING_STRING_STRING_STRING_STRING_STRING_STRING_UINT,
-			      G_TYPE_NONE, 8, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-			      G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT);
-	/**
-	 * PkClient::eula-required:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @eula_id: the EULA id, e.g. <literal>vmware5_single_user</literal>
-	 * @package_id: the package_id of the package
-	 * @vendor_name: the Vendor name, e.g. Acme Corp.
-	 * @license_agreement: the text of the license agreement
-	 *
-	 * The ::eula signal is emitted when the transaction needs to fail for a EULA prompt.
-	 **/
-	signals [SIGNAL_EULA_REQUIRED] =
-		g_signal_new ("eula-required",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, eula_required),
-			      NULL, NULL, pk_marshal_VOID__STRING_STRING_STRING_STRING,
-			      G_TYPE_NONE, 4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);
-
-	/**
-	 * PkClient::media-change-required:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @media_type: the #PkMediaTypeEnum of the error, e.g. PK_MEDIA_TYPE_ENUM_DVD
-	 * @media_id: the non-localised label of the media
-	 * @media_text: the non-localised text describing the media
-	 *
-	 * The ::media-change-required signal is emitted when the transaction needs a
-	 * different media to grab the packages.
-	 *
-	 * This can only happen once in a transaction.
-	 **/
-	signals [SIGNAL_MEDIA_CHANGE_REQUIRED] =
-		g_signal_new ("media-change-required",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, media_change_required),
-			      NULL, NULL, pk_marshal_VOID__UINT_STRING_STRING,
-			      G_TYPE_NONE, 3, G_TYPE_UINT, G_TYPE_STRING, G_TYPE_STRING);
-
-	/**
-	 * PkClient::repo-detail:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @repo_id: the ID of the repository
-	 * @description: the description of the repository
-	 * @enabled: if the repository is enabled
-	 *
-	 * The ::repo-detail signal is emitted when the method GetRepos() is
-	 * called.
-	 **/
-	signals [SIGNAL_REPO_DETAIL] =
-		g_signal_new ("repo-detail",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, repo_detail),
-			      NULL, NULL, pk_marshal_VOID__STRING_STRING_BOOLEAN,
-			      G_TYPE_NONE, 3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN);
-	/**
-	 * PkClient::error-code:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @code: the #PkErrorCodeEnum of the error, e.g. PK_ERROR_ENUM_DEP_RESOLUTION_FAILED
-	 * @details: the non-locaised details about the error
-	 *
-	 * The ::error-code signal is emitted when the transaction wants to
-	 * convey an error in the transaction.
-	 *
-	 * This can only happen once in a transaction.
-	 **/
-	signals [SIGNAL_ERROR_CODE] =
-		g_signal_new ("error-code",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, error_code),
-			      NULL, NULL, pk_marshal_VOID__UINT_STRING,
-			      G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_STRING);
-	/**
-	 * PkClient::require-restart:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkRequireRestartObj structure describing the restart request in detail
-	 *
-	 * The ::require-restart signal is emitted when the transaction
-	 * requires a application or session restart.
-	 **/
-	signals [SIGNAL_REQUIRE_RESTART] =
-		g_signal_new ("require-restart",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, require_restart),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::message:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @message: the PkMessageEnum type of the message, e.g. %PK_MESSAGE_ENUM_BROKEN_MIRROR
-	 * @details: the non-localised message details
-	 *
-	 * The ::message signal is emitted when the transaction wants to tell
-	 * the user something.
-	 **/
-	signals [SIGNAL_MESSAGE] =
-		g_signal_new ("message",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, message),
-			      NULL, NULL, pk_marshal_VOID__UINT_STRING,
-			      G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_STRING);
-	/**
-	 * PkClient::allow-cancel:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @allow_cancel: If cancel would succeed
-	 *
-	 * The ::allow-cancel signal is emitted when the transaction cancellable
-	 * value changes.
-	 *
-	 * You probably want to enable and disable cancel buttons according to
-	 * this value.
-	 **/
-	signals [SIGNAL_ALLOW_CANCEL] =
-		g_signal_new ("allow-cancel",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, allow_cancel),
-			      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-	/**
-	 * PkClient::caller-active-changed:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @is_active: if the caller is still active
-	 *
-	 * The ::caller-active-changed signal is emitted when the client that
-	 * issued the dbus method is exited.
-	 **/
-	signals [SIGNAL_CALLER_ACTIVE_CHANGED] =
-		g_signal_new ("caller-active-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, caller_active_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-	/**
-	 * PkClient::category:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @obj: a pointer to a #PkCategoryObj structure describing the category
-	 *
-	 * The ::category signal is emitted when GetCategories() is called.
-	 **/
-	signals [SIGNAL_CATEGORY] =
-		g_signal_new ("category",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, category),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-	/**
-	 * PkClient::finished:
-	 * @client: the #PkClient instance that emitted the signal
-	 * @exit: the #PkExitEnum status value, e.g. PK_EXIT_ENUM_SUCCESS
-	 * @runtime: the time in seconds the transaction has been running
-	 *
-	 * The ::finished signal is emitted when the transaction is complete.
-	 **/
-	signals [SIGNAL_FINISHED] =
-		g_signal_new ("finished",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, finished),
-			      NULL, NULL, pk_marshal_VOID__UINT_UINT,
-			      G_TYPE_NONE, 2, G_TYPE_UINT, G_TYPE_UINT);
-
-	/**
-	 * PkClient::destroy:
-	 * @client: the #PkClient instance that emitted the signal
-	 *
-	 * The ::destroy signal is emitted when the transaction has been
-	 * destroyed and is no longer available for use.
-	 **/
-	signals [SIGNAL_DESTROY] =
-		g_signal_new ("destroy",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkClientClass, destroy),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
-
-	g_type_class_add_private (klass, sizeof (PkClientPrivate));
-}
-
-/**
- * pk_client_connect:
- * @client: a valid #PkClient instance
- **/
-static void
-pk_client_connect (PkClient *client)
-{
-	egg_debug ("connect");
-}
-
-/**
- * pk_connection_changed_cb:
- **/
-static void
-pk_connection_changed_cb (PkConnection *pconnection, gboolean connected, PkClient *client)
-{
-	/* if PK re-started mid-transaction then show a big fat warning */
-	if (!connected && client->priv->tid != NULL && !client->priv->is_finished)
-		egg_warning ("daemon disconnected mid-transaction!");
-}
-
-/**
- * pk_client_disconnect_proxy:
- **/
-static gboolean
-pk_client_disconnect_proxy (PkClient *client)
-{
-	if (client->priv->proxy == NULL)
-		return FALSE;
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Finished",
-					G_CALLBACK (pk_client_finished_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "ProgressChanged",
-					G_CALLBACK (pk_client_progress_changed_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "StatusChanged",
-					G_CALLBACK (pk_client_status_changed_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Package",
-					G_CALLBACK (pk_client_package_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Transaction",
-					G_CALLBACK (pk_client_transaction_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "DistroUpgrade",
-					G_CALLBACK (pk_client_distro_upgrade_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Details",
-					G_CALLBACK (pk_client_details_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Files",
-					G_CALLBACK (pk_client_files_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "RepoSignatureRequired",
-					G_CALLBACK (pk_client_repo_signature_required_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "EulaRequired",
-					G_CALLBACK (pk_client_eula_required_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "ErrorCode",
-					G_CALLBACK (pk_client_error_code_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "RequireRestart",
-					G_CALLBACK (pk_client_require_restart_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Message",
-					G_CALLBACK (pk_client_message_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "CallerActiveChanged",
-					G_CALLBACK (pk_client_caller_active_changed_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "AllowCancel",
-					G_CALLBACK (pk_client_allow_cancel_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "Destroy",
-					G_CALLBACK (pk_client_destroy_cb), client);
-	dbus_g_proxy_disconnect_signal (client->priv->proxy, "MediaChangeRequired",
-					G_CALLBACK (pk_client_media_change_required_cb), client);
-	g_object_unref (G_OBJECT (client->priv->proxy));
-	client->priv->proxy = NULL;
-	return TRUE;
-}
-
-/**
- * pk_client_reset:
- * @client: a valid #PkClient instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Resetting the client way be needed if we canceled the request without
- * waiting for ::finished, or if we want to reuse the #PkClient without
- * unreffing and creating it again.
- *
- * If you call pk_client_reset() on a running transaction, then it will be
- * automatically cancelled. If the cancel fails, the reset will fail.
- *
- * Return value: %TRUE if we reset the client
- **/
-gboolean
-pk_client_reset (PkClient *client, GError **error)
-{
-	gboolean ret = FALSE;
-
-	g_return_val_if_fail (PK_IS_CLIENT (client), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* we cannot reset a synchronous client in ::Finished() --
-	   the whole point of a sync client is we don't handle this signal
-	   and we'll clear the package cache if we allow this */
-	if (client->priv->is_finishing && client->priv->synchronous) {
-		if (error != NULL)
-			*error = g_error_new (PK_CLIENT_ERROR, PK_CLIENT_ERROR_FAILED, "unable to reset synchronous client in finished handler");
-		goto out;
-	}
-
-	if (client->priv->tid != NULL && !client->priv->is_finished) {
-		egg_debug ("not exit status, will try to cancel tid %s", client->priv->tid);
-		/* we try to cancel the running tranaction */
-		ret = pk_client_cancel (client, error);
-		if (!ret)
-			goto out;
-	}
-
-	/* stop the timeout timer if running */
-	if (client->priv->timeout_id != 0) {
-		g_source_remove (client->priv->timeout_id);
-		client->priv->timeout_id = 0;
-	}
-
-	g_free (client->priv->tid);
-	g_free (client->priv->cached_package_id);
-	g_free (client->priv->cached_key_id);
-	g_free (client->priv->cached_transaction_id);
-	g_free (client->priv->cached_full_path);
-	g_free (client->priv->cached_search);
-	g_free (client->priv->cached_directory);
-	g_strfreev (client->priv->cached_package_ids);
-	g_strfreev (client->priv->cached_full_paths);
-	g_object_unref (client->priv->package_list);
-	g_clear_error (&client->priv->error);
-
-	/* we need to do this now we have multiple paths */
-	pk_client_disconnect_proxy (client);
-
-	client->priv->tid = NULL;
-	client->priv->cached_package_id = NULL;
-	client->priv->cached_key_id = NULL;
-	client->priv->cached_transaction_id = NULL;
-	client->priv->cached_full_path = NULL;
-	client->priv->cached_full_paths = NULL;
-	client->priv->cached_search = NULL;
-	client->priv->cached_package_ids = NULL;
-	client->priv->cached_directory = NULL;
-	client->priv->cached_filters = PK_FILTER_ENUM_UNKNOWN;
-	client->priv->status = PK_STATUS_ENUM_UNKNOWN;
-	client->priv->role = PK_ROLE_ENUM_UNKNOWN;
-	client->priv->is_finished = FALSE;
-	client->priv->timeout = -1;
-	client->priv->package_list = pk_package_list_new ();
-
-	/* TODO: make clean */
-	pk_obj_list_clear (client->priv->category_list);
-	pk_obj_list_clear (client->priv->distro_upgrade_list);
-	pk_obj_list_clear (client->priv->transaction_list);
-	pk_obj_list_clear (client->priv->require_restart_list);
-	ret = TRUE;
-out:
-	return ret;
-}
-
-/**
- * pk_client_init:
- **/
-static void
-pk_client_init (PkClient *client)
-{
-	GError *error = NULL;
-
-	client->priv = PK_CLIENT_GET_PRIVATE (client);
-	client->priv->tid = NULL;
-	client->priv->loop = g_main_loop_new (NULL, FALSE);
-	client->priv->use_buffer = FALSE;
-	client->priv->synchronous = FALSE;
-	client->priv->status = PK_STATUS_ENUM_UNKNOWN;
-	client->priv->require_restart = PK_RESTART_ENUM_NONE;
-	client->priv->role = PK_ROLE_ENUM_UNKNOWN;
-	client->priv->exit = PK_EXIT_ENUM_UNKNOWN;
-	client->priv->is_finished = FALSE;
-	client->priv->is_finishing = FALSE;
-	client->priv->package_list = pk_package_list_new ();
-	client->priv->cached_package_id = NULL;
-	client->priv->cached_package_ids = NULL;
-	client->priv->cached_transaction_id = NULL;
-	client->priv->cached_key_id = NULL;
-	client->priv->cached_full_path = NULL;
-	client->priv->cached_full_paths = NULL;
-	client->priv->cached_search = NULL;
-	client->priv->cached_directory = NULL;
-	client->priv->cached_provides = PK_PROVIDES_ENUM_UNKNOWN;
-	client->priv->cached_filters = PK_FILTER_ENUM_UNKNOWN;
-	client->priv->proxy = NULL;
-	client->priv->timeout = -1;
-	client->priv->timeout_id = 0;
-	client->priv->error = NULL;
-
-	/* cache require restart objects */
-	client->priv->require_restart_list = pk_obj_list_new ();
-	pk_obj_list_set_copy (client->priv->require_restart_list, (PkObjListCopyFunc) pk_require_restart_obj_copy);
-	pk_obj_list_set_free (client->priv->require_restart_list, (PkObjListFreeFunc) pk_require_restart_obj_free);
-
-	/* cache category objects */
-	client->priv->category_list = pk_obj_list_new ();
-	pk_obj_list_set_copy (client->priv->category_list, (PkObjListCopyFunc) pk_category_obj_copy);
-	pk_obj_list_set_free (client->priv->category_list, (PkObjListFreeFunc) pk_category_obj_free);
-
-	/* cache distro upgrade objects */
-	client->priv->distro_upgrade_list = pk_obj_list_new ();
-	pk_obj_list_set_copy (client->priv->distro_upgrade_list, (PkObjListCopyFunc) pk_distro_upgrade_obj_copy);
-	pk_obj_list_set_free (client->priv->distro_upgrade_list, (PkObjListFreeFunc) pk_distro_upgrade_obj_free);
-
-	/* cache transaction objects */
-	client->priv->transaction_list = pk_obj_list_new ();
-	pk_obj_list_set_copy (client->priv->transaction_list, (PkObjListCopyFunc) pk_transaction_obj_copy);
-	pk_obj_list_set_free (client->priv->transaction_list, (PkObjListFreeFunc) pk_transaction_obj_free);
-
-	/* check dbus connections, exit if not valid */
-	client->priv->connection = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
-	if (error != NULL) {
-		egg_warning ("%s", error->message);
-		g_error_free (error);
-		g_error ("Could not connect to system DBUS.");
-	}
-
-	/* watch for PackageKit on the bus, and try to connect up at start */
-	client->priv->pconnection = pk_connection_new ();
-	client->priv->pconnection_signal_id = g_signal_connect (client->priv->pconnection, "connection-changed",
-								G_CALLBACK (pk_connection_changed_cb), client);
-	if (pk_connection_valid (client->priv->pconnection))
-		pk_client_connect (client);
-
-	/* Use a main control object */
-	client->priv->control = pk_control_new ();
-
-	/* DistroUpgrade, MediaChangeRequired */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* ProgressChanged */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__UINT_UINT_UINT_UINT,
-					   G_TYPE_NONE, G_TYPE_UINT,
-					   G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_INVALID);
-
-	/* AllowCancel */
-	dbus_g_object_register_marshaller (g_cclosure_marshal_VOID__BOOLEAN,
-					   G_TYPE_NONE, G_TYPE_BOOLEAN, G_TYPE_INVALID);
-
-	/* StatusChanged */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* Finished */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_UINT,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_INVALID);
-
-	/* ErrorCode, RequireRestart, Message */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* CallerActiveChanged */
-	dbus_g_object_register_marshaller (g_cclosure_marshal_VOID__BOOLEAN,
-					   G_TYPE_NONE, G_TYPE_BOOLEAN, G_TYPE_INVALID);
-
-	/* Details */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING_STRING_STRING_UINT64,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT64,
-					   G_TYPE_INVALID);
-
-	/* EulaRequired */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* Files */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* RepoSignatureRequired */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING_STRING_STRING_STRING_STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* Package */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_INVALID);
-
-	/* RepoDetail */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_BOOL,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_BOOLEAN, G_TYPE_INVALID);
-
-	/* UpdateDetail */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING_STRING_STRING_STRING_STRING_STRING_STRING_STRING_STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	/* Transaction */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_BOOL_STRING_UINT_STRING_UINT_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN,
-					   G_TYPE_STRING, G_TYPE_UINT, G_TYPE_STRING,
-					   G_TYPE_UINT, G_TYPE_STRING, G_TYPE_INVALID);
-	/* Category */
-	dbus_g_object_register_marshaller (pk_marshal_VOID__STRING_STRING_STRING_STRING_STRING,
-					   G_TYPE_NONE, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
-					   G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-}
-
-/**
- * pk_client_finalize:
- **/
-static void
-pk_client_finalize (GObject *object)
-{
-	PkClient *client;
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_CLIENT (object));
-	client = PK_CLIENT (object);
-	g_return_if_fail (client->priv != NULL);
-
-	/* free cached strings */
-	g_free (client->priv->cached_package_id);
-	g_free (client->priv->cached_key_id);
-	g_free (client->priv->cached_transaction_id);
-	g_free (client->priv->cached_full_path);
-	g_free (client->priv->cached_search);
-	g_free (client->priv->cached_directory);
-	g_free (client->priv->tid);
-	g_strfreev (client->priv->cached_package_ids);
-	g_strfreev (client->priv->cached_full_paths);
-	if (client->priv->error)
-		g_error_free (client->priv->error);
-
-	/* clear the loop, if we were using it */
-	if (client->priv->synchronous)
-		g_main_loop_quit (client->priv->loop);
-	g_main_loop_unref (client->priv->loop);
-
-	/* stop the timeout timer if running */
-	if (client->priv->timeout_id != 0)
-		g_source_remove (client->priv->timeout_id);
-
-	/* disconnect signal handlers */
-	g_signal_handler_disconnect (client->priv->pconnection, client->priv->pconnection_signal_id);
-	pk_client_disconnect_proxy (client);
-	g_object_unref (client->priv->pconnection);
-	g_object_unref (client->priv->package_list);
-	g_object_unref (client->priv->category_list);
-	g_object_unref (client->priv->distro_upgrade_list);
-	g_object_unref (client->priv->transaction_list);
-	g_object_unref (client->priv->require_restart_list);
-	g_object_unref (client->priv->control);
-
-	G_OBJECT_CLASS (pk_client_parent_class)->finalize (object);
-}
-
-/**
- * pk_client_new:
- *
- * PkClient is a nice GObject wrapper for PackageKit and makes writing
- * frontends easy.
- *
- * Return value: A new %PkClient instance
- **/
-PkClient *
-pk_client_new (void)
-{
-	PkClient *client;
-	client = g_object_new (PK_TYPE_CLIENT, NULL);
-	return PK_CLIENT (client);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-#include <glib/gstdio.h>
-
-static gboolean finished = FALSE;
-static gboolean reset_okay = FALSE;
-static guint clone_packages = 0;
-
-static void
-pk_client_test_finished_cb (PkClient *client, PkExitEnum exit, guint runtime, EggTest *test)
-{
-	finished = TRUE;
-	/* this is actually quite common */
-	g_object_unref (client);
-}
-
-static void
-pk_client_test_finished2_cb (PkClient *client, PkExitEnum exit, guint runtime, EggTest *test)
-{
-	GError *error = NULL;
-	/* this is supported */
-	reset_okay = pk_client_reset (client, &error);
-	if (!reset_okay) {
-		egg_warning ("failed to reset in ::Finished(): %s", error->message);
-		g_error_free (error);
-	}
-}
-
-static void
-pk_client_test_copy_finished_cb (PkClient *client, PkExitEnum exit, guint runtime, EggTest *test)
-{
-	egg_test_loop_quit (test);
-}
-
-static void
-pk_client_test_copy_package_cb (PkClient *client, const PkPackageObj *obj, EggTest *test)
-{
-	clone_packages++;
-}
-
-void
-pk_client_test (EggTest *test)
-{
-	PkConnection *connection;
-	PkClient *client;
-	PkClient *client_copy;
-	gboolean ret;
-	GError *error = NULL;
-	gchar *tid;
-	guint size;
-	guint size_new;
-	guint i;
-	gchar *file;
-	PkPackageList *list;
-	PkRoleEnum role;
-
-	if (!egg_test_start (test, "PkClient"))
-		return;
-
-	/* check to see if there is a daemon running */
-	connection = pk_connection_new ();
-	ret = pk_connection_valid (connection);
-	g_object_unref (connection);
-	if (!ret) {
-		egg_warning ("daemon is not running, skipping tests");
-		goto out;
-	}
-
-	/************************************************************/
-	egg_test_title (test, "test resolve NULL");
-	file = pk_resolve_local_path (NULL);
-	if (file == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test resolve /etc/hosts");
-	file = pk_resolve_local_path ("/etc/hosts");
-	if (file != NULL && g_strcmp0 (file, "/etc/hosts") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got: %s", file);
-	g_free (file);
-
-	/************************************************************/
-	egg_test_title (test, "test resolve /etc/../etc/hosts");
-	file = pk_resolve_local_path ("/etc/../etc/hosts");
-	if (file != NULL && g_strcmp0 (file, "/etc/hosts") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got: %s", file);
-	g_free (file);
-
-	/************************************************************/
-	egg_test_title (test, "get client");
-	client = pk_client_new ();
-	egg_test_assert (test, client != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "set non synchronous (fail)");
-	ret = pk_client_set_synchronous (client, FALSE, NULL);
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "set synchronous (pass)");
-	ret = pk_client_set_synchronous (client, TRUE, NULL);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "set synchronous again (fail)");
-	ret = pk_client_set_synchronous (client, TRUE, NULL);
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "set non synchronous (pass)");
-	ret = pk_client_set_synchronous (client, FALSE, NULL);
-	egg_test_assert (test, ret);
-	g_object_unref (client);
-
-	/************************************************************/
-	egg_test_title (test, "get new client");
-	client = pk_client_new ();
-	egg_test_assert (test, client != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "reset client, unused");
-	ret = pk_client_reset (client, NULL);
-	egg_test_assert (test, ret);
-
-	/* check use after finalise */
-	g_signal_connect (client, "finished",
-			  G_CALLBACK (pk_client_test_finished_cb), test);
-
-	/************************************************************/
-	egg_test_title (test, "set synchronous after reset (pass)");
-	ret = pk_client_set_synchronous (client, TRUE, NULL);
-	egg_test_assert (test, ret);
-
-	/* run the method */
-	ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", NULL);
-
-	/************************************************************/
-	egg_test_title (test, "we finished?");
-	if (!ret)
-		egg_test_failed (test, "not correct return value");
-	else if (!finished)
-		egg_test_failed (test, "not finished");
-	else
-		egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "get new client so we can test resets in ::Finished()");
-	client = pk_client_new ();
-	egg_test_assert (test, client != NULL);
-
-	/* check reset during finalise when sync */
-	pk_client_set_synchronous (client, TRUE, NULL);
-	g_signal_connect (client, "finished",
-			  G_CALLBACK (pk_client_test_finished2_cb), test);
-
-	/************************************************************/
-	egg_test_title (test, "search name sync, with a reset in finalise");
-	ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", NULL);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "check reset failed");
-	if (!reset_okay)
-		egg_test_success (test, "failed to reset in finished as sync");
-	else
-		egg_test_failed (test, "reset in finished when sync");
-
-	g_object_unref (client);
-
-	/************************************************************/
-	egg_test_title (test, "get new client");
-	client = pk_client_new ();
-	egg_test_assert (test, client != NULL);
-	pk_client_set_synchronous (client, TRUE, NULL);
-	pk_client_set_use_buffer (client, TRUE, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "reset client #1");
-	ret = pk_client_reset (client, &error);
-	if (!ret) {
-		egg_test_failed (test, "failed to reset: %s", error->message);
-		g_error_free (error);
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "reset client #2");
-	ret = pk_client_reset (client, &error);
-	if (!ret) {
-		egg_test_failed (test, "failed to reset: %s", error->message);
-		g_error_free (error);
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "get updates");
-	ret = pk_client_get_updates (client, PK_FILTER_ENUM_NONE, &error);
-	if (!ret) {
-		egg_test_failed (test, "failed to get updates: %s", error->message);
-		g_error_free (error);
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "get updates (without reset) with null error");
-	ret = pk_client_get_updates (client, PK_FILTER_ENUM_NONE, NULL);
-	if (!ret)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got updates with no reset (no description possible)");
-
-	/************************************************************/
-	egg_test_title (test, "reset client #2");
-	ret = pk_client_reset (client, &error);
-	if (!ret) {
-		egg_test_failed (test, "failed to reset: %s", error->message);
-		g_error_free (error);
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "search for power");
-	ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", &error);
-	if (!ret) {
-		egg_test_failed (test, "failed: %s", error->message);
-		g_error_free (error);
-	}
-
-	/* get size */
-	list = pk_client_get_package_list (client);
-	size = pk_package_list_get_size (list);
-	g_object_unref (list);
-	if (size == 0)
-		egg_test_failed (test, "failed: to get any results");
-	egg_test_success (test, "search name with %i entries", size);
-
-	/************************************************************/
-	egg_test_title (test, "do lots of loops");
-	for (i=0;i<5;i++) {
-		ret = pk_client_reset (client, &error);
-		if (!ret) {
-			egg_test_failed (test, "failed: to reset: %s", error->message);
-			g_error_free (error);
-		}
-		ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", &error);
-		if (!ret) {
-			egg_test_failed (test, "failed to search: %s", error->message);
-			g_error_free (error);
-		}
-		/* check we got the same results */
-		list = pk_client_get_package_list (client);
-		size_new = pk_package_list_get_size (list);
-		g_object_unref (list);
-		if (size != size_new)
-			egg_test_failed (test, "old size %i, new size %i", size, size_new);
-	}
-	egg_test_success (test, "%i search name loops completed in %ims", i, egg_test_elapsed (test));
-	g_object_unref (client);
-
-	/************************************************************/
-	egg_test_title (test, "try to clone");
-
-	/* set up the source */
-	client = pk_client_new ();
-	g_signal_connect (client, "finished",
-			  G_CALLBACK (pk_client_test_copy_finished_cb), test);
-	/* set up the copy */
-	client_copy = pk_client_new ();
-	g_signal_connect (client_copy, "package",
-			  G_CALLBACK (pk_client_test_copy_package_cb), test);
-
-	/* search with the source */
-	ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", &error);
-	if (!ret) {
-		egg_test_failed (test, "failed: %s", error->message);
-		g_error_free (error);
-	}
-
-	/* get the tid */
-	tid = pk_client_get_tid (client);
-	if (tid == NULL)
-		egg_test_failed (test, "failed to get tid");
-
-	/* set the tid on the copy */
-	ret = pk_client_set_tid (client_copy, tid, &error);
-	if (!ret) {
-		egg_test_failed (test, "failed to set tid: %s", error->message);
-		g_error_free (error);
-		error = NULL;
-	}
-	g_free (tid);
-
-	egg_test_loop_wait (test, 5000);
-	if (clone_packages != size_new)
-		egg_test_failed (test, "failed to get correct number of packages: %i", clone_packages);
-	egg_test_success (test, "cloned in %i", egg_test_elapsed (test));
-
-	/************************************************************/
-	egg_test_title (test, "cancel a finished task");
-	ret = pk_client_cancel (client, &error);
-	if (ret) {
-		if (error != NULL)
-			egg_test_failed (test, "error set and retval true");
-		egg_test_success (test, "did not cancel finished task");
-	} else {
-		egg_test_failed (test, "error %s", error->message);
-		g_error_free (error);
-	}
-
-	/************************************************************/
-	egg_test_title (test, "ensure task still has correct role after cancel");
-	pk_client_get_role (client, &role, NULL, NULL);
-	if (role == PK_ROLE_ENUM_SEARCH_NAME)
-		egg_test_success (test, "did not cancel finished task");
-	else
-		egg_test_failed (test, "role was %s", pk_role_enum_to_text (role));
-
-	g_object_unref (client);
-	g_object_unref (client_copy);
-
-	/************************************************************/
-	egg_test_title (test, "set a made up TID");
-	client = pk_client_new ();
-	ret = pk_client_set_tid (client, "/made_up_tid", &error);
-	if (ret) {
-		if (error != NULL)
-			egg_test_failed (test, "error set and retval true");
-		egg_test_success (test, NULL);
-	} else {
-		if (error == NULL)
-			egg_test_failed (test, "error not set and retval false");
-		egg_test_failed (test, "error %s", error->message);
-		g_error_free (error);
-		error = NULL;
-	}
-
-	/************************************************************/
-	egg_test_title (test, "cancel a non running task");
-	ret = pk_client_cancel (client, &error);
-	if (ret) {
-		if (error != NULL)
-			egg_test_failed (test, "error set and retval true");
-		egg_test_success (test, "did not cancel non running task");
-	} else {
-		if (error == NULL)
-			egg_test_failed (test, "error not set and retval false");
-		egg_test_failed (test, "error %s", error->message);
-		g_error_free (error);
-		error = NULL;
-	}
-	g_object_unref (client);
-
-	/************************************************************
-	 ****************         TIMEOUTS         ******************
-	 ************************************************************/
-	client = pk_client_new ();
-	g_signal_connect (client, "finished",
-			  G_CALLBACK (pk_client_test_copy_finished_cb), test);
-	client_copy = pk_client_new ();
-	g_signal_connect (client_copy, "finished",
-			  G_CALLBACK (pk_client_test_copy_finished_cb), test);
-
-	/************************************************************/
-	egg_test_title (test, "set timeout");
-	ret = pk_client_set_timeout (client, 0, NULL);
-	if (ret)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed to set timout");
-
-	/************************************************************/
-	egg_test_title (test, "set timeout on copy");
-	ret = pk_client_set_timeout (client_copy, 500, NULL);
-	if (ret)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed to set timout");
-
-	/************************************************************/
-	egg_test_title (test, "set timeout (2)");
-	ret = pk_client_set_timeout (client, 1000, NULL);
-	if (!ret)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "set timeout when already set");
-
-	/************************************************************/
-	egg_test_title (test, "reset client, to clear timeout");
-	ret = pk_client_reset (client, NULL);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "set timeout");
-	ret = pk_client_set_timeout (client, 0, NULL);
-	if (ret)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed to set timout");
-
-	/************************************************************/
-	egg_test_title (test, "do first task (which will fail after 500ms)");
-	ret = pk_client_search_name (client_copy, PK_FILTER_ENUM_NONE, "power", &error);
-	if (ret) {
-		egg_test_success (test, NULL);
-	} else {
-		egg_test_failed (test, "failed: %s", error->message);
-		g_error_free (error);
-	}
-
-	/************************************************************/
-	egg_test_title (test, "do second task which should fail outright");
-	ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", &error);
-	if (!ret) {
-		egg_test_success (test, "failed (in a good way): %s", error->message);
-		g_error_free (error);
-	} else {
-		egg_test_failed (test, "suceeded, which was bad");
-	}
-
-	/* 500ms plus breathing room */
-	egg_test_loop_wait (test, 600);
-
-	g_object_unref (client);
-
-out:
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-client.h b/lib/packagekit-glib/pk-client.h
deleted file mode 100644
index 4fb3b0c..0000000
--- a/lib/packagekit-glib/pk-client.h
+++ /dev/null
@@ -1,393 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_CLIENT_H
-#define __PK_CLIENT_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-bitfield.h>
-#include <packagekit-glib/pk-package-list.h>
-#include <packagekit-glib/pk-update-detail-obj.h>
-#include <packagekit-glib/pk-details-obj.h>
-#include <packagekit-glib/pk-category-obj.h>
-#include <packagekit-glib/pk-transaction-obj.h>
-#include <packagekit-glib/pk-require-restart-obj.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_CLIENT		(pk_client_get_type ())
-#define PK_CLIENT(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_CLIENT, PkClient))
-#define PK_CLIENT_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_CLIENT, PkClientClass))
-#define PK_IS_CLIENT(o)	 	(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_CLIENT))
-#define PK_IS_CLIENT_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_CLIENT))
-#define PK_CLIENT_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_CLIENT, PkClientClass))
-#define PK_CLIENT_ERROR	 	(pk_client_error_quark ())
-#define PK_CLIENT_TYPE_ERROR	(pk_client_error_get_type ())
-
-/**
- * PK_CLIENT_PERCENTAGE_INVALID:
- *
- * The unknown percentage value
- */
-#define PK_CLIENT_PERCENTAGE_INVALID	101
-
-/**
- * PkClientError:
- * @PK_CLIENT_ERROR_FAILED: the transaction failed for an unknown reason
- * @PK_CLIENT_ERROR_NO_TID: the transaction id was not pre-allocated (internal error)
- * @PK_CLIENT_ERROR_ALREADY_TID: the transaction id has already been used (internal error)
- * @PK_CLIENT_ERROR_ROLE_UNKNOWN: the role was not set (internal error)
- * @PK_CLIENT_ERROR_INVALID_INPUT: the package_id is invalid
- *
- * Errors that can be thrown
- */
-typedef enum
-{
-	PK_CLIENT_ERROR_FAILED,
-	PK_CLIENT_ERROR_FAILED_AUTH,
-	PK_CLIENT_ERROR_NO_TID,
-	PK_CLIENT_ERROR_ALREADY_TID,
-	PK_CLIENT_ERROR_ROLE_UNKNOWN,
-	PK_CLIENT_ERROR_CANNOT_START_DAEMON,
-	PK_CLIENT_ERROR_INVALID_INPUT,
-	PK_CLIENT_ERROR_INVALID_FILE,
-	PK_CLIENT_ERROR_NOT_SUPPORTED
-} PkClientError;
-
-typedef struct _PkClientPrivate		PkClientPrivate;
-typedef struct _PkClient		PkClient;
-typedef struct _PkClientClass		PkClientClass;
-
-struct _PkClient
-{
-	GObject		 parent;
-	PkClientPrivate	*priv;
-};
-
-struct _PkClientClass
-{
-	GObjectClass	parent_class;
-	/* Signals */
-	void		(* status_changed)		(PkClient	*client,
-							 PkStatusEnum	 status);
-	void		(* progress_changed)		(PkClient	*client,
-							 guint		 percentage,
-							 guint		 subpercentage,
-							 guint		 elapsed,
-							 guint		 remaining);
-	void		(* package)			(PkClient	*client,
-							 PkPackageObj	*obj);
-	void		(* transaction)			(PkClient	*client,
-							 PkTransactionObj *obj);
-	void		(* distro_upgrade)		(PkClient	*client,
-							 PkUpdateStateEnum type,
-							 const gchar	*name,
-							 const gchar	*summary);
-	void		(* update_detail)		(PkClient	*client,
-							 PkUpdateDetailObj	*update_detail);
-	void		(* details)			(PkClient	*client,
-							 PkDetailsObj	*package_detail);
-	void		(* files)			(PkClient	*client,
-							 const gchar	*package_id,
-							 const gchar	*filelist);
-	void		(* repo_signature_required)	(PkClient	*client,
-							 const gchar	*package_id,
-							 const gchar	*repository_name,
-							 const gchar	*key_url,
-							 const gchar	*key_userid,
-							 const gchar	*key_id,
-							 const gchar	*key_fingerprint,
-							 const gchar	*key_timestamp,
-							 PkSigTypeEnum	 type);
-	void		(* eula_required)		(PkClient	*client,
-							 const gchar	*eula_id,
-							 const gchar	*package_id,
-							 const gchar	*vendor_name,
-							 const gchar	*license_agreement);
-	void		(* repo_detail)			(PkClient	*client,
-							 const gchar	*repo_id,
-							 const gchar	*description,
-							 gboolean	 enabled);
-	void		(* error_code)			(PkClient	*client,
-							 PkErrorCodeEnum code,
-							 const gchar	*details);
-	void		(* require_restart)		(PkClient	*client,
-							 PkRequireRestartObj	*require_restart);
-	void		(* message)			(PkClient	*client,
-							 PkMessageEnum	 message,
-							 const gchar	*details);
-	void		(* allow_cancel)		(PkClient	*client,
-							 gboolean	 allow_cancel);
-	void		(* caller_active_changed)	(PkClient	*client,
-							 gboolean	 is_active);
-	void		(* finished)			(PkClient	*client,
-							 PkExitEnum	 exit,
-							 guint		 runtime);
-	void		(* category)			(PkClient	*client,
-							 PkCategoryObj	*obj);
-	void		(* media_change_required)	(PkClient	*client,
-							 PkMediaTypeEnum type,
-							 const gchar	*media_id,
-							 const gchar	*media_text);
-	void		(* destroy)			(PkClient	*client);
-	/* Padding for future expansion */
-	void (*_pk_reserved1) (void);
-	void (*_pk_reserved2) (void);
-	void (*_pk_reserved3) (void);
-};
-
-GQuark		 pk_client_error_quark			(void);
-GType		 pk_client_error_get_type		(void);
-
-GType		 pk_client_get_type			(void);
-PkClient	*pk_client_new				(void);
-
-gboolean	 pk_client_set_tid			(PkClient	*client,
-							 const gchar	*tid,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gchar		*pk_client_get_tid			(PkClient	*client);
-
-gboolean	 pk_client_set_use_buffer		(PkClient	*client,
-							 gboolean	 use_buffer,
-							 GError		**error);
-gboolean	 pk_client_set_synchronous		(PkClient	*client,
-							 gboolean	 synchronous,
-							 GError		**error);
-gboolean	 pk_client_set_only_trusted		(PkClient	*client,
-							 gboolean	 only_trusted);
-gboolean	 pk_client_set_timeout			(PkClient	*client,
-							 gint		 timeout,
-							 GError		**error);
-gboolean	 pk_client_get_use_buffer		(PkClient	*client);
-gboolean	 pk_client_get_allow_cancel		(PkClient	*client,
-							 gboolean	*allow_cancel,
-							 GError		**error);
-
-/* general methods */
-gboolean	 pk_client_get_status			(PkClient	*client,
-							 PkStatusEnum	*status,
-							 GError		**error);
-gboolean	 pk_client_get_role			(PkClient	*client,
-							 PkRoleEnum	*role,
-							 gchar		**text,
-							 GError		**error);
-gboolean	 pk_client_get_progress			(PkClient	*client,
-							 guint		*percentage,
-							 guint		*subpercentage,
-							 guint		*elapsed,
-							 guint		*remaining,
-							 GError		**error);
-gboolean	 pk_client_get_package			(PkClient	*client,
-							 gchar		**package,
-							 GError		**error);
-gboolean	 pk_client_set_locale			(PkClient	*client,
-							 const gchar	*code,
-							 GError		**error);
-gboolean	 pk_client_cancel			(PkClient	*client,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_download_packages		(PkClient	*client,
-							 gchar		**package_ids,
-							 const gchar	*directory,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_updates			(PkClient	*client,
-							 PkBitfield	 filters,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_update_system		(PkClient	*client,
-							 gboolean	 only_trusted,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_search_name			(PkClient	*client,
-							 PkBitfield	 filters,
-							 const gchar	*search,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_search_details		(PkClient	*client,
-							 PkBitfield	 filters,
-							 const gchar	*search,
-							 GError		**error);
-gboolean	 pk_client_search_group			(PkClient	*client,
-							 PkBitfield	 filters,
-							 const gchar	*search,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_search_file			(PkClient	*client,
-							 PkBitfield	 filters,
-							 const gchar	*search,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_depends			(PkClient	*client,
-							 PkBitfield	 filters,
-							 gchar		**package_ids,
-							 gboolean	 recursive,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_packages			(PkClient	*client,
-							 PkBitfield	 filters,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_update_detail		(PkClient	*client,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_requires			(PkClient	*client,
-							 PkBitfield	 filters,
-							 gchar		**package_ids,
-							 gboolean	 recursive,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_what_provides		(PkClient	*client,
-							 PkBitfield	 filters,
-							 PkProvidesEnum	 provides,
-							 const gchar	*search,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_details			(PkClient	*client,
-							 gchar		**package_ids,
-							 GError		**error);
-gboolean	 pk_client_get_distro_upgrades		(PkClient	*client,
-							 GError		**error);
-gboolean	 pk_client_get_files			(PkClient	*client,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_categories		(PkClient	*client,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_remove_packages		(PkClient	*client,
-							 gchar		**package_ids,
-							 gboolean	 allow_deps,
-							 gboolean	 autoremove,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_refresh_cache		(PkClient	*client,
-							 gboolean	 force,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_install_packages		(PkClient	*client,
-							 gboolean	 only_trusted,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_install_signature		(PkClient	*client,
-							 PkSigTypeEnum	 type,
-							 const gchar	*key_id,
-							 const gchar	*package_id,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_update_packages		(PkClient	*client,
-							 gboolean	 only_trusted,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_install_files		(PkClient	*client,
-							 gboolean	 only_trusted,
-							 gchar		**files_rel,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_install_file			(PkClient	*client,
-							 gboolean	 only_trusted,
-							 const gchar	*file_rel,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_resolve			(PkClient	*client,
-							 PkBitfield	 filters,
-							 gchar		**packages,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_rollback			(PkClient	*client,
-							 const gchar	*transaction_id,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_requeue			(PkClient	*client,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_accept_eula			(PkClient	*client,
-							 const gchar	*eula_id,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-
-/* repo stuff */
-gboolean	 pk_client_get_repo_list		(PkClient	*client,
-							 PkBitfield	 filters,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_repo_enable			(PkClient	*client,
-							 const gchar	*repo_id,
-							 gboolean	 enabled,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_repo_set_data		(PkClient	*client,
-							 const gchar	*repo_id,
-							 const gchar	*parameter,
-							 const gchar	*value,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-
-/* simulate stuff */
-gboolean	 pk_client_simulate_install_files	(PkClient	*client,
-							 gchar		**files_rel,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_simulate_install_packages	(PkClient	*client,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_simulate_remove_packages	(PkClient	*client,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_simulate_update_packages	(PkClient	*client,
-							 gchar		**package_ids,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-
-/* cached stuff */
-PkPackageList	*pk_client_get_package_list		(PkClient	*client);
-PkRestartEnum	 pk_client_get_require_restart		(PkClient	*client);
-PkObjList	*pk_client_get_require_restart_list	(PkClient	*client);
-PkObjList	*pk_client_get_category_list		(PkClient	*client);
-PkObjList	*pk_client_get_distro_upgrade_list	(PkClient	*client);
-PkObjList	*pk_client_get_transaction_list		(PkClient	*client);
-
-/* not job specific */
-gboolean	 pk_client_reset			(PkClient	*client,
-							 GError		**error)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_client_get_old_transactions		(PkClient	*client,
-							 guint		 number,
-							 GError		**error);
-gboolean	 pk_client_is_caller_active		(PkClient	*client,
-							 gboolean	*is_active,
-							 GError		**error);
-
-G_END_DECLS
-
-#endif /* __PK_CLIENT_H */
-
diff --git a/lib/packagekit-glib/pk-common.c b/lib/packagekit-glib/pk-common.c
deleted file mode 100644
index 3eac756..0000000
--- a/lib/packagekit-glib/pk-common.c
+++ /dev/null
@@ -1,782 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-common
- * @short_description: Common utility functions for PackageKit
- *
- * This file contains functions that may be useful.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <string.h>
-#include <sys/types.h>
-#include <sys/utsname.h>
-#include <sys/stat.h>
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <glib/gi18n.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-enum.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-/**
- * pk_get_os_release:
- *
- * Return value: The current OS release, e.g. "7.2-RELEASE"
- * Note: Don't use this function if you can get this data from /etc/foo
- **/
-static gchar *
-pk_get_os_release (void)
-{
-	gint retval;
-	struct utsname buf;
-
-	retval = uname (&buf);
-	if (retval != 0)
-		return g_strdup ("unknown");
-	return g_strdup (buf.release);
-}
-
-/**
- * pk_get_machine_type:
- *
- * Return value: The current machine ID, e.g. "i386"
- * Note: Don't use this function if you can get this data from /etc/foo
- **/
-static gchar *
-pk_get_machine_type (void)
-{
-	gint retval;
-	struct utsname buf;
-
-	retval = uname (&buf);
-	if (retval != 0)
-		return g_strdup ("unknown");
-	return g_strdup (buf.machine);
-}
-
-/**
- * pk_get_distro_id:
- *
- * Return value: The current distro-id, e.g. fedora-8-i386, or %NULL for an
- * error or not known
- **/
-gchar *
-pk_get_distro_id (void)
-{
-	guint i;
-	gboolean ret;
-	gchar *contents = NULL;
-	gchar *distro = NULL;
-	gchar *arch = NULL;
-	gchar *version = NULL;
-	gchar **split = NULL;
-
-	/* check for fedora */
-	ret = g_file_get_contents ("/etc/fedora-release", &contents, NULL, NULL);
-	if (ret) {
-		/* Fedora release 8.92 (Rawhide) */
-		split = g_strsplit (contents, " ", 0);
-		if (split == NULL)
-			goto out;
-
-		/* we can't get arch from /etc */
-		arch = pk_get_machine_type ();
-		if (arch == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("fedora-%s-%s", split[2], arch);
-		goto out;
-	}
-
-	/* check for suse */
-	ret = g_file_get_contents ("/etc/SuSE-release", &contents, NULL, NULL);
-	if (ret) {
-		/* replace with spaces: openSUSE 11.0 (i586) Alpha3\nVERSION = 11.0 */
-		g_strdelimit (contents, "()\n", ' ');
-
-		/* openSUSE 11.0  i586  Alpha3 VERSION = 11.0 */
-		split = g_strsplit (contents, " ", 0);
-		if (split == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("suse-%s-%s", split[1], split[3]);
-		goto out;
-	}
-
-	/* check for foresight or foresight derivatives */
-	ret = g_file_get_contents ("/etc/distro-release", &contents, NULL, NULL);
-	if (ret) {
-		/* Foresight Linux 2 */
-		split = g_strsplit (contents, " ", 0);
-		if (split == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("foresight-%s", split[2]);
-		goto out;
-	}
-
-	/* check for PLD */
-	ret = g_file_get_contents ("/etc/pld-release", &contents, NULL, NULL);
-	if (ret) {
-		/* 2.99 PLD Linux (Th) */
-		split = g_strsplit (contents, " ", 0);
-		if (split == NULL)
-			goto out;
-
-		/* we can't get arch from /etc */
-		arch = pk_get_machine_type ();
-		if (arch == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("pld-%s-%s", split[0], arch);
-		goto out;
-	}
-
-	/* check for Arch */
-	ret = g_file_test ("/etc/arch-release", G_FILE_TEST_EXISTS);
-	if (ret) {
-		/* we can't get arch from /etc */
-		arch = pk_get_machine_type ();
-		if (arch == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("arch-current-%s", arch);
-		goto out;
-	}
-
-	/* check for LSB */
-	ret = g_file_get_contents ("/etc/lsb-release", &contents, NULL, NULL);
-	if (ret) {
-		/* we can't get arch from /etc */
-		arch = pk_get_machine_type ();
-		if (arch == NULL)
-			goto out;
-
-		/* split by lines */
-		split = g_strsplit (contents, "\n", -1);
-		for (i=0; split[i] != NULL; i++) {
-			if (g_str_has_prefix (split[i], "DISTRIB_ID="))
-				distro = g_ascii_strdown (&split[i][11], -1);
-			if (g_str_has_prefix (split[i], "DISTRIB_RELEASE="))
-				version = g_ascii_strdown (&split[i][16], -1);
-		}
-
-		/* complete! */
-		distro = g_strdup_printf ("%s-%s-%s", distro, version, arch);
-		goto out;
-	}
-
-	/* check for Debian or Debian derivatives */
-	ret = g_file_get_contents ("/etc/debian_version", &contents, NULL, NULL);
-	if (ret) {
-		/* remove "\n": "squeeze/sid\n" */
-		g_strdelimit (contents, "\n", '\0');
-		/* removes leading and trailing whitespace */
-		g_strstrip (contents);
-
-		/* complete! */
-		distro = g_strdup_printf ("debian-(%s)", contents);
-		goto out;
-	}
-
-	/* check for Slackware */
-	ret = g_file_get_contents ("/etc/slackware-version", &contents, NULL, NULL);
-	if (ret) {
-		/* Slackware 13.0.0.0.0 */
-		split = g_strsplit (contents, " ", 0);
-		if (split == NULL)
-			goto out;
-
-		/* we can't get arch from /etc */
-		arch = pk_get_machine_type ();
-		if (arch == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("slackware-%s-%s", split[1], arch);
-		goto out;
-	}
-
-#ifdef __FreeBSD__
-	ret = TRUE;
-#endif
-	/* FreeBSD */
-	if (ret) {
-		/* we can't get version from /etc */
-		version = pk_get_os_release ();
-		if (version == NULL)
-			goto out;
-
-		/* 7.2-RELEASE */
-		split = g_strsplit (version, "-", 0);
-		if (split == NULL)
-			goto out;
-
-		/* we can't get arch from /etc */
-		arch = pk_get_machine_type ();
-		if (arch == NULL)
-			goto out;
-
-		/* complete! */
-		distro = g_strdup_printf ("freebsd-%s-%s", split[0], arch);
-		goto out;
-	}
-out:
-	g_strfreev (split);
-	g_free (version);
-	g_free (arch);
-	g_free (contents);
-	return distro;
-}
-
-/**
- * pk_iso8601_present:
- *
- * Return value: The current iso8601 date and time
- **/
-gchar *
-pk_iso8601_present (void)
-{
-	GTimeVal timeval;
-	gchar *timespec;
-
-	/* get current time */
-	g_get_current_time (&timeval);
-	timespec = g_time_val_to_iso8601 (&timeval);
-
-	return timespec;
-}
-
-/**
- * pk_iso8601_difference:
- * @isodate: The ISO8601 date to compare
- *
- * Return value: The difference in seconds between the iso8601 date and current
- **/
-guint
-pk_iso8601_difference (const gchar *isodate)
-{
-	GTimeVal timeval_then;
-	GTimeVal timeval_now;
-	gboolean ret;
-	guint time_s;
-
-	g_return_val_if_fail (isodate != NULL, 0);
-
-	/* convert date */
-	ret = g_time_val_from_iso8601 (isodate, &timeval_then);
-	if (!ret) {
-		egg_warning ("failed to parse '%s'", isodate);
-		return 0;
-	}
-	g_get_current_time (&timeval_now);
-
-	/* work out difference */
-	time_s = timeval_now.tv_sec - timeval_then.tv_sec;
-
-	return time_s;
-}
-
-/**
- * pk_iso8601_from_date:
- * @date: a %GDate to convert
- *
- * Return value: If valid then a new ISO8601 date, else NULL
- **/
-gchar *
-pk_iso8601_from_date (const GDate *date)
-{
-	gsize retval;
-	gchar iso_date[128];
-
-	if (date == NULL)
-		return NULL;
-	retval = g_date_strftime (iso_date, 128, "%F", date);
-	if (retval == 0)
-		return NULL;
-	return g_strdup (iso_date);
-}
-
-/**
- * pk_iso8601_to_date:
- * @iso_date: The ISO8601 date to convert
- *
- * Return value: If valid then a new %GDate, else NULL
- **/
-GDate *
-pk_iso8601_to_date (const gchar *iso_date)
-{
-	gboolean ret;
-	guint retval;
-	guint d = 0;
-	guint m = 0;
-	guint y = 0;
-	GTimeVal time_val;
-	GDate *date = NULL;
-
-	if (egg_strzero (iso_date))
-		goto out;
-
-	/* try to parse complete ISO8601 date */
-	ret = g_time_val_from_iso8601 (iso_date, &time_val);
-	if (ret) {
-		date = g_date_new ();
-		g_date_set_time_val (date, &time_val);
-		goto out;
-	}
-
-	/* g_time_val_from_iso8601() blows goats and won't
-	 * accept a valid ISO8601 formatted date without a
-	 * time value - try and parse this case */
-	retval = sscanf (iso_date, "%u-%u-%u", &y, &m, &d);
-	if (retval != 3) {
-		egg_warning ("could not parse '%s'", iso_date);
-		goto out;
-	}
-
-	/* check it's valid */
-	ret = g_date_valid_dmy (d, m, y);
-	if (!ret) {
-		egg_warning ("invalid date %i/%i/%i from '%s'", y, m, d, iso_date);
-		goto out;
-	}
-
-	/* create valid object */
-	date = g_date_new_dmy (d, m, y);
-out:
-	return date;
-}
-
-/**
- * pk_strvalidate_char:
- * @item: A single char to test
- *
- * Tests a char to see if it may be dangerous.
- *
- * Return value: %TRUE if the char is valid
- **/
-static gboolean
-pk_strvalidate_char (gchar item)
-{
-	switch (item) {
-	case '$':
-	case '`':
-	case '\'':
-	case '"':
-	case '^':
-	case '[':
-	case ']':
-	case '{':
-	case '}':
-	case '\\':
-	case '<':
-	case '>':
-		return FALSE;
-	}
-	return TRUE;
-}
-
-/**
- * pk_strsafe:
- * @text: The input text to make safe
- *
- * Replaces chars in the text that may be dangerous, or that may print
- * incorrectly. These chars include new lines, tabs and line feed, and are
- * replaced by spaces.
- *
- * Return value: the new string with no insane chars
- **/
-gchar *
-pk_strsafe (const gchar *text)
-{
-	gchar *text_safe;
-	gboolean ret;
-	const gchar *delimiters;
-
-	if (text == NULL)
-		return NULL;
-
-	/* is valid UTF8? */
-	ret = g_utf8_validate (text, -1, NULL);
-	if (!ret) {
-		egg_warning ("text '%s' was not valid UTF8!", text);
-		return NULL;
-	}
-
-	/* rip out any insane characters */
-	delimiters = "\\\f\r\t";
-	text_safe = g_strdup (text);
-	g_strdelimit (text_safe, delimiters, ' ');
-	return text_safe;
-}
-
-/**
- * pk_strvalidate:
- * @text: The text to check for validity
- *
- * Tests a string to see if it may be dangerous or invalid.
- *
- * Return value: %TRUE if the string is valid
- **/
-gboolean
-pk_strvalidate (const gchar *text)
-{
-	guint i;
-	guint length;
-
-	/* maximum size is 1024 */
-	length = egg_strlen (text, 1024);
-	if (length > 1024) {
-		egg_warning ("input too long: %u", length);
-		return FALSE;
-	}
-
-	for (i=0; i<length; i++) {
-		if (pk_strvalidate_char (text[i]) == FALSE) {
-			egg_warning ("invalid char '%c' in text!", text[i]);
-			return FALSE;
-		}
-	}
-	return TRUE;
-}
-
-/**
- * pk_ptr_array_to_strv:
- * @array: the GPtrArray of strings
- *
- * Form a composite string array of strings.
- * The data in the GPtrArray is copied.
- *
- * Return value: the string array, or %NULL if invalid
- **/
-gchar **
-pk_ptr_array_to_strv (GPtrArray *array)
-{
-	gchar **value;
-	const gchar *value_temp;
-	guint i;
-
-	g_return_val_if_fail (array != NULL, NULL);
-
-	/* copy the array to a strv */
-	value = g_new0 (gchar *, array->len + 1);
-	for (i=0; i<array->len; i++) {
-		value_temp = (const gchar *) g_ptr_array_index (array, i);
-		value[i] = g_strdup (value_temp);
-	}
-
-	return value;
-}
-
-/**
- * pk_strv_to_ptr_array:
- * @array: the gchar** array of strings
- *
- * Form a GPtrArray array of strings.
- * The data in the array is copied.
- *
- * Return value: the string array, or %NULL if invalid
- **/
-GPtrArray *
-pk_strv_to_ptr_array (gchar **array)
-{
-	guint i;
-	guint length;
-	GPtrArray *parray;
-
-	g_return_val_if_fail (array != NULL, NULL);
-
-	parray = g_ptr_array_new ();
-	length = g_strv_length (array);
-	for (i=0; i<length; i++)
-		g_ptr_array_add (parray, g_strdup (array[i]));
-	return parray;
-}
-
-/**
- * pk_va_list_to_argv:
- * @string_first: the first string
- * @args: any subsequant string's
- *
- * Form a composite string array of the va_list
- *
- * Return value: the string array, or %NULL if invalid
- **/
-gchar **
-pk_va_list_to_argv (const gchar *string_first, va_list *args)
-{
-	GPtrArray *ptr_array;
-	gchar **array;
-	gchar *value_temp;
-	guint i;
-
-	g_return_val_if_fail (args != NULL, NULL);
-	g_return_val_if_fail (string_first != NULL, NULL);
-
-	/* find how many elements we have in a temp array */
-	ptr_array = g_ptr_array_new ();
-	g_ptr_array_add (ptr_array, g_strdup (string_first));
-
-	/* process all the va_list entries */
-	for (i=0;; i++) {
-		value_temp = va_arg (*args, gchar *);
-		if (value_temp == NULL)
-			break;
-		g_ptr_array_add (ptr_array, g_strdup (value_temp));
-	}
-
-	/* convert the array to a strv type */
-	array = pk_ptr_array_to_strv (ptr_array);
-
-	/* get rid of the array, and free the contents */
-	g_ptr_array_foreach (ptr_array, (GFunc) g_free, NULL);
-	g_ptr_array_free (ptr_array, TRUE);
-	return array;
-}
-
-/**
- * pk_error_code_is_need_untrusted:
- * @error_code: the transactions #PkErrorCodeEnum
- *
- * Is this error could be handled with retrying with only_trusted %FALSE.
- *
- * Return value: if the error code suggests to try with only_trusted %FALSE
- **/
-gboolean
-pk_error_code_is_need_untrusted (PkErrorCodeEnum error_code)
-{
-	gboolean ret = FALSE;
-	switch (error_code) {
-		case PK_ERROR_ENUM_GPG_FAILURE:
-		case PK_ERROR_ENUM_BAD_GPG_SIGNATURE:
-		case PK_ERROR_ENUM_MISSING_GPG_SIGNATURE:
-		case PK_ERROR_ENUM_CANNOT_INSTALL_REPO_UNSIGNED:
-		case PK_ERROR_ENUM_CANNOT_UPDATE_REPO_UNSIGNED:
-			ret = TRUE;
-			break;
-		default:
-			break;
-	}
-	return ret;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-static gchar **
-pk_va_list_to_argv_test (const gchar *first_element, ...)
-{
-	va_list args;
-	gchar **array;
-
-	/* get the argument list */
-	va_start (args, first_element);
-	array = pk_va_list_to_argv (first_element, &args);
-	va_end (args);
-
-	return array;
-}
-
-void
-pk_common_test (gpointer user_data)
-{
-	EggTest *test = (EggTest *) user_data;
-	gboolean ret;
-	gchar **array;
-	gchar *text_safe;
-	gchar *present;
-	guint seconds;
-	GDate *date;
-
-	if (!egg_test_start (test, "PkCommon"))
-		return;
-
-	/************************************************************
-	 ****************        test distro-id        **************
-	 ************************************************************/
-	egg_test_title (test, "get distro id");
-	text_safe = pk_get_distro_id ();
-	if (text_safe != NULL)
-		egg_test_success (test, "distro_id=%s", text_safe);
-	else
-		egg_test_failed (test, NULL);
-	g_free (text_safe);
-
-	/************************************************************
-	 ****************      splitting va_list       **************
-	 ************************************************************/
-	egg_test_title (test, "va_list_to_argv single");
-	array = pk_va_list_to_argv_test ("richard", NULL);
-	if (g_strcmp0 (array[0], "richard") == 0 &&
-	    array[1] == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "incorrect array '%s'", array[0]);
-	g_strfreev (array);
-
-	/************************************************************/
-	egg_test_title (test, "va_list_to_argv triple");
-	array = pk_va_list_to_argv_test ("richard", "phillip", "hughes", NULL);
-	if (g_strcmp0 (array[0], "richard") == 0 &&
-	    g_strcmp0 (array[1], "phillip") == 0 &&
-	    g_strcmp0 (array[2], "hughes") == 0 &&
-	    array[3] == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "incorrect array '%s','%s','%s'", array[0], array[1], array[2]);
-	g_strfreev (array);
-
-	/************************************************************
-	 ****************        validate text         **************
-	 ************************************************************/
-	egg_test_title (test, "validate correct char 1");
-	ret = pk_strvalidate_char ('a');
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "validate correct char 2");
-	ret = pk_strvalidate_char ('~');
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "validate incorrect char");
-	ret = pk_strvalidate_char ('$');
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "validate incorrect text");
-	ret = pk_strvalidate ("richard$hughes");
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "validate correct text");
-	ret = pk_strvalidate ("richardhughes");
-	egg_test_assert (test, ret);
-
-	/************************************************************
-	 ****************       REPLACE CHARS      ******************
-	 ************************************************************/
-	egg_test_title (test, "test replace unsafe (okay)");
-	text_safe = pk_strsafe ("Richard Hughes");
-	if (g_strcmp0 (text_safe, "Richard Hughes") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed the replace unsafe '%s'", text_safe);
-	g_free (text_safe);
-
-	/************************************************************/
-	egg_test_title (test, "test replace UTF8 unsafe (okay)");
-	text_safe = pk_strsafe ("Gölas");
-	if (g_strcmp0 (text_safe, "Gölas") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed the replace unsafe '%s'", text_safe);
-	g_free (text_safe);
-
-	/************************************************************/
-	egg_test_title (test, "test replace unsafe (one invalid)");
-	text_safe = pk_strsafe ("Richard\rHughes");
-	if (g_strcmp0 (text_safe, "Richard Hughes") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed the replace unsafe '%s'", text_safe);
-	g_free (text_safe);
-
-	/************************************************************/
-	egg_test_title (test, "test replace unsafe (multiple invalid)");
-	text_safe = pk_strsafe (" Richard\rHughes\f");
-	if (g_strcmp0 (text_safe, " Richard Hughes ") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "failed the replace unsafe '%s'", text_safe);
-	g_free (text_safe);
-
-	/************************************************************
-	 **************            iso8601           ****************
-	 ************************************************************/
-	egg_test_title (test, "get present iso8601");
-	present = pk_iso8601_present ();
-	if (present != NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "present is NULL");
-
-	g_usleep (2000000);
-
-	/************************************************************/
-	egg_test_title (test, "get difference in iso8601");
-	seconds = pk_iso8601_difference (present);
-	if (seconds == 2)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "seconds is wrong, %i", seconds);
-
-	/************************************************************/
-	g_free (present);
-
-
-	/************************************************************
-	 **************        Date handling         ****************
-	 ************************************************************/
-	egg_test_title (test, "zero length date");
-	date = pk_iso8601_to_date ("");
-	egg_test_assert (test, (date == NULL));
-
-	/************************************************************/
-	egg_test_title (test, "no day specified");
-	date = pk_iso8601_to_date ("2004-01");
-	egg_test_assert (test, (date == NULL));
-
-	/************************************************************/
-	egg_test_title (test, "date _and_ time specified");
-	date = pk_iso8601_to_date ("2009-05-08 13:11:12");
-	egg_test_assert (test, (date->day == 8 && date->month == 5 && date->year == 2009));
-	g_date_free (date);
-
-	/************************************************************/
-	egg_test_title (test, "correct date format");
-	date = pk_iso8601_to_date ("2004-02-01");
-	egg_test_assert (test, (date->day == 1 && date->month == 2 && date->year == 2004));
-	g_date_free (date);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-common.h b/lib/packagekit-glib/pk-common.h
deleted file mode 100644
index 104bbc1..0000000
--- a/lib/packagekit-glib/pk-common.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_COMMON_H
-#define __PK_COMMON_H
-
-#include <glib-object.h>
-#include "pk-enum.h"
-
-G_BEGIN_DECLS
-
-/**
- * PK_DBUS_SERVICE:
- *
- * The SYSTEM service DBUS name
- */
-#define	PK_DBUS_SERVICE			"org.freedesktop.PackageKit"
-
-/**
- * PK_DBUS_PATH:
- *
- * The DBUS path
- */
-#define	PK_DBUS_PATH			"/org/freedesktop/PackageKit"
-
-/**
- * PK_DBUS_INTERFACE:
- *
- * The DBUS interface
- */
-#define	PK_DBUS_INTERFACE		"org.freedesktop.PackageKit"
-
-/**
- * PK_DBUS_INTERFACE_TRANSACTION:
- *
- * The DBUS interface for the transactions
- */
-#define	PK_DBUS_INTERFACE_TRANSACTION	"org.freedesktop.PackageKit.Transaction"
-
-/**
- * PK_SERVICE_PACK_GROUP_NAME:
- *
- * The group name of the Service Pack config file
- */
-#define	PK_SERVICE_PACK_GROUP_NAME	"PackageKit Service Pack"
-
-/**
- * PK_PACKAGE_LIST_FILENAME:
- *
- * The default location of the package list
- */
-#define	PK_SYSTEM_PACKAGE_LIST_FILENAME	"/var/lib/PackageKit/system.package-list"
-
-void		 pk_common_test				(gpointer	 user_data);
-gboolean	 pk_strvalidate				(const gchar	*text)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gchar		*pk_strsafe				(const gchar	*text)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gchar		**pk_ptr_array_to_strv			(GPtrArray	*array)
-							 G_GNUC_WARN_UNUSED_RESULT;
-GPtrArray	*pk_strv_to_ptr_array			(gchar		**array)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gchar		**pk_va_list_to_argv			(const gchar	*string_first,
-							 va_list	*args)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gchar		*pk_iso8601_present			(void)
-							 G_GNUC_WARN_UNUSED_RESULT;
-guint		 pk_iso8601_difference			(const gchar	*isodate);
-gchar		*pk_iso8601_from_date			(const GDate	*date);
-GDate		*pk_iso8601_to_date			(const gchar	*iso_date);
-gchar		*pk_get_distro_id			(void)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_error_code_is_need_untrusted	(PkErrorCodeEnum error_code);
-
-G_END_DECLS
-
-#endif /* __PK_COMMON_H */
diff --git a/lib/packagekit-glib/pk-connection.c b/lib/packagekit-glib/pk-connection.c
deleted file mode 100644
index 9737d40..0000000
--- a/lib/packagekit-glib/pk-connection.c
+++ /dev/null
@@ -1,229 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-connection
- * @short_description: Functionality to see when packagekid starts and stops
- *
- * This file contains functions that can be used to see when packagekitd starts
- * and stops.
- */
-
-#ifdef HAVE_CONFIG_H
-#  include "config.h"
-#endif
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <glib/gi18n.h>
-#include <dbus/dbus-glib.h>
-#include <dbus/dbus-glib-lowlevel.h>
-#include <dbus/dbus.h>
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-connection.h>
-
-#include "egg-debug.h"
-
-#define PK_CONNECTION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_CONNECTION, PkConnectionPrivate))
-
-/**
- * PkConnectionPrivate:
- *
- * Private #PkConnection data
- **/
-struct _PkConnectionPrivate
-{
-	DBusGProxy		*proxy;
-	DBusGConnection		*connection;
-};
-
-enum {
-	CONNECTION_CHANGED,
-	LAST_SIGNAL
-};
-
-static guint signals [LAST_SIGNAL] = { 0 };
-static gpointer pk_connection_object = NULL;
-
-G_DEFINE_TYPE (PkConnection, pk_connection, G_TYPE_OBJECT)
-
-/**
- * pk_connection_valid:
- * @connection: a valid #PkConnection instance
- *
- * Return value: %TRUE if packagekitd is running
- **/
-gboolean
-pk_connection_valid (PkConnection *connection)
-{
-	DBusError error;
-	DBusConnection *conn;
-	gboolean ret;
-	g_return_val_if_fail (PK_IS_CONNECTION (connection), FALSE);
-
-	/* get raw connection */
-	conn = dbus_g_connection_get_connection (connection->priv->connection);
-	dbus_error_init (&error);
-	ret = dbus_bus_name_has_owner (conn, PK_DBUS_SERVICE, &error);
-	if (dbus_error_is_set (&error)) {
-		egg_debug ("error: %s", error.message);
-		dbus_error_free (&error);
-	}
-
-	return ret;
-}
-
-/**
- * egg_dbus_connection_name_owner_changed_cb:
- **/
-static void
-egg_dbus_connection_name_owner_changed_cb (DBusGProxy *proxy, const gchar *name,
-				       const gchar *prev, const gchar *new,
-				       PkConnection *connection)
-{
-	guint new_len;
-	guint prev_len;
-
-	g_return_if_fail (PK_IS_CONNECTION (connection));
-	if (connection->priv->proxy == NULL)
-		return;
-
-	/* not us */
-	if (strcmp (name, PK_DBUS_SERVICE) != 0)
-		return;
-
-	/* ITS4: ignore, not used for allocation */
-	new_len = strlen (new);
-	/* ITS4: ignore, not used for allocation */
-	prev_len = strlen (prev);
-
-	/* something --> nothing */
-	if (prev_len != 0 && new_len == 0) {
-		g_signal_emit (connection , signals [CONNECTION_CHANGED], 0, FALSE);
-		return;
-	}
-
-	/* nothing --> something */
-	if (prev_len == 0 && new_len != 0) {
-		g_signal_emit (connection , signals [CONNECTION_CHANGED], 0, TRUE);
-		return;
-	}
-}
-
-/**
- * pk_connection_finalize:
- **/
-static void
-pk_connection_finalize (GObject *object)
-{
-	PkConnection *connection;
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_CONNECTION (object));
-	connection = PK_CONNECTION (object);
-	g_return_if_fail (connection->priv != NULL);
-
-	/* disconnect signal handlers */
-	dbus_g_proxy_disconnect_signal (connection->priv->proxy, "NameOwnerChanged",
-				        G_CALLBACK (egg_dbus_connection_name_owner_changed_cb), connection);
-
-	g_object_unref (connection->priv->proxy);
-
-	G_OBJECT_CLASS (pk_connection_parent_class)->finalize (object);
-}
-
-/**
- * pk_connection_class_init:
- **/
-static void
-pk_connection_class_init (PkConnectionClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize	   = pk_connection_finalize;
-
-	signals [CONNECTION_CHANGED] =
-		g_signal_new ("connection-changed",
-			      G_TYPE_FROM_CLASS (object_class),
-			      G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkConnectionClass, connection_changed),
-			      NULL,
-			      NULL,
-			      g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-
-	g_type_class_add_private (klass, sizeof (PkConnectionPrivate));
-}
-
-/**
- * pk_connection_init:
- **/
-static void
-pk_connection_init (PkConnection *connection)
-{
-	GError *error = NULL;
-	connection->priv = PK_CONNECTION_GET_PRIVATE (connection);
-
-	/* connect to correct bus */
-	connection->priv->connection = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
-	if (error != NULL) {
-		egg_warning ("Cannot connect to bus: %s", error->message);
-		g_error_free (error);
-		return;
-	}
-	connection->priv->proxy = dbus_g_proxy_new_for_name_owner (connection->priv->connection,
-								   DBUS_SERVICE_DBUS, DBUS_PATH_DBUS,
-								   DBUS_INTERFACE_DBUS, &error);
-	if (error != NULL) {
-		egg_warning ("Cannot connect to proxy: %s", error->message);
-		g_error_free (error);
-		return;
-	}
-	dbus_g_proxy_add_signal (connection->priv->proxy, "NameOwnerChanged",
-				 G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (connection->priv->proxy, "NameOwnerChanged",
-				     G_CALLBACK (egg_dbus_connection_name_owner_changed_cb),
-				     connection, NULL);
-}
-
-/**
- * pk_connection_new:
- *
- * Return value: A new #PkConnection instance
- **/
-PkConnection *
-pk_connection_new (void)
-{
-	if (pk_connection_object != NULL) {
-		g_object_ref (pk_connection_object);
-	} else {
-		pk_connection_object = g_object_new (PK_TYPE_CONNECTION, NULL);
-		g_object_add_weak_pointer (pk_connection_object, &pk_connection_object);
-	}
-	return PK_CONNECTION (pk_connection_object);
-}
-
diff --git a/lib/packagekit-glib/pk-connection.h b/lib/packagekit-glib/pk-connection.h
deleted file mode 100644
index c184f5a..0000000
--- a/lib/packagekit-glib/pk-connection.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_CONNECTION_H
-#define __PK_CONNECTION_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_CONNECTION		(pk_connection_get_type ())
-#define PK_CONNECTION(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_CONNECTION, PkConnection))
-#define PK_CONNECTION_CLASS(k)		(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_CONNECTION, PkConnectionClass))
-#define PK_IS_CONNECTION(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_CONNECTION))
-#define PK_IS_CONNECTION_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_CONNECTION))
-#define PK_CONNECTION_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_CONNECTION, PkConnectionClass))
-
-typedef struct _PkConnectionPrivate	PkConnectionPrivate;
-typedef struct _PkConnection		PkConnection;
-typedef struct _PkConnectionClass	PkConnectionClass;
-
-struct _PkConnection
-{
-	GObject		     parent;
-	PkConnectionPrivate *priv;
-};
-
-struct _PkConnectionClass
-{
-	GObjectClass	parent_class;
-	void		(* connection_changed)	(PkConnection	*connection,
-						 gboolean	 connected);
-};
-
-GType		 pk_connection_get_type		(void);
-PkConnection	*pk_connection_new		(void);
-
-gboolean	 pk_connection_valid		(PkConnection	*connection);
-
-G_END_DECLS
-
-#endif /* __PK_CONNECTION_H */
diff --git a/lib/packagekit-glib/pk-control.c b/lib/packagekit-glib/pk-control.c
deleted file mode 100644
index 66b133d..0000000
--- a/lib/packagekit-glib/pk-control.c
+++ /dev/null
@@ -1,1313 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <time.h>
-#include <errno.h>
-
-#include <string.h>
-#include <locale.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <sys/wait.h>
-#include <fcntl.h>
-
-#include <glib/gi18n.h>
-#include <glib/gprintf.h>
-#include <dbus/dbus-glib.h>
-
-#include <packagekit-glib/pk-control.h>
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-marshal.h>
-#include <packagekit-glib/pk-connection.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-version.h>
-
-#include "egg-debug.h"
-
-static void     pk_control_finalize	(GObject     *object);
-
-#define PK_CONTROL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_CONTROL, PkControlPrivate))
-
-/**
- * PkControlPrivate:
- *
- * Private #PkControl data
- **/
-struct _PkControlPrivate
-{
-	DBusGProxy		*proxy;
-	DBusGConnection		*connection;
-	PkConnection		*pconnection;
-	gchar			**array;
-	guint			 idle_id;
-	gboolean		 version_major;
-	gboolean		 version_minor;
-	gboolean		 version_micro;
-};
-
-enum {
-	PK_CONTROL_LOCKED,
-	PK_CONTROL_LIST_CHANGED,
-	PK_CONTROL_RESTART_SCHEDULE,
-	PK_CONTROL_UPDATES_CHANGED,
-	PK_CONTROL_REPO_LIST_CHANGED,
-	PK_CONTROL_NETWORK_STATE_CHANGED,
-	PK_CONTROL_LAST_SIGNAL
-};
-
-enum {
-	PROP_0,
-	PROP_VERSION_MAJOR,
-	PROP_VERSION_MINOR,
-	PROP_VERSION_MICRO,
-	PROP_LAST
-};
-
-static guint signals [PK_CONTROL_LAST_SIGNAL] = { 0 };
-static gpointer pk_control_object = NULL;
-
-G_DEFINE_TYPE (PkControl, pk_control, G_TYPE_OBJECT)
-
-/**
- * pk_control_error_quark:
- *
- * We are a clever GObject that sets errors
- *
- * Return value: Our personal error quark.
- **/
-GQuark
-pk_control_error_quark (void)
-{
-	static GQuark quark = 0;
-	if (!quark)
-		quark = g_quark_from_static_string ("pk_control_error");
-	return quark;
-}
-
-/**
- * pk_control_error_set:
- *
- * Sets the correct error code (if allowed) and print to the screen
- * as a warning.
- **/
-static gboolean
-pk_control_error_set (GError **error, gint code, const gchar *format, ...)
-{
-	va_list args;
-	gchar *buffer = NULL;
-	gboolean ret = TRUE;
-
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	va_start (args, format);
-	g_vasprintf (&buffer, format, args);
-	va_end (args);
-
-	/* dumb */
-	if (error == NULL) {
-		egg_warning ("No error set, so can't set: %s", buffer);
-		ret = FALSE;
-		goto out;
-	}
-
-	/* already set */
-	if (*error != NULL) {
-		egg_warning ("not NULL error!");
-		g_clear_error (error);
-	}
-
-	/* propogate */
-	g_set_error (error, PK_CONTROL_ERROR, code, "%s", buffer);
-
-out:
-	g_free(buffer);
-	return ret;
-}
-
-/**
- * pk_control_get_actions:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Actions are roles that the daemon can do with the current backend
- *
- * Return value: an enumerated list of the actions the backend supports
- **/
-PkBitfield
-pk_control_get_actions (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *actions;
-	PkBitfield roles_enum = 0;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_GROUP_ENUM_UNKNOWN);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetActions", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &actions,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("GetActions failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* convert to enumerated types */
-	roles_enum = pk_role_bitfield_from_text (actions);
-	g_free (actions);
-out:
-	return roles_enum;
-}
-
-/**
- * pk_control_set_proxy:
- * @control: a valid #PkControl instance
- * @proxy_http: a HTTP proxy string such as "username:password at server.lan:8080"
- * @proxy_ftp: a FTP proxy string such as "server.lan:8080"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Set a proxy on the PK daemon
- *
- * Return value: if we set the proxy successfully
- **/
-gboolean
-pk_control_set_proxy (PkControl *control, const gchar *proxy_http, const gchar *proxy_ftp, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_GROUP_ENUM_UNKNOWN);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "SetProxy", &error_local,
-				 G_TYPE_STRING, proxy_http,
-				 G_TYPE_STRING, proxy_ftp,
-				 G_TYPE_INVALID,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("SetProxy failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_control_get_groups:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * The group list is enumerated so it can be localised and have deep
- * integration with desktops.
- * This method allows a frontend to only display the groups that are supported.
- *
- * Return value: an enumerated list of the groups the backend supports
- **/
-PkBitfield
-pk_control_get_groups (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *groups;
-	PkBitfield groups_enum = 0;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_GROUP_ENUM_UNKNOWN);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetGroups", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &groups,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("GetGroups failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* convert to enumerated types */
-	groups_enum = pk_group_bitfield_from_text (groups);
-	g_free (groups);
-out:
-	return groups_enum;
-}
-
-/**
- * pk_control_get_mime_types:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * The MIME list is the supported package formats.
- *
- * Return value: an strv list of the formats the backend supports,
- * or %NULL if unknown
- **/
-gchar **
-pk_control_get_mime_types (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *type_str = NULL;
-	gchar **types = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), NULL);
-	g_return_val_if_fail (error == NULL || *error == NULL, NULL);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetMimeTypes", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &type_str,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("GetMimeTypes failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* convert to enumerated types */
-	types = g_strsplit (type_str, ";", 0);
-	g_free (type_str);
-out:
-	return types;
-}
-
-/**
- * pk_control_get_daemon_state:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * The engine state debugging output
- *
- * Return value: a string of debugging data of unspecified format
- **/
-gchar *
-pk_control_get_daemon_state (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *state = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), NULL);
-	g_return_val_if_fail (error == NULL || *error == NULL, NULL);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetDaemonState", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &state,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("GetDaemonState failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return state;
-}
-
-/**
- * pk_control_get_network_state:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Return value: an enumerated network state
- **/
-PkNetworkEnum
-pk_control_get_network_state (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *network_state;
-	PkNetworkEnum network_state_enum = PK_NETWORK_ENUM_UNKNOWN;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_NETWORK_ENUM_UNKNOWN);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetNetworkState", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &network_state,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("GetNetworkState failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* convert to enumerated types */
-	network_state_enum = pk_network_enum_from_text (network_state);
-	g_free (network_state);
-out:
-	return network_state_enum;
-}
-
-/**
- * pk_control_get_filters:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Filters are how the backend can specify what type of package is returned.
- *
- * Return value: an enumerated list of the filters the backend supports
- **/
-PkBitfield
-pk_control_get_filters (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *filters;
-	PkBitfield filters_enum = 0;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_FILTER_ENUM_UNKNOWN);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		egg_warning ("No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetFilters", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &filters,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		/* abort as the DBUS method failed */
-		egg_warning ("GetFilters failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* convert to enumerated types */
-	filters_enum = pk_filter_bitfield_from_text (filters);
-	g_free (filters);
-out:
-	return filters_enum;
-}
-
-/**
- * pk_control_get_backend_detail:
- * @control: a valid #PkControl instance
- * @name: the name of the backend
- * @author: the author of the backend
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * The backend detail is useful for the pk-backend-status program, or for
- * automatic bugreports.
- *
- * Return value: %TRUE if the daemon serviced the request
- **/
-gboolean
-pk_control_get_backend_detail (PkControl *control, gchar **name, gchar **author, GError **error)
-{
-	gboolean ret;
-	gchar *tname;
-	gchar *tauthor;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, "No proxy for manager");
-		return FALSE;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetBackendDetail", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &tname,
-				 G_TYPE_STRING, &tauthor,
-				 G_TYPE_INVALID, G_TYPE_INVALID);
-	if (!ret) {
-		egg_warning ("GetFilters failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		return FALSE;
-	}
-
-	/* copy needed bits */
-	if (name != NULL)
-		*name = tname;
-	else
-		g_free (tname);
-	/* copy needed bits */
-	if (author != NULL)
-		*author = tauthor;
-	else
-		g_free (tauthor);
-	return ret;
-}
-
-/**
- * pk_control_get_time_since_action:
- * @control: a valid #PkControl instance
- * @role: the role we are querying
- * @seconds: the number of seconds since the request was completed
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * We may want to know how long it has been since we refreshed the cache or
- * retrieved the update list.
- *
- * Return value: %TRUE if the daemon serviced the request
- **/
-gboolean
-pk_control_get_time_since_action (PkControl *control, PkRoleEnum role, guint *seconds, GError **error)
-{
-	gboolean ret;
-	const gchar *role_text;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	role_text = pk_role_enum_to_text (role);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, "No proxy for manager");
-		return FALSE;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetTimeSinceAction", &error_local,
-				 G_TYPE_STRING, role_text,
-				 G_TYPE_INVALID,
-				 G_TYPE_UINT, seconds,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		egg_warning ("GetTimeSinceAction failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-	}
-	return ret;
-}
-
-/**
- * pk_control_can_authorize:
- * @control: a valid #PkControl instance
- * @action_id: the action ID, e.g. "org.freedesktop.packagekit.system-update"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * We may want to know before we run a method if we are going to be denied,
- * accepted or challenged for authentication.
- *
- * Return value: the %PkAuthorizeEnum or %PK_AUTHORIZE_ENUM_UNKNOWN if the method failed
- */
-PkAuthorizeEnum
-pk_control_can_authorize (PkControl *control, const gchar *action_id, GError **error)
-{
-	gboolean ret = FALSE;
-	GError *error_local = NULL;
-	gchar *authorize = NULL;
-	PkAuthorizeEnum retval = PK_AUTHORIZE_ENUM_UNKNOWN;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), PK_AUTHORIZE_ENUM_UNKNOWN);
-	g_return_val_if_fail (error == NULL || *error == NULL, PK_AUTHORIZE_ENUM_UNKNOWN);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, "No proxy for manager");
-		goto out;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "CanAuthorize", &error_local,
-				 G_TYPE_STRING, action_id,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &authorize,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		egg_warning ("CanAuthorize failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* convert to enum */
-	retval = pk_authorize_type_enum_from_text (authorize);
-	if (retval == PK_AUTHORIZE_ENUM_UNKNOWN) {
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, "unexpected return value");
-		goto out;
-	}
-out:
-	g_free (authorize);
-	return retval;
-}
-
-/**
- * pk_control_set_locale:
- * @error: a %GError to put the error code and message in, or %NULL
- **/
-static gboolean
-pk_control_set_locale (PkControl *control, const gchar *tid, GError **error)
-{
-	PkClient *client;
-	gboolean ret;
-	gchar *locale; /* does not need to be freed */
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	client = pk_client_new ();
-	ret = pk_client_set_tid (client, tid, &error_local);
-	if (!ret) {
-		egg_warning ("failed to set the tid: %s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* get the session locale and set th transaction to be in this locale */
-	locale = setlocale (LC_ALL, NULL);
-	ret = pk_client_set_locale (client, locale, &error_local);
-	if (!ret) {
-		egg_warning ("SetLocale failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	g_object_unref (client);
-	return ret;
-}
-
-/**
- * pk_control_allocate_transaction_id:
- * @control: a valid #PkControl instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * We have to create a transaction ID then use it, as a one-step constructor
- * is inherently racey.
- *
- * Return value: %TRUE if we allocated a TID.
- **/
-gboolean
-pk_control_allocate_transaction_id (PkControl *control, gchar **tid, GError **error)
-{
-	gboolean ret;
-	gchar *tid_local = NULL;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* check to see if we have a valid proxy */
-	if (control->priv->proxy == NULL) {
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, "No proxy for GetTid");
-		return FALSE;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetTid", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRING, &tid_local,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		egg_warning ("GetTid failed :%s", error_local->message);
-		if (error_local->code == DBUS_GERROR_SPAWN_CHILD_EXITED)
-			pk_control_error_set (error, PK_CONTROL_ERROR_CANNOT_START_DAEMON, "cannot GetTid: %s", error_local->message);
-		else
-			pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* check we are not running new client tools with an old server */
-	if (g_strrstr (tid_local, ";") != NULL) {
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, "Incorrect path with ';' returned!");
-		ret = FALSE;
-		goto out;
-	}
-
-	/* automatically set the locale */
-	ret = pk_control_set_locale (control, tid_local, &error_local);
-	if (!ret) {
-		egg_warning ("GetTid failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* copy */
-	*tid = g_strdup (tid_local);
-	egg_debug ("Got tid: '%s'", tid_local);
-out:
-	g_free (tid_local);
-	return ret;
-}
-
-/**
- * pk_control_transaction_list_print:
- **/
-gboolean
-pk_control_transaction_list_print (PkControl *control)
-{
-	guint i;
-	gchar *tid;
-	guint length;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), FALSE);
-
-	length = g_strv_length (control->priv->array);
-	if (length == 0)
-		return TRUE;
-	egg_debug ("jobs:");
-	for (i=0; i<length; i++) {
-		tid = control->priv->array[i];
-		egg_debug ("%s", tid);
-	}
-	return TRUE;
-}
-
-/**
- * pk_control_transaction_list_refresh:
- *
- * Not normally required, but force a refresh
- **/
-static gboolean
-pk_control_transaction_list_refresh (PkControl *control, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), FALSE);
-	g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
-	/* clear old data */
-	if (control->priv->array != NULL) {
-		g_strfreev (control->priv->array);
-		control->priv->array = NULL;
-	}
-	ret = dbus_g_proxy_call (control->priv->proxy, "GetTransactionList", &error_local,
-				 G_TYPE_INVALID,
-				 G_TYPE_STRV, &control->priv->array,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		control->priv->array = NULL;
-		egg_warning ("GetTransactionList failed :%s", error_local->message);
-		pk_control_error_set (error, PK_CONTROL_ERROR_FAILED, error_local->message);
-		g_error_free (error_local);
-	}
-
-	return ret;
-}
-
-/**
- * pk_control_transaction_list_refresh_idle_cb:
- * @control: This class instance
- **/
-static gboolean
-pk_control_transaction_list_refresh_idle_cb (PkControl *control)
-{
-	gboolean ret;
-	GError *error = NULL;
-
-	/* refresh the internal lists */
-	ret = pk_control_transaction_list_refresh (control, &error);
-	if (!ret) {
-		egg_warning ("failed to get list: %s", error->message);
-		g_error_free (error);
-	}
-	control->priv->idle_id = 0;
-	return FALSE;
-}
-
-/**
- * pk_control_transaction_list_get:
- **/
-const gchar **
-pk_control_transaction_list_get (PkControl *control)
-{
-	gboolean ret;
-	GError *error = NULL;
-
-	g_return_val_if_fail (PK_IS_CONTROL (control), NULL);
-
-	/* we might not have refreshed this ever */
-	if (control->priv->array == NULL) {
-		ret = pk_control_transaction_list_refresh (control, &error);
-		if (!ret) {
-			egg_warning ("failed to get list: %s", error->message);
-			g_error_free (error);
-		}
-
-		/* no need to do this twice at startup */
-		if (control->priv->idle_id != 0) {
-			g_source_remove (control->priv->idle_id);
-			control->priv->idle_id = 0;
-		}
-	}
-
-	return (const gchar **) control->priv->array;
-}
-
-/**
- * pk_control_transaction_list_changed_cb:
- */
-static void
-pk_control_transaction_list_changed_cb (DBusGProxy *proxy, gchar **array, PkControl *control)
-{
-	g_return_if_fail (PK_IS_CONTROL (control));
-
-	/* clear old data */
-	if (control->priv->array != NULL)
-		g_strfreev (control->priv->array);
-	control->priv->array = g_strdupv (array);
-	egg_debug ("emit transaction-list-changed");
-	g_signal_emit (control, signals [PK_CONTROL_LIST_CHANGED], 0);
-}
-
-/**
- * pk_control_connection_changed_cb:
- **/
-static void
-pk_control_connection_changed_cb (PkConnection *pconnection, gboolean connected, PkControl *control)
-{
-	/* force a refresh so we have valid data*/
-	if (connected && control->priv->idle_id == 0)
-		control->priv->idle_id = g_idle_add ((GSourceFunc) pk_control_transaction_list_refresh_idle_cb, control);
-}
-
-/**
- * pk_control_restart_schedule_cb:
- */
-static void
-pk_control_restart_schedule_cb (DBusGProxy *proxy, PkControl *control)
-{
-	g_return_if_fail (PK_IS_CONTROL (control));
-
-	egg_debug ("emitting restart-schedule");
-	g_signal_emit (control, signals [PK_CONTROL_RESTART_SCHEDULE], 0);
-
-}
-
-/**
- * pk_control_updates_changed_cb:
- */
-static void
-pk_control_updates_changed_cb (DBusGProxy *proxy, PkControl *control)
-{
-	g_return_if_fail (PK_IS_CONTROL (control));
-
-	egg_debug ("emitting updates-changed");
-	g_signal_emit (control, signals [PK_CONTROL_UPDATES_CHANGED], 0);
-
-}
-
-/**
- * pk_control_repo_list_changed_cb:
- */
-static void
-pk_control_repo_list_changed_cb (DBusGProxy *proxy, PkControl *control)
-{
-	g_return_if_fail (PK_IS_CONTROL (control));
-
-	egg_debug ("emitting repo-list-changed");
-	g_signal_emit (control, signals [PK_CONTROL_REPO_LIST_CHANGED], 0);
-}
-
-/**
- * pk_control_network_state_changed_cb:
- */
-static void
-pk_control_network_state_changed_cb (DBusGProxy *proxy, const gchar *network_text, PkControl *control)
-{
-	PkNetworkEnum network;
-	g_return_if_fail (PK_IS_CONTROL (control));
-
-	network = pk_network_enum_from_text (network_text);
-	egg_debug ("emitting network-state-changed: %s", network_text);
-	g_signal_emit (control, signals [PK_CONTROL_NETWORK_STATE_CHANGED], 0, network);
-}
-
-/**
- * pk_control_locked_cb:
- */
-static void
-pk_control_locked_cb (DBusGProxy *proxy, gboolean is_locked, PkControl *control)
-{
-	egg_debug ("emit locked %i", is_locked);
-	g_signal_emit (control , signals [PK_CONTROL_LOCKED], 0, is_locked);
-}
-
-/**
- * pk_control_get_property:
- **/
-static void
-pk_control_get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
-{
-	PkControl *control = PK_CONTROL (object);
-	switch (prop_id) {
-	case PROP_VERSION_MAJOR:
-		g_value_set_uint (value, control->priv->version_major);
-		break;
-	case PROP_VERSION_MINOR:
-		g_value_set_uint (value, control->priv->version_minor);
-		break;
-	case PROP_VERSION_MICRO:
-		g_value_set_uint (value, control->priv->version_micro);
-		break;
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-		break;
-	}
-}
-
-/**
- * pk_control_set_property:
- **/
-static void
-pk_control_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec)
-{
-	switch (prop_id) {
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-		break;
-	}
-}
-
-/**
- * pk_control_class_init:
- * @klass: The PkControlClass
- **/
-static void
-pk_control_class_init (PkControlClass *klass)
-{
-	GParamSpec *pspec;
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->get_property = pk_control_get_property;
-	object_class->set_property = pk_control_set_property;
-	object_class->finalize = pk_control_finalize;
-
-	/**
-	 * PkControl:version-major:
-	 */
-	pspec = g_param_spec_uint ("version-major", NULL, NULL,
-				   0, G_MAXUINT, 0,
-				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_VERSION_MAJOR, pspec);
-
-	/**
-	 * PkControl:version-minor:
-	 */
-	pspec = g_param_spec_uint ("version-minor", NULL, NULL,
-				   0, G_MAXUINT, 0,
-				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_VERSION_MINOR, pspec);
-
-	/**
-	 * PkControl:version-micro:
-	 */
-	pspec = g_param_spec_uint ("version-micro", NULL, NULL,
-				   0, G_MAXUINT, 0,
-				   G_PARAM_READWRITE);
-	g_object_class_install_property (object_class, PROP_VERSION_MICRO, pspec);
-
-	/**
-	 * PkControl::updates-changed:
-	 * @control: the #PkControl instance that emitted the signal
-	 *
-	 * The ::updates-changed signal is emitted when the update list may have
-	 * changed and the control program may have to update some UI.
-	 **/
-	signals [PK_CONTROL_UPDATES_CHANGED] =
-		g_signal_new ("updates-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkControlClass, updates_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID,
-			      G_TYPE_NONE, 0);
-	/**
-	 * PkControl::repo-list-changed:
-	 * @control: the #PkControl instance that emitted the signal
-	 *
-	 * The ::repo-list-changed signal is emitted when the repo list may have
-	 * changed and the control program may have to update some UI.
-	 **/
-	signals [PK_CONTROL_REPO_LIST_CHANGED] =
-		g_signal_new ("repo-list-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkControlClass, repo_list_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID,
-			      G_TYPE_NONE, 0);
-	/**
-	 * PkControl::network-state-changed:
-	 * @control: the #PkControl instance that emitted the signal
-	 *
-	 * The ::network-state-changed signal is emitted when the network has changed speed or
-	 * connections state.
-	 **/
-	signals [PK_CONTROL_NETWORK_STATE_CHANGED] =
-		g_signal_new ("network-state-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkControlClass, network_state_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__UINT,
-			      G_TYPE_NONE, 1, G_TYPE_UINT);
-	/**
-	 * PkControl::restart-schedule:
-	 * @control: the #PkControl instance that emitted the signal
-	 *
-	 * The ::restart_schedule signal is emitted when the packagekitd service
-	 * has been restarted because it has been upgraded.
-	 * Client programs should reload themselves when it is convenient to
-	 * do so, as old client tools may not be compatable with the new daemon.
-	 **/
-	signals [PK_CONTROL_RESTART_SCHEDULE] =
-		g_signal_new ("restart-schedule",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkControlClass, restart_schedule),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID,
-			      G_TYPE_NONE, 0);
-	/**
-	 * PkControl::transaction-list-changed:
-	 * @control: the #PkControl instance that emitted the signal
-	 *
-	 * The ::transaction-list-changed signal is emitted when the list
-	 * of transactions handled by the daemon is changed.
-	 **/
-	signals [PK_CONTROL_LIST_CHANGED] =
-		g_signal_new ("transaction-list-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkControlClass, transaction_list_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID,
-			      G_TYPE_NONE, 0);
-	/**
-	 * PkControl::locked:
-	 * @control: the #PkControl instance that emitted the signal
-	 *
-	 * The ::locked signal is emitted when the backend instance has been
-	 * locked by PackageKit.
-	 * This may mean that other native package tools will not work.
-	 **/
-	signals [PK_CONTROL_LOCKED] =
-		g_signal_new ("locked",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkControlClass, locked),
-			      NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN,
-			      G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
-
-	g_type_class_add_private (klass, sizeof (PkControlPrivate));
-}
-
-/**
- * pk_control_get_properties:
- **/
-static GHashTable *
-pk_control_get_properties (PkControl *control)
-{
-	gboolean ret;
-	GError *error = NULL;
-	GHashTable *hash_table = NULL;
-	DBusGProxy *proxy;
-
-	/* connect to the correct path for properties */
-	proxy = dbus_g_proxy_new_for_name (control->priv->connection,
-					   "org.freedesktop.PackageKit",
-					   "/org/freedesktop/PackageKit",
-					   "org.freedesktop.DBus.Properties");
-	if (proxy == NULL) {
-		egg_warning ("Couldn't connect to proxy");
-		goto out;
-	}
-
-	/* get all properties */
-	ret = dbus_g_proxy_call (proxy, "GetAll", &error,
-				 G_TYPE_STRING, "org.freedesktop.PackageKit",
-				 G_TYPE_INVALID,
-				 dbus_g_type_get_map ("GHashTable", G_TYPE_STRING, G_TYPE_VALUE),
-				 &hash_table,
-				 G_TYPE_INVALID);
-	if (!ret) {
-		egg_warning ("Couldn't call GetAll() to get properties for %s", error->message);
-		g_error_free (error);
-		goto out;
-	}
-out:
-	if (proxy != NULL)
-		g_object_unref (proxy);
-	return hash_table;
-}
-
-/**
- * pk_control_collect_props_cb:
- **/
-static void
-pk_control_collect_props_cb (const char *key, const GValue *value, PkControl *control)
-{
-	if (g_strcmp0 (key, "version-major") == 0 || g_strcmp0 (key, "VersionMajor") == 0)
-		control->priv->version_major = g_value_get_uint (value);
-	else if (g_strcmp0 (key, "version-minor") == 0 || g_strcmp0 (key, "VersionMinor") == 0)
-		control->priv->version_minor = g_value_get_uint (value);
-	else if (g_strcmp0 (key, "version-micro") == 0 || g_strcmp0 (key, "VersionMicro") == 0)
-		control->priv->version_micro = g_value_get_uint (value);
-	else {
-		egg_warning ("unhandled property '%s'", key);
-	}
-}
-
-/**
- * pk_control_init:
- * @control: This class instance
- **/
-static void
-pk_control_init (PkControl *control)
-{
-	GError *error = NULL;
-	GHashTable *hash;
-
-	control->priv = PK_CONTROL_GET_PRIVATE (control);
-	/* check dbus connections, exit if not valid */
-	control->priv->connection = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
-	if (error != NULL) {
-		egg_warning ("%s", error->message);
-		g_error_free (error);
-		g_error ("This program cannot start until you start the dbus system service.");
-	}
-
-	/* we maintain a local copy */
-	control->priv->array = NULL;
-	control->priv->idle_id = 0;
-	control->priv->version_major = 0;
-	control->priv->version_minor = 0;
-	control->priv->version_micro = 0;
-
-	/* watch for PackageKit on the bus, and try to connect up at start */
-	control->priv->pconnection = pk_connection_new ();
-	g_signal_connect (control->priv->pconnection, "connection-changed",
-			  G_CALLBACK (pk_control_connection_changed_cb), control);
-
-	/* get a connection to the engine object */
-	control->priv->proxy = dbus_g_proxy_new_for_name (control->priv->connection,
-							 PK_DBUS_SERVICE, PK_DBUS_PATH, PK_DBUS_INTERFACE);
-	if (control->priv->proxy == NULL)
-		egg_error ("Cannot connect to PackageKit.");
-
-	/* don't timeout, as dbus-glib sets the timeout ~25 seconds */
-	dbus_g_proxy_set_default_timeout (control->priv->proxy, INT_MAX);
-
-	dbus_g_proxy_add_signal (control->priv->proxy, "TransactionListChanged",
-				 G_TYPE_STRV, G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (control->priv->proxy, "TransactionListChanged",
-				     G_CALLBACK(pk_control_transaction_list_changed_cb), control, NULL);
-
-	dbus_g_proxy_add_signal (control->priv->proxy, "UpdatesChanged", G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (control->priv->proxy, "UpdatesChanged",
-				     G_CALLBACK (pk_control_updates_changed_cb), control, NULL);
-
-	dbus_g_proxy_add_signal (control->priv->proxy, "RepoListChanged", G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (control->priv->proxy, "RepoListChanged",
-				     G_CALLBACK (pk_control_repo_list_changed_cb), control, NULL);
-
-	dbus_g_proxy_add_signal (control->priv->proxy, "NetworkStateChanged",
-				 G_TYPE_STRING, G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (control->priv->proxy, "NetworkStateChanged",
-				     G_CALLBACK (pk_control_network_state_changed_cb), control, NULL);
-
-	dbus_g_proxy_add_signal (control->priv->proxy, "RestartSchedule", G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (control->priv->proxy, "RestartSchedule",
-				     G_CALLBACK (pk_control_restart_schedule_cb), control, NULL);
-
-	dbus_g_object_register_marshaller (g_cclosure_marshal_VOID__BOOLEAN,
-					   G_TYPE_NONE, G_TYPE_BOOLEAN, G_TYPE_INVALID);
-	dbus_g_proxy_add_signal (control->priv->proxy, "Locked", G_TYPE_BOOLEAN, G_TYPE_INVALID);
-	dbus_g_proxy_connect_signal (control->priv->proxy, "Locked",
-				     G_CALLBACK (pk_control_locked_cb), control, NULL);
-
-	/* get properties if they exist */
-	hash = pk_control_get_properties (control);
-	if (hash != NULL) {
-		g_hash_table_foreach (hash, (GHFunc) pk_control_collect_props_cb, control);
-		g_hash_table_unref (hash);
-	}
-
-	/* idle add a refresh so we have valid data */
-	control->priv->idle_id = g_idle_add ((GSourceFunc) pk_control_transaction_list_refresh_idle_cb, control);
-}
-
-/**
- * pk_control_finalize:
- * @object: The object to finalize
- **/
-static void
-pk_control_finalize (GObject *object)
-{
-	PkControl *control;
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_CONTROL (object));
-	control = PK_CONTROL (object);
-
-	g_return_if_fail (control->priv != NULL);
-
-	/* disconnect signal handlers */
-	dbus_g_proxy_disconnect_signal (control->priv->proxy, "Locked",
-				        G_CALLBACK (pk_control_locked_cb), control);
-	dbus_g_proxy_disconnect_signal (control->priv->proxy, "TransactionListChanged",
-				        G_CALLBACK (pk_control_transaction_list_changed_cb), control);
-	dbus_g_proxy_disconnect_signal (control->priv->proxy, "UpdatesChanged",
-				        G_CALLBACK (pk_control_updates_changed_cb), control);
-	dbus_g_proxy_disconnect_signal (control->priv->proxy, "RepoListChanged",
-				        G_CALLBACK (pk_control_repo_list_changed_cb), control);
-	dbus_g_proxy_disconnect_signal (control->priv->proxy, "NetworkStateChanged",
-				        G_CALLBACK (pk_control_network_state_changed_cb), control);
-	dbus_g_proxy_disconnect_signal (control->priv->proxy, "RestartSchedule",
-				        G_CALLBACK (pk_control_restart_schedule_cb), control);
-
-	if (control->priv->idle_id != 0)
-		g_source_remove (control->priv->idle_id);
-	g_object_unref (G_OBJECT (control->priv->proxy));
-	g_object_unref (G_OBJECT (control->priv->pconnection));
-	g_strfreev (control->priv->array);
-
-	G_OBJECT_CLASS (pk_control_parent_class)->finalize (object);
-}
-
-/**
- * pk_control_new:
- *
- * Return value: a new PkControl object.
- **/
-PkControl *
-pk_control_new (void)
-{
-	if (pk_control_object != NULL) {
-		g_object_ref (pk_control_object);
-	} else {
-		pk_control_object = g_object_new (PK_TYPE_CONTROL, NULL);
-		g_object_add_weak_pointer (pk_control_object, &pk_control_object);
-	}
-	return PK_CONTROL (pk_control_object);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_control_test (EggTest *test)
-{
-	gboolean ret;
-	PkControl *control;
-	PkConnection *connection;
-	guint version;
-	PkAuthorizeEnum authorize;
-
-	if (!egg_test_start (test, "PkControl"))
-		return;
-
-	/* check to see if there is a daemon running */
-	connection = pk_connection_new ();
-	ret = pk_connection_valid (connection);
-	g_object_unref (connection);
-	if (!ret) {
-		egg_warning ("daemon is not running, skipping tests");
-		goto out;
-	}
-
-	/************************************************************/
-	egg_test_title (test, "get control");
-	control = pk_control_new ();
-	egg_test_assert (test, control != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "version major");
-	g_object_get (control, "version-major", &version, NULL);
-	egg_test_assert (test, (version == PK_MAJOR_VERSION));
-
-	/************************************************************/
-	egg_test_title (test, "version minor");
-	g_object_get (control, "version-minor", &version, NULL);
-	egg_test_assert (test, (version == PK_MINOR_VERSION));
-
-	/************************************************************/
-	egg_test_title (test, "version micro");
-	g_object_get (control, "version-micro", &version, NULL);
-	egg_test_assert (test, (version == PK_MICRO_VERSION));
-
-	/************************************************************/
-	egg_test_title (test, "can authorize invalid prefix");
-	authorize = pk_control_can_authorize (control, "org.freedesktop.devicekit.power.system-update", NULL);
-	egg_test_assert (test, (authorize == PK_AUTHORIZE_ENUM_UNKNOWN));
-
-	/************************************************************/
-	egg_test_title (test, "can authorize unknown method");
-	authorize = pk_control_can_authorize (control, "org.freedesktop.packagekit.system-x-update", NULL);
-	egg_test_assert (test, (authorize == PK_AUTHORIZE_ENUM_UNKNOWN));
-
-	/************************************************************/
-	egg_test_title (test, "can authorize yes method");
-	authorize = pk_control_can_authorize (control, "org.freedesktop.packagekit.system-sources-refresh", NULL);
-	egg_test_assert (test, (authorize == PK_AUTHORIZE_ENUM_YES));
-
-	/************************************************************/
-	egg_test_title (test, "can authorize interactive method");
-	authorize = pk_control_can_authorize (control, "org.freedesktop.packagekit.system-rollback", NULL);
-	egg_test_assert (test, (authorize == PK_AUTHORIZE_ENUM_INTERACTIVE));
-
-	g_object_unref (control);
-out:
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-control.h b/lib/packagekit-glib/pk-control.h
deleted file mode 100644
index 393ad06..0000000
--- a/lib/packagekit-glib/pk-control.h
+++ /dev/null
@@ -1,130 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-/**
- * SECTION:pk-control
- * @short_description: An abstract control access GObject
- */
-
-#ifndef __PK_CONTROL_H
-#define __PK_CONTROL_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-bitfield.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_CONTROL		(pk_control_get_type ())
-#define PK_CONTROL(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_CONTROL, PkControl))
-#define PK_CONTROL_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_CONTROL, PkControlClass))
-#define PK_IS_CONTROL(o)	(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_CONTROL))
-#define PK_IS_CONTROL_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_CONTROL))
-#define PK_CONTROL_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_CONTROL, PkControlClass))
-#define PK_CONTROL_ERROR	(pk_control_error_quark ())
-#define PK_CONTROL_TYPE_ERROR	(pk_control_error_get_type ())
-
-typedef struct _PkControlPrivate	PkControlPrivate;
-typedef struct _PkControl		PkControl;
-typedef struct _PkControlClass		PkControlClass;
-
-/**
- * PkControlError:
- * @PK_CONTROL_ERROR_FAILED: the transaction failed for an unknown reason
- *
- * Errors that can be thrown
- */
-typedef enum
-{
-	PK_CONTROL_ERROR_FAILED,
-	PK_CONTROL_ERROR_CANNOT_START_DAEMON
-} PkControlError;
-
-struct _PkControl
-{
-	 GObject		 parent;
-	 PkControlPrivate	*priv;
-};
-
-struct _PkControlClass
-{
-	GObjectClass	parent_class;
-	/* signals */
-	void		(* transaction_list_changed)	(PkControl	*control);
-	void		(* updates_changed)		(PkControl	*control);
-	void		(* repo_list_changed)		(PkControl	*control);
-	void		(* network_state_changed)	(PkControl	*control);
-	void		(* restart_schedule)		(PkControl	*control);
-	void		(* locked)			(PkControl	*control,
-							 gboolean	 is_locked);
-	/* padding for future expansion */
-	void (*_pk_reserved1) (void);
-	void (*_pk_reserved2) (void);
-	void (*_pk_reserved3) (void);
-	void (*_pk_reserved4) (void);
-	void (*_pk_reserved5) (void);
-};
-
-GQuark		 pk_control_error_quark			(void);
-GType		 pk_control_get_type		  	(void);
-PkControl	*pk_control_new				(void);
-
-gboolean	 pk_control_allocate_transaction_id	(PkControl	*control,
-							 gchar		**tid,
-							 GError		**error);
-gboolean	 pk_control_set_proxy			(PkControl	*control,
-							 const gchar	*proxy_http,
-							 const gchar	*proxy_ftp,
-							 GError		**error);
-PkBitfield	 pk_control_get_actions			(PkControl	*control,
-							 GError		**error);
-PkBitfield	 pk_control_get_filters			(PkControl	*control,
-							 GError		**error);
-PkBitfield	 pk_control_get_groups			(PkControl	*control,
-							 GError		**error);
-gchar		**pk_control_get_mime_types		(PkControl	*control,
-							 GError		**error);
-gchar		*pk_control_get_daemon_state		(PkControl	*control,
-							 GError		**error);
-PkNetworkEnum	 pk_control_get_network_state		(PkControl	*control,
-							 GError		**error);
-gboolean	 pk_control_get_backend_detail		(PkControl	*control,
-							 gchar		**name,
-							 gchar		**author,
-							 GError		**error);
-gboolean	 pk_control_get_time_since_action	(PkControl	*control,
-							 PkRoleEnum	 role,
-							 guint		*seconds,
-							 GError		**error);
-gboolean	 pk_control_transaction_list_print	(PkControl	*control);
-const gchar	**pk_control_transaction_list_get	(PkControl	*control);
-PkAuthorizeEnum	 pk_control_can_authorize		(PkControl	*control,
-							 const gchar	*action_id,
-							 GError		**error);
-
-G_END_DECLS
-
-#endif /* __PK_CONTROL_H */
-
diff --git a/lib/packagekit-glib/pk-desktop.c b/lib/packagekit-glib/pk-desktop.c
deleted file mode 100644
index 4785694..0000000
--- a/lib/packagekit-glib/pk-desktop.c
+++ /dev/null
@@ -1,405 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-desktop
- * @short_description: Client singleton access to desktop metadata about a package
- *
- * Desktop metadata such as icon name and localised summary may be stored here
- */
-
-#include "config.h"
-
-#include <glib.h>
-#include <sqlite3.h>
-#include <packagekit-glib/pk-desktop.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-static void     pk_desktop_finalize	(GObject        *object);
-
-#define PK_DESKTOP_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_DESKTOP, PkDesktopPrivate))
-
-/* Database format is:
- *   CREATE TABLE cache ( filename TEXT, package TEXT, show INTEGER, md5 TEXT );
- */
-
-/**
- * PkDesktopPrivate:
- *
- * Private #PkDesktop data
- **/
-struct _PkDesktopPrivate
-{
-	sqlite3			*db;
-};
-
-G_DEFINE_TYPE (PkDesktop, pk_desktop, G_TYPE_OBJECT)
-static gpointer pk_desktop_object = NULL;
-
-/**
- * pk_desktop_sqlite_filename_cb:
- **/
-static gint
-pk_desktop_sqlite_filename_cb (void *data, gint argc, gchar **argv, gchar **col_name)
-{
-	GPtrArray *array = (GPtrArray *) data;
-	gint i;
-
-	/* add the filename data to the array */
-	for (i=0; i<argc; i++) {
-		if (g_strcmp0 (col_name[i], "filename") == 0 && argv[i] != NULL)
-			g_ptr_array_add (array, g_strdup (argv[i]));
-	}
-
-	return 0;
-}
-
-/**
- * pk_desktop_sqlite_package_cb:
- **/
-static gint
-pk_desktop_sqlite_package_cb (void *data, gint argc, gchar **argv, gchar **col_name)
-{
-	gchar **package = (gchar **) data;
-	gint i;
-
-	/* add the filename data to the array */
-	for (i=0; i<argc; i++) {
-		if (g_strcmp0 (col_name[i], "package") == 0 && argv[i] != NULL)
-			*package = g_strdup (argv[i]);
-	}
-
-	return 0;
-}
-
-/**
- * pk_desktop_get_files_for_package:
- * @desktop: a valid #PkDesktop instance
- * @package: the package name, e.g. "gnome-power-manager"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Return all desktop files owned by a package, regardless if they are shown
- * in the main menu or not.
- *
- * Return value: array of results
- **/
-GPtrArray *
-pk_desktop_get_files_for_package (PkDesktop *desktop, const gchar *package, GError **error)
-{
-	gchar *statement;
-	gchar *error_msg = NULL;
-	gint rc;
-	GPtrArray *array = NULL;
-
-	g_return_val_if_fail (PK_IS_DESKTOP (desktop), NULL);
-	g_return_val_if_fail (package != NULL, NULL);
-
-	/* no database */
-	if (desktop->priv->db == NULL) {
-		if (error != NULL)
-			*error = g_error_new (1, 0, "database is not open");
-		goto out;
-	}
-
-	/* get packages */
-	array = g_ptr_array_new ();
-	statement = g_strdup_printf ("SELECT filename FROM cache WHERE package = '%s'", package);
-	rc = sqlite3_exec (desktop->priv->db, statement, pk_desktop_sqlite_filename_cb, array, &error_msg);
-	g_free (statement);
-	if (rc != SQLITE_OK) {
-		egg_warning ("SQL error: %s\n", error_msg);
-		sqlite3_free (error_msg);
-	}
-out:
-	return array;
-}
-
-/**
- * pk_desktop_get_shown_for_package:
- * @desktop: a valid #PkDesktop instance
- * @package: the package name, e.g. "gnome-power-manager"
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Return all desktop files owned by a package that would be shown in a menu,
- * i.e are an application
- *
- * Return value: array of results
- **/
-GPtrArray *
-pk_desktop_get_shown_for_package (PkDesktop *desktop, const gchar *package, GError **error)
-{
-	gchar *statement;
-	gchar *error_msg = NULL;
-	gint rc;
-	GPtrArray *array = NULL;
-
-	g_return_val_if_fail (PK_IS_DESKTOP (desktop), NULL);
-	g_return_val_if_fail (package != NULL, NULL);
-
-	/* no database */
-	if (desktop->priv->db == NULL) {
-		if (error != NULL)
-			*error = g_error_new (1, 0, "database is not open");
-		goto out;
-	}
-
-	/* get packages */
-	array = g_ptr_array_new ();
-	statement = g_strdup_printf ("SELECT filename FROM cache WHERE package = '%s' AND show = 1", package);
-	rc = sqlite3_exec (desktop->priv->db, statement, pk_desktop_sqlite_filename_cb, array, &error_msg);
-	g_free (statement);
-	if (rc != SQLITE_OK) {
-		egg_warning ("SQL error: %s\n", error_msg);
-		sqlite3_free (error_msg);
-	}
-out:
-	return array;
-}
-
-/**
- * pk_desktop_get_package_for_file:
- * @desktop: a valid #PkDesktop instance
- * @filename: a fully qualified filename
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Returns the package name that owns the desktop file. Fast.
- *
- * Return value: package name, or %NULL
- **/
-gchar *
-pk_desktop_get_package_for_file (PkDesktop *desktop, const gchar *filename, GError **error)
-{
-	gchar *statement;
-	gchar *error_msg = NULL;
-	gint rc;
-	gchar *package = NULL;
-
-	g_return_val_if_fail (PK_IS_DESKTOP (desktop), NULL);
-	g_return_val_if_fail (filename != NULL, NULL);
-
-	/* no database */
-	if (desktop->priv->db == NULL) {
-		if (error != NULL)
-			*error = g_error_new (1, 0, "database is not open");
-		goto out;
-	}
-
-	/* get packages */
-	statement = g_strdup_printf ("SELECT package FROM cache WHERE filename = '%s' LIMIT 1", filename);
-	rc = sqlite3_exec (desktop->priv->db, statement, pk_desktop_sqlite_package_cb, &package, &error_msg);
-	g_free (statement);
-	if (rc != SQLITE_OK) {
-		egg_warning ("SQL error: %s\n", error_msg);
-		sqlite3_free (error_msg);
-	}
-
-	/* no result */
-	if (package == NULL) {
-		if (error != NULL)
-			*error = g_error_new (1, 0, "could not find package for %s", filename);
-		goto out;
-	}
-out:
-	return package;
-}
-
-/**
- * pk_desktop_open_database:
- * @desktop: a valid #PkDesktop instance
- *
- * Return value: %TRUE if opened correctly
- **/
-gboolean
-pk_desktop_open_database (PkDesktop *desktop, GError **error)
-{
-	gboolean ret;
-	gint rc;
-
-	g_return_val_if_fail (PK_IS_DESKTOP (desktop), FALSE);
-
-	/* already opened */
-	if (desktop->priv->db != NULL)
-		return TRUE;
-
-	/* if the database file was not installed (or was nuked) recreate it */
-	ret = g_file_test (PK_DESKTOP_DEFAULT_DATABASE, G_FILE_TEST_EXISTS);
-	if (!ret) {
-		if (error != NULL)
-			*error = g_error_new (1, 0, "database %s is not present", PK_DESKTOP_DEFAULT_DATABASE);
-		return FALSE;
-	}
-
-	egg_debug ("trying to open database '%s'", PK_DESKTOP_DEFAULT_DATABASE);
-	rc = sqlite3_open (PK_DESKTOP_DEFAULT_DATABASE, &desktop->priv->db);
-	if (rc != 0) {
-		egg_warning ("Can't open database: %s\n", sqlite3_errmsg (desktop->priv->db));
-		if (error != NULL)
-			*error = g_error_new (1, 0, "can't open database: %s", sqlite3_errmsg (desktop->priv->db));
-		sqlite3_close (desktop->priv->db);
-		desktop->priv->db = NULL;
-		return FALSE;
-	}
-
-	/* we don't need to keep syncing */
-	sqlite3_exec (desktop->priv->db, "PRAGMA synchronous=OFF", NULL, NULL, NULL);
-
-	return TRUE;
-}
-
-/**
- * pk_desktop_class_init:
- **/
-static void
-pk_desktop_class_init (PkDesktopClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize = pk_desktop_finalize;
-	g_type_class_add_private (klass, sizeof (PkDesktopPrivate));
-}
-
-/**
- * pk_desktop_init:
- **/
-static void
-pk_desktop_init (PkDesktop *desktop)
-{
-	desktop->priv = PK_DESKTOP_GET_PRIVATE (desktop);
-}
-
-/**
- * pk_desktop_finalize:
- **/
-static void
-pk_desktop_finalize (GObject *object)
-{
-	PkDesktop *desktop;
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_DESKTOP (object));
-	desktop = PK_DESKTOP (object);
-	g_return_if_fail (desktop->priv != NULL);
-
-	sqlite3_close (desktop->priv->db);
-
-	G_OBJECT_CLASS (pk_desktop_parent_class)->finalize (object);
-}
-
-/**
- * pk_desktop_new:
- **/
-PkDesktop *
-pk_desktop_new (void)
-{
-	if (pk_desktop_object != NULL) {
-		g_object_ref (pk_desktop_object);
-	} else {
-		pk_desktop_object = g_object_new (PK_TYPE_DESKTOP, NULL);
-		g_object_add_weak_pointer (pk_desktop_object, &pk_desktop_object);
-	}
-	return PK_DESKTOP (pk_desktop_object);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_desktop_test (EggTest *test)
-{
-	PkDesktop *desktop;
-	gboolean ret;
-	gchar *package;
-	GPtrArray *array;
-	GError *error = NULL;
-
-	if (!egg_test_start (test, "PkDesktop"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "get desktop");
-	desktop = pk_desktop_new ();
-	egg_test_assert (test, desktop != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "get package when not valid");
-	package = pk_desktop_get_package_for_file (desktop, "/usr/share/applications/gpk-update-viewer.desktop", NULL);
-	egg_test_assert (test, package == NULL);
-
-	/* file does not exist */
-	ret = g_file_test (PK_DESKTOP_DEFAULT_DATABASE, G_FILE_TEST_EXISTS);
-	if (!ret) {
-		egg_warning ("skipping checks as database does not exist");
-		goto out;
-	}
-
-	/************************************************************/
-	egg_test_title (test, "open database");
-	ret = pk_desktop_open_database (desktop, &error);
-	if (ret)
-		egg_test_success (test, "%ims", egg_test_elapsed (test));
-	else
-		egg_test_failed (test, "failed to open: %s", error->message);
-
-	/************************************************************/
-	egg_test_title (test, "get package");
-	package = pk_desktop_get_package_for_file (desktop, "/usr/share/applications/gpk-update-viewer.desktop", NULL);
-
-	/* dummy, not yum */
-	if (g_strcmp0 (package, "vips-doc") == 0) {
-		egg_test_success (test, "created db with dummy, skipping remaining tests");
-		goto out;
-	}
-
-	if (g_strcmp0 (package, "gnome-packagekit") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "package was: %s", package);
-	g_free (package);
-
-	/************************************************************/
-	egg_test_title (test, "get files");
-	array = pk_desktop_get_files_for_package (desktop, "gnome-packagekit", NULL);
-	if (array->len >= 5)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "length=%i", array->len);
-	g_ptr_array_foreach (array, (GFunc) g_free, NULL);
-	g_ptr_array_free (array, TRUE);
-
-	/************************************************************/
-	egg_test_title (test, "get shown files");
-	array = pk_desktop_get_shown_for_package (desktop, "f-spot", NULL);
-	if (array->len == 1)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "length=%i", array->len);
-	g_ptr_array_foreach (array, (GFunc) g_free, NULL);
-	g_ptr_array_free (array, TRUE);
-out:
-	g_object_unref (desktop);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-desktop.h b/lib/packagekit-glib/pk-desktop.h
deleted file mode 100644
index 73a8cf0..0000000
--- a/lib/packagekit-glib/pk-desktop.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_DESKTOP_H
-#define __PK_DESKTOP_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_DESKTOP		(pk_desktop_get_type ())
-#define PK_DESKTOP(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_DESKTOP, PkDesktop))
-#define PK_DESKTOP_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_DESKTOP, PkDesktopClass))
-#define PK_IS_DESKTOP(o)	(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_DESKTOP))
-#define PK_IS_DESKTOP_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_DESKTOP))
-#define PK_DESKTOP_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_DESKTOP, PkDesktopClass))
-
-/**
- * PK_DESKTOP_DEFAULT_DATABASE:
- *
- * The default location for the database
- */
-#define PK_DESKTOP_DEFAULT_DATABASE		LOCALSTATEDIR "/lib/PackageKit/desktop-files.db"
-
-/**
- * PK_DESKTOP_DEFAULT_APPLICATION_DIR:
- *
- * The default location for the desktop files
- */
-#ifndef __FreeBSD__
-#define PK_DESKTOP_DEFAULT_APPLICATION_DIR	"/usr/share/applications"
-#else
-#define PK_DESKTOP_DEFAULT_APPLICATION_DIR	"/usr/local/share/applications"
-#endif
-
-typedef struct _PkDesktopPrivate	PkDesktopPrivate;
-typedef struct _PkDesktop		PkDesktop;
-typedef struct _PkDesktopClass		PkDesktopClass;
-
-struct _PkDesktop
-{
-	GObject			 parent;
-	PkDesktopPrivate	*priv;
-};
-
-struct _PkDesktopClass
-{
-	GObjectClass	parent_class;
-};
-
-GType		 pk_desktop_get_type			(void);
-PkDesktop	*pk_desktop_new				(void);
-gboolean	 pk_desktop_open_database		(PkDesktop	*desktop,
-							 GError		**error);
-GPtrArray	*pk_desktop_get_files_for_package	(PkDesktop	*desktop,
-							 const gchar	*package,
-							 GError		**error);
-GPtrArray	*pk_desktop_get_shown_for_package	(PkDesktop	*desktop,
-							 const gchar	*package,
-							 GError		**error);
-gchar		*pk_desktop_get_package_for_file	(PkDesktop	*desktop,
-							 const gchar	*filename,
-							 GError		**error);
-
-G_END_DECLS
-
-#endif /* __PK_DESKTOP_H */
-
diff --git a/lib/packagekit-glib/pk-details-obj.c b/lib/packagekit-glib/pk-details-obj.c
deleted file mode 100644
index 9083564..0000000
--- a/lib/packagekit-glib/pk-details-obj.c
+++ /dev/null
@@ -1,149 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-details-obj
- * @short_description: Functionality to create a details struct
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-details-obj.h>
-
-#include "egg-debug.h"
-
-/**
- * pk_details_obj_new:
- *
- * Creates a new #PkDetailsObj object with default values
- *
- * Return value: a new #PkDetailsObj object
- **/
-PkDetailsObj *
-pk_details_obj_new (void)
-{
-	PkDetailsObj *obj;
-	obj = g_new0 (PkDetailsObj, 1);
-	obj->id = NULL;
-	obj->license = NULL;
-	obj->group = 0;
-	obj->description = NULL;
-	obj->url = NULL;
-	obj->size = 0;
-
-	return obj;
-}
-
-/**
- * pk_details_obj_new_from_data:
- *
- * Creates a new #PkDetailsObj object with values.
- *
- * Return value: a new #PkDetailsObj object
- **/
-PkDetailsObj *
-pk_details_obj_new_from_data (const PkPackageId *id, const gchar *license, PkGroupEnum group,
-			      const gchar *description, const gchar *url, guint64 size)
-{
-	PkDetailsObj *obj = NULL;
-
-	/* create new object */
-	obj = pk_details_obj_new ();
-	obj->id = pk_package_id_copy (id);
-	obj->license = g_strdup (license);
-	obj->group = group;
-	obj->description = g_strdup (description);
-	obj->url = g_strdup (url);
-	obj->size = size;
-
-	return obj;
-}
-
-/**
- * pk_details_obj_copy:
- *
- * Return value: a new #PkDetailsObj object
- **/
-PkDetailsObj *
-pk_details_obj_copy (const PkDetailsObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_details_obj_new_from_data (obj->id, obj->license, obj->group,
-					     obj->description, obj->url, obj->size);
-}
-
-/**
- * pk_details_obj_free:
- * @obj: the #PkDetailsObj object
- *
- * Return value: %TRUE if the #PkDetailsObj object was freed.
- **/
-gboolean
-pk_details_obj_free (PkDetailsObj *obj)
-{
-	if (obj == NULL) {
-		return FALSE;
-	}
-	pk_package_id_free (obj->id);
-	g_free (obj->license);
-	g_free (obj->description);
-	g_free (obj->url);
-	g_free (obj);
-	return TRUE;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_details_test (EggTest *test)
-{
-	gboolean ret;
-	PkDetailsObj *obj;
-
-	if (!egg_test_start (test, "PkDetailsObj"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "get an details object");
-	obj = pk_details_obj_new ();
-	egg_test_assert (test, obj != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test details");
-	ret = pk_details_obj_free (obj);
-	egg_test_assert (test, ret);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-details-obj.h b/lib/packagekit-glib/pk-details-obj.h
deleted file mode 100644
index 93a3854..0000000
--- a/lib/packagekit-glib/pk-details-obj.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_DETAILS_H
-#define __PK_DETAILS_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-package-id.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkDetailsObj:
- *
- * Cached object to represent details about the package.
- **/
-typedef struct
-{
-	PkPackageId			*id;
-	gchar				*license;
-	PkGroupEnum			 group;
-	gchar				*description;
-	gchar				*url;
-	guint64				 size;
-} PkDetailsObj;
-
-PkDetailsObj	*pk_details_obj_new			(void);
-PkDetailsObj	*pk_details_obj_copy			(const PkDetailsObj	*obj);
-PkDetailsObj	*pk_details_obj_new_from_data		(const PkPackageId	*id,
-							 const gchar		*license,
-							 PkGroupEnum		 group,
-							 const gchar		*description,
-							 const gchar		*url,
-							 guint64		 size);
-gboolean	 pk_details_obj_free			(PkDetailsObj		*obj);
-
-G_END_DECLS
-
-#endif /* __PK_DETAILS_H */
diff --git a/lib/packagekit-glib/pk-distro-upgrade-obj.c b/lib/packagekit-glib/pk-distro-upgrade-obj.c
deleted file mode 100644
index 9a44c45..0000000
--- a/lib/packagekit-glib/pk-distro-upgrade-obj.c
+++ /dev/null
@@ -1,141 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-update-detail-obj
- * @short_description: Functionality to create an update detail struct
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-distro-upgrade-obj.h>
-
-#include "egg-debug.h"
-
-/**
- * pk_distro_upgrade_obj_new:
- *
- * Creates a new #PkDistroUpgradeObj object with default values
- *
- * Return value: a new #PkDistroUpgradeObj object
- **/
-PkDistroUpgradeObj *
-pk_distro_upgrade_obj_new (void)
-{
-	PkDistroUpgradeObj *obj;
-	obj = g_new0 (PkDistroUpgradeObj, 1);
-	obj->name = NULL;
-	obj->summary = NULL;
-	obj->state = PK_DISTRO_UPGRADE_ENUM_UNKNOWN;
-	return obj;
-}
-
-/**
- * pk_distro_upgrade_obj_new_from_data:
- *
- * Creates a new #PkDistroUpgradeObj object with values.
- *
- * Return value: a new #PkDistroUpgradeObj object
- **/
-PkDistroUpgradeObj *
-pk_distro_upgrade_obj_new_from_data (PkUpdateStateEnum state, const gchar *name, const gchar *summary)
-{
-	PkDistroUpgradeObj *obj = NULL;
-
-	/* create new object */
-	obj = pk_distro_upgrade_obj_new ();
-	obj->state = state;
-	obj->name = g_strdup (name);
-	obj->summary = g_strdup (summary);
-	return obj;
-}
-
-/**
- * pk_distro_upgrade_obj_copy:
- *
- * Return value: a new #PkDistroUpgradeObj object
- **/
-PkDistroUpgradeObj *
-pk_distro_upgrade_obj_copy (const PkDistroUpgradeObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_distro_upgrade_obj_new_from_data (obj->state, obj->name, obj->summary);
-}
-
-/**
- * pk_distro_upgrade_obj_free:
- * @obj: the #PkDistroUpgradeObj object
- *
- * Return value: %TRUE if the #PkDistroUpgradeObj object was freed.
- **/
-gboolean
-pk_distro_upgrade_obj_free (PkDistroUpgradeObj *obj)
-{
-	if (obj == NULL) {
-		return FALSE;
-	}
-	g_free (obj->name);
-	g_free (obj->summary);
-	g_free (obj);
-	return TRUE;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-egg_test_distro_upgrade (EggTest *test)
-{
-	gboolean ret;
-	PkDistroUpgradeObj *obj;
-
-	if (!egg_test_start (test, "PkDistroUpgradeObj"))
-		return;
-
-	/************************************************************
-	 ****************          IDENT           ******************
-	 ************************************************************/
-
-	/************************************************************/
-	egg_test_title (test, "get an upgrade object");
-	obj = pk_distro_upgrade_obj_new ();
-	egg_test_assert (test, obj != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test upgrade");
-	ret = pk_distro_upgrade_obj_free (obj);
-	egg_test_assert (test, ret);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-distro-upgrade-obj.h b/lib/packagekit-glib/pk-distro-upgrade-obj.h
deleted file mode 100644
index 8ac1f8e..0000000
--- a/lib/packagekit-glib/pk-distro-upgrade-obj.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_DISTRO_UPGRADE_H
-#define __PK_DISTRO_UPGRADE_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkDistroUpgradeObj:
- *
- * Cached object to represent details about the update.
- **/
-typedef struct
-{
-	PkUpdateStateEnum		 state;
-	gchar				*name;
-	gchar				*summary;
-} PkDistroUpgradeObj;
-
-PkDistroUpgradeObj	*pk_distro_upgrade_obj_new		(void);
-PkDistroUpgradeObj	*pk_distro_upgrade_obj_copy		(const PkDistroUpgradeObj *obj);
-PkDistroUpgradeObj	*pk_distro_upgrade_obj_new_from_data	(PkUpdateStateEnum	 state,
-								 const gchar		*name,
-								 const gchar		*summary);
-gboolean		 pk_distro_upgrade_obj_free		(PkDistroUpgradeObj	*obj);
-
-G_END_DECLS
-
-#endif /* __PK_DISTRO_UPGRADE_H */
diff --git a/lib/packagekit-glib/pk-enum.c b/lib/packagekit-glib/pk-enum.c
deleted file mode 100644
index 01a7d6d..0000000
--- a/lib/packagekit-glib/pk-enum.c
+++ /dev/null
@@ -1,1273 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-enum
- * @short_description: Functions for converting strings to enum and vice-versa
- *
- * This file contains functions to convert to and from enumerated types.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-enum.h>
-
-static const PkEnumMatch enum_exit[] = {
-	{PK_EXIT_ENUM_UNKNOWN,			"unknown"},	/* fall though value */
-	{PK_EXIT_ENUM_SUCCESS,			"success"},
-	{PK_EXIT_ENUM_FAILED,			"failed"},
-	{PK_EXIT_ENUM_CANCELLED,		"cancelled"},
-	{PK_EXIT_ENUM_KEY_REQUIRED,		"key-required"},
-	{PK_EXIT_ENUM_EULA_REQUIRED,		"eula-required"},
-	{PK_EXIT_ENUM_MEDIA_CHANGE_REQUIRED,	"media-change-required"},
-	{PK_EXIT_ENUM_KILLED,			"killed"},
-	{PK_EXIT_ENUM_NEED_UNTRUSTED,		"need-untrusted"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_status[] = {
-	{PK_STATUS_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_STATUS_ENUM_WAIT,			"wait"},
-	{PK_STATUS_ENUM_SETUP,			"setup"},
-	{PK_STATUS_ENUM_RUNNING,		"running"},
-	{PK_STATUS_ENUM_QUERY,			"query"},
-	{PK_STATUS_ENUM_INFO,			"info"},
-	{PK_STATUS_ENUM_REFRESH_CACHE,		"refresh-cache"},
-	{PK_STATUS_ENUM_REMOVE,			"remove"},
-	{PK_STATUS_ENUM_DOWNLOAD,		"download"},
-	{PK_STATUS_ENUM_INSTALL,		"install"},
-	{PK_STATUS_ENUM_UPDATE,			"update"},
-	{PK_STATUS_ENUM_CLEANUP,		"cleanup"},
-	{PK_STATUS_ENUM_OBSOLETE,		"obsolete"},
-	{PK_STATUS_ENUM_DEP_RESOLVE,		"dep-resolve"},
-	{PK_STATUS_ENUM_SIG_CHECK,		"sig-check"},
-	{PK_STATUS_ENUM_ROLLBACK,		"rollback"},
-	{PK_STATUS_ENUM_TEST_COMMIT,		"test-commit"},
-	{PK_STATUS_ENUM_COMMIT,			"commit"},
-	{PK_STATUS_ENUM_REQUEST,		"request"},
-	{PK_STATUS_ENUM_FINISHED,		"finished"},
-	{PK_STATUS_ENUM_CANCEL,			"cancel"},
-	{PK_STATUS_ENUM_DOWNLOAD_REPOSITORY,	"download-repository"},
-	{PK_STATUS_ENUM_DOWNLOAD_PACKAGELIST,	"download-packagelist"},
-	{PK_STATUS_ENUM_DOWNLOAD_FILELIST,	"download-filelist"},
-	{PK_STATUS_ENUM_DOWNLOAD_CHANGELOG,	"download-changelog"},
-	{PK_STATUS_ENUM_DOWNLOAD_GROUP,		"download-group"},
-	{PK_STATUS_ENUM_DOWNLOAD_UPDATEINFO,	"download-updateinfo"},
-	{PK_STATUS_ENUM_REPACKAGING,		"repackaging"},
-	{PK_STATUS_ENUM_LOADING_CACHE,		"loading-cache"},
-	{PK_STATUS_ENUM_SCAN_APPLICATIONS,	"scan-applications"},
-	{PK_STATUS_ENUM_GENERATE_PACKAGE_LIST,	"generate-package-list"},
-	{PK_STATUS_ENUM_WAITING_FOR_LOCK,	"waiting-for-lock"},
-	{PK_STATUS_ENUM_WAITING_FOR_AUTH,	"waiting-for-auth"},
-	{PK_STATUS_ENUM_SCAN_PROCESS_LIST,	"scan-process-list"},
-	{PK_STATUS_ENUM_CHECK_EXECUTABLE_FILES,	"check-executable-files"},
-	{PK_STATUS_ENUM_CHECK_LIBRARIES,	"check-libraries"},
-	{PK_STATUS_ENUM_COPY_FILES,		"copy-files"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_role[] = {
-	{PK_ROLE_ENUM_UNKNOWN,				"unknown"},	/* fall though value */
-	{PK_ROLE_ENUM_CANCEL,				"cancel"},
-	{PK_ROLE_ENUM_GET_DEPENDS,			"get-depends"},
-	{PK_ROLE_ENUM_GET_DETAILS,			"get-details"},
-	{PK_ROLE_ENUM_GET_FILES,			"get-files"},
-	{PK_ROLE_ENUM_GET_PACKAGES,			"get-packages"},
-	{PK_ROLE_ENUM_GET_REPO_LIST,			"get-repo-list"},
-	{PK_ROLE_ENUM_GET_REQUIRES,			"get-requires"},
-	{PK_ROLE_ENUM_GET_UPDATE_DETAIL,		"get-update-detail"},
-	{PK_ROLE_ENUM_GET_UPDATES,			"get-updates"},
-	{PK_ROLE_ENUM_INSTALL_FILES,			"install-files"},
-	{PK_ROLE_ENUM_INSTALL_PACKAGES,			"install-packages"},
-	{PK_ROLE_ENUM_INSTALL_SIGNATURE,		"install-signature"},
-	{PK_ROLE_ENUM_REFRESH_CACHE,			"refresh-cache"},
-	{PK_ROLE_ENUM_REMOVE_PACKAGES,			"remove-packages"},
-	{PK_ROLE_ENUM_REPO_ENABLE,			"repo-enable"},
-	{PK_ROLE_ENUM_REPO_SET_DATA,			"repo-set-data"},
-	{PK_ROLE_ENUM_RESOLVE,				"resolve"},
-	{PK_ROLE_ENUM_ROLLBACK,				"rollback"},
-	{PK_ROLE_ENUM_SEARCH_DETAILS,			"search-details"},
-	{PK_ROLE_ENUM_SEARCH_FILE,			"search-file"},
-	{PK_ROLE_ENUM_SEARCH_GROUP,			"search-group"},
-	{PK_ROLE_ENUM_SEARCH_NAME,			"search-name"},
-	{PK_ROLE_ENUM_UPDATE_PACKAGES,			"update-packages"},
-	{PK_ROLE_ENUM_UPDATE_SYSTEM,			"update-system"},
-	{PK_ROLE_ENUM_WHAT_PROVIDES,			"what-provides"},
-	{PK_ROLE_ENUM_ACCEPT_EULA,			"accept-eula"},
-	{PK_ROLE_ENUM_DOWNLOAD_PACKAGES,		"download-packages"},
-	{PK_ROLE_ENUM_GET_DISTRO_UPGRADES,		"get-distro-upgrades"},
-	{PK_ROLE_ENUM_GET_CATEGORIES,			"get-categories"},
-	{PK_ROLE_ENUM_GET_OLD_TRANSACTIONS,		"get-old-transactions"},
-	{PK_ROLE_ENUM_SIMULATE_INSTALL_FILES,		"simulate-install-files"},
-	{PK_ROLE_ENUM_SIMULATE_INSTALL_PACKAGES,	"simulate-install-packages"},
-	{PK_ROLE_ENUM_SIMULATE_REMOVE_PACKAGES,		"simulate-remove-packages"},
-	{PK_ROLE_ENUM_SIMULATE_UPDATE_PACKAGES,		"simulate-update-packages"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_error[] = {
-	{PK_ERROR_ENUM_UNKNOWN,			"unknown"},	/* fall though value */
-	{PK_ERROR_ENUM_OOM,			"out-of-memory"},
-	{PK_ERROR_ENUM_NO_CACHE,		"no-cache"},
-	{PK_ERROR_ENUM_NO_NETWORK,		"no-network"},
-	{PK_ERROR_ENUM_NOT_SUPPORTED,		"not-supported"},
-	{PK_ERROR_ENUM_INTERNAL_ERROR,		"internal-error"},
-	{PK_ERROR_ENUM_GPG_FAILURE,		"gpg-failure"},
-	{PK_ERROR_ENUM_FILTER_INVALID,		"filter-invalid"},
-	{PK_ERROR_ENUM_PACKAGE_ID_INVALID,	"package-id-invalid"},
-	{PK_ERROR_ENUM_TRANSACTION_ERROR,	"transaction-error"},
-	{PK_ERROR_ENUM_TRANSACTION_CANCELLED,	"transaction-cancelled"},
-	{PK_ERROR_ENUM_PACKAGE_NOT_INSTALLED,	"package-not-installed"},
-	{PK_ERROR_ENUM_PACKAGE_NOT_FOUND,	"package-not-found"},
-	{PK_ERROR_ENUM_PACKAGE_ALREADY_INSTALLED,	"package-already-installed"},
-	{PK_ERROR_ENUM_PACKAGE_DOWNLOAD_FAILED,	"package-download-failed"},
-	{PK_ERROR_ENUM_GROUP_NOT_FOUND,		"group-not-found"},
-	{PK_ERROR_ENUM_GROUP_LIST_INVALID,	"group-list-invalid"},
-	{PK_ERROR_ENUM_DEP_RESOLUTION_FAILED,	"dep-resolution-failed"},
-	{PK_ERROR_ENUM_CREATE_THREAD_FAILED,	"create-thread-failed"},
-	{PK_ERROR_ENUM_REPO_NOT_FOUND,		"repo-not-found"},
-	{PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE,	"cannot-remove-system-package"},
-	{PK_ERROR_ENUM_PROCESS_KILL,		"process-kill"},
-	{PK_ERROR_ENUM_FAILED_INITIALIZATION,	"failed-initialization"},
-	{PK_ERROR_ENUM_FAILED_FINALISE,		"failed-finalise"},
-	{PK_ERROR_ENUM_FAILED_CONFIG_PARSING,	"failed-config-parsing"},
-	{PK_ERROR_ENUM_CANNOT_CANCEL,		"cannot-cancel"},
-	{PK_ERROR_ENUM_CANNOT_GET_LOCK,		"cannot-get-lock"},
-	{PK_ERROR_ENUM_NO_PACKAGES_TO_UPDATE,	"no-packages-to-update"},
-	{PK_ERROR_ENUM_CANNOT_WRITE_REPO_CONFIG, "cannot-write-repo-config"},
-	{PK_ERROR_ENUM_LOCAL_INSTALL_FAILED,	"local-install-failed"},
-	{PK_ERROR_ENUM_BAD_GPG_SIGNATURE,	"bad-gpg-signature"},
-	{PK_ERROR_ENUM_MISSING_GPG_SIGNATURE,	"missing-gpg-signature"},
-	{PK_ERROR_ENUM_CANNOT_INSTALL_SOURCE_PACKAGE,	"cannot-install-source-package"},
-	{PK_ERROR_ENUM_REPO_CONFIGURATION_ERROR,	"repo-configuration-error"},
-	{PK_ERROR_ENUM_NO_LICENSE_AGREEMENT,	"no-license-agreement"},
-	{PK_ERROR_ENUM_FILE_CONFLICTS,		"file-conflicts"},
-	{PK_ERROR_ENUM_PACKAGE_CONFLICTS,	"package-conflicts"},
-	{PK_ERROR_ENUM_REPO_NOT_AVAILABLE,	"repo-not-available"},
-	{PK_ERROR_ENUM_INVALID_PACKAGE_FILE,	"invalid-package-file"},
-	{PK_ERROR_ENUM_PACKAGE_INSTALL_BLOCKED, "package-install-blocked"},
-	{PK_ERROR_ENUM_PACKAGE_CORRUPT,		"package-corrupt"},
-	{PK_ERROR_ENUM_ALL_PACKAGES_ALREADY_INSTALLED, "all-packages-already-installed"},
-	{PK_ERROR_ENUM_FILE_NOT_FOUND,		"file-not-found"},
-	{PK_ERROR_ENUM_NO_MORE_MIRRORS_TO_TRY,	"no-more-mirrors-to-try"},
-	{PK_ERROR_ENUM_NO_DISTRO_UPGRADE_DATA,	"no-distro-upgrade-data"},
-	{PK_ERROR_ENUM_INCOMPATIBLE_ARCHITECTURE,	"incompatible-architecture"},
-	{PK_ERROR_ENUM_NO_SPACE_ON_DEVICE,	"no-space-on-device"},
-	{PK_ERROR_ENUM_MEDIA_CHANGE_REQUIRED,	"media-change-required"},
-	{PK_ERROR_ENUM_NOT_AUTHORIZED,		"not-authorized"},
-	{PK_ERROR_ENUM_UPDATE_NOT_FOUND,	"update-not-found"},
-	{PK_ERROR_ENUM_CANNOT_INSTALL_REPO_UNSIGNED,	"cannot-install-repo-unsigned"},
-	{PK_ERROR_ENUM_CANNOT_UPDATE_REPO_UNSIGNED,	"cannot-update-repo-unsigned"},
-	{PK_ERROR_ENUM_CANNOT_GET_FILELIST, "cannot-get-filelist"},
-	{PK_ERROR_ENUM_CANNOT_GET_REQUIRES, "cannot-get-requires"},
-	{PK_ERROR_ENUM_CANNOT_DISABLE_REPOSITORY, "cannot-disable-repository"},
-	{PK_ERROR_ENUM_RESTRICTED_DOWNLOAD, "restricted-download"},
-	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_CONFIGURE, "package-failed-to-configure"},
-	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_BUILD, "package-failed-to-build"},
-	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_INSTALL, "package-failed-to-install"},
-	{PK_ERROR_ENUM_PACKAGE_FAILED_TO_REMOVE, "package-failed-to-remove"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_restart[] = {
-	{PK_RESTART_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_RESTART_ENUM_NONE,			"none"},
-	{PK_RESTART_ENUM_SYSTEM,		"system"},
-	{PK_RESTART_ENUM_SESSION,		"session"},
-	{PK_RESTART_ENUM_APPLICATION,		"application"},
-	{PK_RESTART_ENUM_SECURITY_SYSTEM,	"security-system"},
-	{PK_RESTART_ENUM_SECURITY_SESSION,	"security-session"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_message[] = {
-	{PK_MESSAGE_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_MESSAGE_ENUM_BROKEN_MIRROR,		"broken-mirror"},
-	{PK_MESSAGE_ENUM_CONNECTION_REFUSED,	"connection-refused"},
-	{PK_MESSAGE_ENUM_PARAMETER_INVALID,	"parameter-invalid"},
-	{PK_MESSAGE_ENUM_PRIORITY_INVALID,	"priority-invalid"},
-	{PK_MESSAGE_ENUM_BACKEND_ERROR,		"backend-error"},
-	{PK_MESSAGE_ENUM_DAEMON_ERROR,		"daemon-error"},
-	{PK_MESSAGE_ENUM_CACHE_BEING_REBUILT,	"cache-being-rebuilt"},
-	{PK_MESSAGE_ENUM_UNTRUSTED_PACKAGE,	"untrusted-package"},
-	{PK_MESSAGE_ENUM_NEWER_PACKAGE_EXISTS,	"newer-package-exists"},
-	{PK_MESSAGE_ENUM_COULD_NOT_FIND_PACKAGE,	"could-not-find-package"},
-	{PK_MESSAGE_ENUM_CONFIG_FILES_CHANGED,	"config-files-changed"},
-	{PK_MESSAGE_ENUM_PACKAGE_ALREADY_INSTALLED, "package-already-installed"},
-	{PK_MESSAGE_ENUM_AUTOREMOVE_IGNORED, "autoremove-ignored"},
-	{PK_MESSAGE_ENUM_REPO_METADATA_DOWNLOAD_FAILED, "repo-metadata-download-failed"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_filter[] = {
-	{PK_FILTER_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_FILTER_ENUM_NONE,			"none"},
-	{PK_FILTER_ENUM_INSTALLED,		"installed"},
-	{PK_FILTER_ENUM_NOT_INSTALLED,		"~installed"},
-	{PK_FILTER_ENUM_DEVELOPMENT,		"devel"},
-	{PK_FILTER_ENUM_NOT_DEVELOPMENT,	"~devel"},
-	{PK_FILTER_ENUM_GUI,			"gui"},
-	{PK_FILTER_ENUM_NOT_GUI,		"~gui"},
-	{PK_FILTER_ENUM_FREE,			"free"},
-	{PK_FILTER_ENUM_NOT_FREE,		"~free"},
-	{PK_FILTER_ENUM_VISIBLE,		"visible"},
-	{PK_FILTER_ENUM_NOT_VISIBLE,		"~visible"},
-	{PK_FILTER_ENUM_SUPPORTED,		"supported"},
-	{PK_FILTER_ENUM_NOT_SUPPORTED,		"~supported"},
-	{PK_FILTER_ENUM_BASENAME,		"basename"},
-	{PK_FILTER_ENUM_NOT_BASENAME,		"~basename"},
-	{PK_FILTER_ENUM_NEWEST,			"newest"},
-	{PK_FILTER_ENUM_NOT_NEWEST,		"~newest"},
-	{PK_FILTER_ENUM_ARCH,			"arch"},
-	{PK_FILTER_ENUM_NOT_ARCH,		"~arch"},
-	{PK_FILTER_ENUM_SOURCE,			"source"},
-	{PK_FILTER_ENUM_NOT_SOURCE,		"~source"},
-	{PK_FILTER_ENUM_COLLECTIONS,		"collections"},
-	{PK_FILTER_ENUM_NOT_COLLECTIONS,	"~collections"},
-	{PK_FILTER_ENUM_APPLICATION,		"application"},
-	{PK_FILTER_ENUM_NOT_APPLICATION,	"~application"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_group[] = {
-	{PK_GROUP_ENUM_UNKNOWN,			"unknown"},	/* fall though value */
-	{PK_GROUP_ENUM_ACCESSIBILITY,		"accessibility"},
-	{PK_GROUP_ENUM_ACCESSORIES,		"accessories"},
-	{PK_GROUP_ENUM_EDUCATION,		"education"},
-	{PK_GROUP_ENUM_GAMES,			"games"},
-	{PK_GROUP_ENUM_GRAPHICS,		"graphics"},
-	{PK_GROUP_ENUM_INTERNET,		"internet"},
-	{PK_GROUP_ENUM_OFFICE,			"office"},
-	{PK_GROUP_ENUM_OTHER,			"other"},
-	{PK_GROUP_ENUM_PROGRAMMING,		"programming"},
-	{PK_GROUP_ENUM_MULTIMEDIA,		"multimedia"},
-	{PK_GROUP_ENUM_SYSTEM,			"system"},
-	{PK_GROUP_ENUM_DESKTOP_GNOME,		"desktop-gnome"},
-	{PK_GROUP_ENUM_DESKTOP_KDE,		"desktop-kde"},
-	{PK_GROUP_ENUM_DESKTOP_XFCE,		"desktop-xfce"},
-	{PK_GROUP_ENUM_DESKTOP_OTHER,		"desktop-other"},
-	{PK_GROUP_ENUM_PUBLISHING,		"publishing"},
-	{PK_GROUP_ENUM_SERVERS,			"servers"},
-	{PK_GROUP_ENUM_FONTS,			"fonts"},
-	{PK_GROUP_ENUM_ADMIN_TOOLS,		"admin-tools"},
-	{PK_GROUP_ENUM_LEGACY,			"legacy"},
-	{PK_GROUP_ENUM_LOCALIZATION,		"localization"},
-	{PK_GROUP_ENUM_VIRTUALIZATION,		"virtualization"},
-	{PK_GROUP_ENUM_POWER_MANAGEMENT,	"power-management"},
-	{PK_GROUP_ENUM_SECURITY,		"security"},
-	{PK_GROUP_ENUM_COMMUNICATION,		"communication"},
-	{PK_GROUP_ENUM_NETWORK,			"network"},
-	{PK_GROUP_ENUM_MAPS,			"maps"},
-	{PK_GROUP_ENUM_REPOS,			"repos"},
-	{PK_GROUP_ENUM_SCIENCE,			"science"},
-	{PK_GROUP_ENUM_DOCUMENTATION,		"documentation"},
-	{PK_GROUP_ENUM_ELECTRONICS,		"electronics"},
-	{PK_GROUP_ENUM_COLLECTIONS,		"collections"},
-	{PK_GROUP_ENUM_VENDOR,			"vendor"},
-	{PK_GROUP_ENUM_NEWEST,			"newest"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_update_state[] = {
-	{PK_UPDATE_STATE_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_UPDATE_STATE_ENUM_TESTING,		"testing"},
-	{PK_UPDATE_STATE_ENUM_UNSTABLE,		"unstable"},
-	{PK_UPDATE_STATE_ENUM_STABLE,		"stable"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_info[] = {
-	{PK_INFO_ENUM_UNKNOWN,			"unknown"},	/* fall though value */
-	{PK_INFO_ENUM_INSTALLED,		"installed"},
-	{PK_INFO_ENUM_AVAILABLE,		"available"},
-	{PK_INFO_ENUM_LOW,			"low"},
-	{PK_INFO_ENUM_NORMAL,			"normal"},
-	{PK_INFO_ENUM_IMPORTANT,		"important"},
-	{PK_INFO_ENUM_SECURITY,			"security"},
-	{PK_INFO_ENUM_BUGFIX,			"bugfix"},
-	{PK_INFO_ENUM_ENHANCEMENT,		"enhancement"},
-	{PK_INFO_ENUM_BLOCKED,			"blocked"},
-	{PK_INFO_ENUM_DOWNLOADING,		"downloading"},
-	{PK_INFO_ENUM_UPDATING,			"updating"},
-	{PK_INFO_ENUM_INSTALLING,		"installing"},
-	{PK_INFO_ENUM_REMOVING,			"removing"},
-	{PK_INFO_ENUM_CLEANUP,			"cleanup"},
-	{PK_INFO_ENUM_OBSOLETING,		"obsoleting"},
-	{PK_INFO_ENUM_COLLECTION_INSTALLED,	"collection-installed"},
-	{PK_INFO_ENUM_COLLECTION_AVAILABLE,	"collection-available"},
-	{PK_INFO_ENUM_FINISHED,			"finished"},
-	{PK_INFO_ENUM_REINSTALLING,		"reinstalling"},
-	{PK_INFO_ENUM_DOWNGRADING,		"downgrading"},
-	{PK_INFO_ENUM_PREPARING,		"preparing"},
-	{PK_INFO_ENUM_DECOMPRESSING,		"decompressing"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_sig_type[] = {
-	{PK_SIGTYPE_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_SIGTYPE_ENUM_GPG,			"gpg"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_upgrade[] = {
-	{PK_DISTRO_UPGRADE_ENUM_UNKNOWN,	"unknown"},	/* fall though value */
-	{PK_DISTRO_UPGRADE_ENUM_STABLE,		"stable"},
-	{PK_DISTRO_UPGRADE_ENUM_UNSTABLE,		"unstable"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_provides[] = {
-	{PK_PROVIDES_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_PROVIDES_ENUM_ANY,			"any"},
-	{PK_PROVIDES_ENUM_MODALIAS,		"modalias"},
-	{PK_PROVIDES_ENUM_CODEC,		"codec"},
-	{PK_PROVIDES_ENUM_MIMETYPE,		"mimetype"},
-	{PK_PROVIDES_ENUM_HARDWARE_DRIVER,	"driver"},
-	{PK_PROVIDES_ENUM_FONT,			"font"},
-	{PK_PROVIDES_ENUM_POSTSCRIPT_DRIVER,	"postscript-driver"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_network[] = {
-	{PK_NETWORK_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_NETWORK_ENUM_OFFLINE,		"offline"},
-	{PK_NETWORK_ENUM_ONLINE,		"online"},
-	{PK_NETWORK_ENUM_WIRED,			"wired"},
-	{PK_NETWORK_ENUM_WIFI,			"wifi"},
-	{PK_NETWORK_ENUM_MOBILE,		"mobile"},
-	{0, NULL}
-};
-
-/* DO NOT ADD ENTRIES MANUALLY... Use pk-refresh-licenses in tools */
-static const PkEnumMatch enum_free_licenses[] = {
-	{PK_LICENSE_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_LICENSE_ENUM_AAL,			"AAL"},
-	{PK_LICENSE_ENUM_ADOBE,			"Adobe"},
-	{PK_LICENSE_ENUM_ADSL,			"ADSL"},
-	{PK_LICENSE_ENUM_AFL,			"AFL"},
-	{PK_LICENSE_ENUM_AGPLV1,		"AGPLv1"},
-	{PK_LICENSE_ENUM_AMPAS_BSD,		"AMPAS BSD"},
-	{PK_LICENSE_ENUM_APSL_2_DOT_0,		"APSL 2.0"},
-	{PK_LICENSE_ENUM_ARL,			"ARL"},
-	{PK_LICENSE_ENUM_ARTISTIC_2_DOT_0,	"Artistic 2.0"},
-	{PK_LICENSE_ENUM_ARTISTIC_CLARIFIED,	"Artistic clarified"},
-	{PK_LICENSE_ENUM_ASL_1_DOT_0,		"ASL 1.0"},
-	{PK_LICENSE_ENUM_ASL_1_DOT_1,		"ASL 1.1"},
-	{PK_LICENSE_ENUM_ASL_2_DOT_0,		"ASL 2.0"},
-	{PK_LICENSE_ENUM_BITTORRENT,		"BitTorrent"},
-	{PK_LICENSE_ENUM_BOOST,			"Boost"},
-	{PK_LICENSE_ENUM_BSD,			"BSD"},
-	{PK_LICENSE_ENUM_BSD_WITH_ADVERTISING,	"BSD with advertising"},
-	{PK_LICENSE_ENUM_CATOSL,		"CATOSL"},
-	{PK_LICENSE_ENUM_CC_BY,			"CC-BY"},
-	{PK_LICENSE_ENUM_CC_BY_SA,		"CC-BY-SA"},
-	{PK_LICENSE_ENUM_CDDL,			"CDDL"},
-	{PK_LICENSE_ENUM_CDL,			"CDL"},
-	{PK_LICENSE_ENUM_CECILL,		"CeCILL"},
-	{PK_LICENSE_ENUM_CECILL_B,		"CeCILL-B"},
-	{PK_LICENSE_ENUM_CECILL_C,		"CeCILL-C"},
-	{PK_LICENSE_ENUM_CNRI,			"CNRI"},
-	{PK_LICENSE_ENUM_CONDOR,		"Condor"},
-	{PK_LICENSE_ENUM_COPYRIGHT_ONLY,	"Copyright only"},
-	{PK_LICENSE_ENUM_CPAL,			"CPAL"},
-	{PK_LICENSE_ENUM_CPL,			"CPL"},
-	{PK_LICENSE_ENUM_CRYSTAL_STACKER,	"Crystal Stacker"},
-	{PK_LICENSE_ENUM_DOC,			"DOC"},
-	{PK_LICENSE_ENUM_DSL,			"DSL"},
-	{PK_LICENSE_ENUM_DVIPDFM,		"dvipdfm"},
-	{PK_LICENSE_ENUM_ECL_1_DOT_0,		"ECL 1.0"},
-	{PK_LICENSE_ENUM_ECL_2_DOT_0,		"ECL 2.0"},
-	{PK_LICENSE_ENUM_ECOS,			"eCos"},
-	{PK_LICENSE_ENUM_EFL_2_DOT_0,		"EFL 2.0"},
-	{PK_LICENSE_ENUM_ENTESSA,		"Entessa"},
-	{PK_LICENSE_ENUM_EPL,			"EPL"},
-	{PK_LICENSE_ENUM_ERPL,			"ERPL"},
-	{PK_LICENSE_ENUM_EUROSYM,		"Eurosym"},
-	{PK_LICENSE_ENUM_EU_DATAGRID,		"EU Datagrid"},
-	{PK_LICENSE_ENUM_FAIR,			"Fair"},
-	{PK_LICENSE_ENUM_FBSDDL,		"FBSDDL"},
-	{PK_LICENSE_ENUM_FREE_ART,		"Free Art"},
-	{PK_LICENSE_ENUM_FTL,			"FTL"},
-	{PK_LICENSE_ENUM_GEOGRATIS,		"GeoGratis"},
-	{PK_LICENSE_ENUM_GFDL,			"GFDL"},
-	{PK_LICENSE_ENUM_GIFTWARE,		"Giftware"},
-	{PK_LICENSE_ENUM_GL2PS,			"GL2PS"},
-	{PK_LICENSE_ENUM_GLIDE,			"Glide"},
-	{PK_LICENSE_ENUM_GNUPLOT,		"gnuplot"},
-	{PK_LICENSE_ENUM_GPLV1,			"GPLv1"},
-	{PK_LICENSE_ENUM_GPLV2,			"GPLv2"},
-	{PK_LICENSE_ENUM_GPLV2_OR_ARTISTIC,	"GPLv2 or Artistic"},
-	{PK_LICENSE_ENUM_GPLV2_PLUS,		"GPLv2+"},
-	{PK_LICENSE_ENUM_GPLV2_PLUS_OR_ARTISTIC, "GPLv2+ or Artistic"},
-	{PK_LICENSE_ENUM_GPLV2_PLUS_WITH_EXCEPTIONS, "GPLv2+ with exceptions"},
-	{PK_LICENSE_ENUM_GPLV2_WITH_EXCEPTIONS,	"GPLv2 with exceptions"},
-	{PK_LICENSE_ENUM_GPLV3,			"GPLv3"},
-	{PK_LICENSE_ENUM_GPLV3_PLUS,		"GPLv3+"},
-	{PK_LICENSE_ENUM_GPLV3_PLUS_WITH_EXCEPTIONS, "GPLv3+ with exceptions"},
-	{PK_LICENSE_ENUM_GPLV3_WITH_EXCEPTIONS,	"GPLv3 with exceptions"},
-	{PK_LICENSE_ENUM_GPL_PLUS,		"GPL+"},
-	{PK_LICENSE_ENUM_GPL_PLUS_OR_ARTISTIC,	"GPL+ or Artistic"},
-	{PK_LICENSE_ENUM_GPL_PLUS_WITH_EXCEPTIONS, "GPL+ with exceptions"},
-	{PK_LICENSE_ENUM_IBM,			"IBM"},
-	{PK_LICENSE_ENUM_IEEE,			"IEEE"},
-	{PK_LICENSE_ENUM_IJG,			"IJG"},
-	{PK_LICENSE_ENUM_IMAGEMAGICK,		"ImageMagick"},
-	{PK_LICENSE_ENUM_IMATIX,		"iMatix"},
-	{PK_LICENSE_ENUM_IMLIB2,		"Imlib2"},
-	{PK_LICENSE_ENUM_INTEL_ACPI,		"Intel ACPI"},
-	{PK_LICENSE_ENUM_INTERBASE,		"Interbase"},
-	{PK_LICENSE_ENUM_ISC,			"ISC"},
-	{PK_LICENSE_ENUM_JABBER,		"Jabber"},
-	{PK_LICENSE_ENUM_JASPER,		"JasPer"},
-	{PK_LICENSE_ENUM_JPYTHON,		"JPython"},
-	{PK_LICENSE_ENUM_KNUTH,			"Knuth"},
-	{PK_LICENSE_ENUM_LBNL_BSD,		"LBNL BSD"},
-	{PK_LICENSE_ENUM_LGPLV2,		"LGPLv2"},
-	{PK_LICENSE_ENUM_LGPLV2_PLUS,		"LGPLv2+"},
-	{PK_LICENSE_ENUM_LGPLV2_PLUS_OR_ARTISTIC, "LGPLv2+ or Artistic"},
-	{PK_LICENSE_ENUM_LGPLV2_PLUS_WITH_EXCEPTIONS, "LGPLv2+ with exceptions"},
-	{PK_LICENSE_ENUM_LGPLV2_WITH_EXCEPTIONS, "LGPLv2 with exceptions"},
-	{PK_LICENSE_ENUM_LGPLV3,		"LGPLv3"},
-	{PK_LICENSE_ENUM_LGPLV3_PLUS,		"LGPLv3+"},
-	{PK_LICENSE_ENUM_LGPLV3_PLUS_WITH_EXCEPTIONS, "LGPLv3+ with exceptions"},
-	{PK_LICENSE_ENUM_LGPLV3_WITH_EXCEPTIONS, "LGPLv3 with exceptions"},
-	{PK_LICENSE_ENUM_LIBTIFF,		"libtiff"},
-	{PK_LICENSE_ENUM_LLGPL,			"LLGPL"},
-	{PK_LICENSE_ENUM_LOGICA,		"Logica"},
-	{PK_LICENSE_ENUM_LPL,			"LPL"},
-	{PK_LICENSE_ENUM_LPPL,			"LPPL"},
-	{PK_LICENSE_ENUM_MECAB_IPADIC,		"mecab-ipadic"},
-	{PK_LICENSE_ENUM_MIROS,			"MirOS"},
-	{PK_LICENSE_ENUM_MIT,			"MIT"},
-	{PK_LICENSE_ENUM_MIT_WITH_ADVERTISING,	"MIT with advertising"},
-	{PK_LICENSE_ENUM_MOTOSOTO,		"Motosoto"},
-	{PK_LICENSE_ENUM_MPLV1_DOT_0,		"MPLv1.0"},
-	{PK_LICENSE_ENUM_MPLV1_DOT_1,		"MPLv1.1"},
-	{PK_LICENSE_ENUM_MS_PL,			"MS-PL"},
-	{PK_LICENSE_ENUM_NAUMEN,		"Naumen"},
-	{PK_LICENSE_ENUM_NCSA,			"NCSA"},
-	{PK_LICENSE_ENUM_NETCDF,		"NetCDF"},
-	{PK_LICENSE_ENUM_NETSCAPE,		"Netscape"},
-	{PK_LICENSE_ENUM_NEWMAT,		"Newmat"},
-	{PK_LICENSE_ENUM_NGPL,			"NGPL"},
-	{PK_LICENSE_ENUM_NOKIA,			"Nokia"},
-	{PK_LICENSE_ENUM_NOSL,			"NOSL"},
-	{PK_LICENSE_ENUM_NOWEB,			"Noweb"},
-	{PK_LICENSE_ENUM_OAL,			"OAL"},
-	{PK_LICENSE_ENUM_OFSFDL,		"OFSFDL"},
-	{PK_LICENSE_ENUM_OPENLDAP,		"OpenLDAP"},
-	{PK_LICENSE_ENUM_OPENPBS,		"OpenPBS"},
-	{PK_LICENSE_ENUM_OPENSSL,		"OpenSSL"},
-	{PK_LICENSE_ENUM_OREILLY,		"OReilly"},
-	{PK_LICENSE_ENUM_OSL_1_DOT_0,		"OSL 1.0"},
-	{PK_LICENSE_ENUM_OSL_1_DOT_1,		"OSL 1.1"},
-	{PK_LICENSE_ENUM_OSL_2_DOT_0,		"OSL 2.0"},
-	{PK_LICENSE_ENUM_OSL_2_DOT_1,		"OSL 2.1"},
-	{PK_LICENSE_ENUM_OSL_3_DOT_0,		"OSL 3.0"},
-	{PK_LICENSE_ENUM_PHORUM,		"Phorum"},
-	{PK_LICENSE_ENUM_PHP,			"PHP"},
-	{PK_LICENSE_ENUM_PLEXUS,		"Plexus"},
-	{PK_LICENSE_ENUM_PSUTILS,		"psutils"},
-	{PK_LICENSE_ENUM_PUBLIC_DOMAIN,		"Public Domain"},
-	{PK_LICENSE_ENUM_PUBLIC_USE,		"Public Use"},
-	{PK_LICENSE_ENUM_PYTHON,		"Python"},
-	{PK_LICENSE_ENUM_QHULL,			"Qhull"},
-	{PK_LICENSE_ENUM_QPL,			"QPL"},
-	{PK_LICENSE_ENUM_RICEBSD,		"RiceBSD"},
-	{PK_LICENSE_ENUM_RPSL,			"RPSL"},
-	{PK_LICENSE_ENUM_RUBY,			"Ruby"},
-	{PK_LICENSE_ENUM_SAXPATH,		"Saxpath"},
-	{PK_LICENSE_ENUM_SCEA,			"SCEA"},
-	{PK_LICENSE_ENUM_SCRIP,			"SCRIP"},
-	{PK_LICENSE_ENUM_SENDMAIL,		"Sendmail"},
-	{PK_LICENSE_ENUM_SISSL,			"SISSL"},
-	{PK_LICENSE_ENUM_SLEEPYCAT,		"Sleepycat"},
-	{PK_LICENSE_ENUM_SLIB,			"SLIB"},
-	{PK_LICENSE_ENUM_SNIA,			"SNIA"},
-	{PK_LICENSE_ENUM_SPL,			"SPL"},
-	{PK_LICENSE_ENUM_TCL,			"TCL"},
-	{PK_LICENSE_ENUM_TMATE,			"TMate"},
-	{PK_LICENSE_ENUM_TPL,			"TPL"},
-	{PK_LICENSE_ENUM_UCD,			"UCD"},
-	{PK_LICENSE_ENUM_VIM,			"Vim"},
-	{PK_LICENSE_ENUM_VNLSL,			"VNLSL"},
-	{PK_LICENSE_ENUM_VOSTROM,		"VOSTROM"},
-	{PK_LICENSE_ENUM_VSL,			"VSL"},
-	{PK_LICENSE_ENUM_W3C,			"W3C"},
-	{PK_LICENSE_ENUM_WEBMIN,		"Webmin"},
-	{PK_LICENSE_ENUM_WTFPL,			"WTFPL"},
-	{PK_LICENSE_ENUM_WXWIDGETS,		"wxWidgets"},
-	{PK_LICENSE_ENUM_XEROX,			"Xerox"},
-	{PK_LICENSE_ENUM_XINETD,		"xinetd"},
-	{PK_LICENSE_ENUM_YPLV1_DOT_1,		"YPLv1.1"},
-	{PK_LICENSE_ENUM_ZEND,			"Zend"},
-	{PK_LICENSE_ENUM_ZLIB,			"zlib"},
-	{PK_LICENSE_ENUM_ZLIB_WITH_ACKNOWLEDGEMENT, "zlib with acknowledgement"},
-	{PK_LICENSE_ENUM_ZPLV1_DOT_0,		"ZPLv1.0"},
-	{PK_LICENSE_ENUM_ZPLV2_DOT_0,		"ZPLv2.0"},
-	{PK_LICENSE_ENUM_ZPLV2_DOT_1,		"ZPLv2.1"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_media_type[] = {
-	{PK_MEDIA_TYPE_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_MEDIA_TYPE_ENUM_CD,			"cd"},
-	{PK_MEDIA_TYPE_ENUM_DVD,		"dvd"},
-	{PK_MEDIA_TYPE_ENUM_DISC,		"disc"},
-	{0, NULL}
-};
-
-static const PkEnumMatch enum_authorize_type[] = {
-	{PK_AUTHORIZE_ENUM_UNKNOWN,		"unknown"},	/* fall though value */
-	{PK_AUTHORIZE_ENUM_YES,			"yes"},
-	{PK_AUTHORIZE_ENUM_NO,			"no"},
-	{PK_AUTHORIZE_ENUM_INTERACTIVE,		"interactive"},
-	{0, NULL}
-};
-
-/**
- * pk_enum_find_value:
- * @table: A #PkEnumMatch enum table of values
- * @string: the string constant to search for, e.g. "desktop-gnome"
- *
- * Search for a string value in a table of constants.
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- */
-guint
-pk_enum_find_value (const PkEnumMatch *table, const gchar *string)
-{
-	guint i;
-	const gchar *string_tmp;
-
-	/* return the first entry on non-found or error */
-	if (string == NULL) {
-		return table[0].value;
-	}
-	for (i=0;;i++) {
-		string_tmp = table[i].string;
-		if (string_tmp == NULL)
-			break;
-		/* keep strcmp for speed */
-		if (strcmp (string, string_tmp) == 0)
-			return table[i].value;
-	}
-	return table[0].value;
-}
-
-/**
- * pk_enum_find_string:
- * @table: A #PkEnumMatch enum table of values
- * @value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- *
- * Search for a enum value in a table of constants.
- *
- * Return value: the string constant, e.g. "desktop-gnome"
- */
-const gchar *
-pk_enum_find_string (const PkEnumMatch *table, guint value)
-{
-	guint i;
-	guint tmp;
-	const gchar *string_tmp;
-
-	for (i=0;;i++) {
-		string_tmp = table[i].string;
-		if (string_tmp == NULL)
-			break;
-		tmp = table[i].value;
-		if (tmp == value)
-			return table[i].string;
-	}
-	return table[0].string;
-}
-
-/**
- * pk_sig_type_enum_from_text:
- * @sig_type: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- */
-PkSigTypeEnum
-pk_sig_type_enum_from_text (const gchar *sig_type)
-{
-	return pk_enum_find_value (enum_sig_type, sig_type);
-}
-
-/**
- * pk_sig_type_enum_to_text:
- * @sig_type: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_sig_type_enum_to_text (PkSigTypeEnum sig_type)
-{
-	return pk_enum_find_string (enum_sig_type, sig_type);
-}
-
-/**
- * pk_distro_upgrade_enum_from_text:
- * @upgrade: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_DISTRO_UPGRADE_ENUM_STABLE
- */
-PkDistroUpgradeEnum
-pk_distro_upgrade_enum_from_text (const gchar *upgrade)
-{
-	return pk_enum_find_value (enum_upgrade, upgrade);
-}
-
-/**
- * pk_distro_upgrade_enum_to_text:
- * @upgrade: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "stable"
- **/
-const gchar *
-pk_distro_upgrade_enum_to_text (PkDistroUpgradeEnum upgrade)
-{
-	return pk_enum_find_string (enum_upgrade, upgrade);
-}
-
-/**
- * pk_provides_enum_from_text:
- * @provides: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_PROVIDES_ENUM_MODALIAS
- */
-PkProvidesEnum
-pk_provides_enum_from_text (const gchar *provides)
-{
-	return pk_enum_find_value (enum_provides, provides);
-}
-
-/**
- * pk_provides_enum_to_text:
- * @provides: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "codec"
- **/
-const gchar *
-pk_provides_enum_to_text (PkProvidesEnum provides)
-{
-	return pk_enum_find_string (enum_provides, provides);
-}
-
-/**
- * pk_info_enum_from_text:
- * @info: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- */
-PkInfoEnum
-pk_info_enum_from_text (const gchar *info)
-{
-	return pk_enum_find_value (enum_info, info);
-}
-
-/**
- * pk_info_enum_to_text:
- * @info: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_info_enum_to_text (PkInfoEnum info)
-{
-	return pk_enum_find_string (enum_info, info);
-}
-
-/**
- * pk_exit_enum_from_text:
- * @exit: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- */
-PkExitEnum
-pk_exit_enum_from_text (const gchar *exit_text)
-{
-	return pk_enum_find_value (enum_exit, exit_text);
-}
-
-/**
- * pk_exit_enum_to_text:
- * @exit: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_exit_enum_to_text (PkExitEnum exit_enum)
-{
-	return pk_enum_find_string (enum_exit, exit_enum);
-}
-
-/**
- * pk_network_enum_from_text:
- * @network: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- */
-PkNetworkEnum
-pk_network_enum_from_text (const gchar *network)
-{
-	return pk_enum_find_value (enum_network, network);
-}
-
-/**
- * pk_network_enum_to_text:
- * @network: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_network_enum_to_text (PkNetworkEnum network)
-{
-	return pk_enum_find_string (enum_network, network);
-}
-
-/**
- * pk_status_enum_from_text:
- * @status: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkStatusEnum
-pk_status_enum_from_text (const gchar *status)
-{
-	return pk_enum_find_value (enum_status, status);
-}
-
-/**
- * pk_status_enum_to_text:
- * @status: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_status_enum_to_text (PkStatusEnum status)
-{
-	return pk_enum_find_string (enum_status, status);
-}
-
-/**
- * pk_role_enum_from_text:
- * @role: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkRoleEnum
-pk_role_enum_from_text (const gchar *role)
-{
-	return pk_enum_find_value (enum_role, role);
-}
-
-/**
- * pk_role_enum_to_text:
- * @role: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_role_enum_to_text (PkRoleEnum role)
-{
-	return pk_enum_find_string (enum_role, role);
-}
-
-/**
- * pk_error_enum_from_text:
- * @code: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkErrorCodeEnum
-pk_error_enum_from_text (const gchar *code)
-{
-	return pk_enum_find_value (enum_error, code);
-}
-
-/**
- * pk_error_enum_to_text:
- * @code: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_error_enum_to_text (PkErrorCodeEnum code)
-{
-	return pk_enum_find_string (enum_error, code);
-}
-
-/**
- * pk_restart_enum_from_text:
- * @restart: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkRestartEnum
-pk_restart_enum_from_text (const gchar *restart)
-{
-	return pk_enum_find_value (enum_restart, restart);
-}
-
-/**
- * pk_restart_enum_to_text:
- * @restart: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_restart_enum_to_text (PkRestartEnum restart)
-{
-	return pk_enum_find_string (enum_restart, restart);
-}
-
-/**
- * pk_message_enum_from_text:
- * @message: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkMessageEnum
-pk_message_enum_from_text (const gchar *message)
-{
-	return pk_enum_find_value (enum_message, message);
-}
-
-/**
- * pk_message_enum_to_text:
- * @message: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_message_enum_to_text (PkMessageEnum message)
-{
-	return pk_enum_find_string (enum_message, message);
-}
-
-/**
- * pk_group_enum_from_text:
- * @group: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkGroupEnum
-pk_group_enum_from_text (const gchar *group)
-{
-	return pk_enum_find_value (enum_group, group);
-}
-
-/**
- * pk_group_enum_to_text:
- * @group: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_group_enum_to_text (PkGroupEnum group)
-{
-	return pk_enum_find_string (enum_group, group);
-}
-
-/**
- * pk_update_state_enum_from_text:
- * @update_state: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. %PK_UPDATE_STATE_ENUM_STABLE
- **/
-PkUpdateStateEnum
-pk_update_state_enum_from_text (const gchar *update_state)
-{
-	return pk_enum_find_value (enum_update_state, update_state);
-}
-
-/**
- * pk_update_state_enum_to_text:
- * @update_state: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "testing"
- **/
-const gchar *
-pk_update_state_enum_to_text (PkUpdateStateEnum update_state)
-{
-	return pk_enum_find_string (enum_update_state, update_state);
-}
-
-/**
- * pk_filter_enum_from_text:
- * @filter: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkFilterEnum
-pk_filter_enum_from_text (const gchar *filter)
-{
-	return pk_enum_find_value (enum_filter, filter);
-}
-
-/**
- * pk_filter_enum_to_text:
- * @filter: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_filter_enum_to_text (PkFilterEnum filter)
-{
-	return pk_enum_find_string (enum_filter, filter);
-}
-
-/**
- * pk_license_enum_from_text:
- * @license: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_SIGTYPE_ENUM_GPG
- **/
-PkLicenseEnum
-pk_license_enum_from_text (const gchar *license)
-{
-	return pk_enum_find_value (enum_free_licenses, license);
-}
-
-/**
- * pk_license_enum_to_text:
- * @license: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "available"
- **/
-const gchar *
-pk_license_enum_to_text (PkLicenseEnum license)
-{
-	return pk_enum_find_string (enum_free_licenses, license);
-}
-
-/**
- * pk_media_type_enum_from_text:
- * @code: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_MEDIA_TYPE_ENUM_CD
- **/
-PkMediaTypeEnum
-pk_media_type_enum_from_text (const gchar *media_type)
-{
-	return pk_enum_find_value (enum_media_type, media_type);
-}
-
-/**
- * pk_media_type_enum_to_text:
- * @code: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "dvd"
- **/
-const gchar *
-pk_media_type_enum_to_text (PkMediaTypeEnum media_type)
-{
-	return pk_enum_find_string (enum_media_type, media_type);
-}
-
-/**
- * pk_authorize_type_enum_from_text:
- * @code: Text describing the enumerated type
- *
- * Converts a text enumerated type to its unsigned integer representation
- *
- * Return value: the enumerated constant value, e.g. PK_AUTHORIZE_ENUM_YES
- **/
-PkAuthorizeEnum
-pk_authorize_type_enum_from_text (const gchar *authorize_type)
-{
-	return pk_enum_find_value (enum_authorize_type, authorize_type);
-}
-
-/**
- * pk_authorize_type_enum_to_text:
- * @code: The enumerated type value
- *
- * Converts a enumerated type to its text representation
- *
- * Return value: the enumerated constant value, e.g. "yes"
- **/
-const gchar *
-pk_authorize_type_enum_to_text (PkAuthorizeEnum authorize_type)
-{
-	return pk_enum_find_string (enum_authorize_type, authorize_type);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_enum_test (gpointer user_data)
-{
-	EggTest *test = (EggTest *) user_data;
-	const gchar *string;
-	PkRoleEnum role_value;
-	guint i;
-
-	if (!egg_test_start (test, "PkEnum"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "find role_value");
-	role_value = pk_enum_find_value (enum_role, "search-file");
-	if (role_value == PK_ROLE_ENUM_SEARCH_FILE)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "find string");
-	string = pk_enum_find_string (enum_role, PK_ROLE_ENUM_SEARCH_FILE);
-	if (g_strcmp0 (string, "search-file") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "find value");
-	role_value = pk_role_enum_from_text ("search-file");
-	if (role_value == PK_ROLE_ENUM_SEARCH_FILE)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "find string");
-	string = pk_role_enum_to_text (PK_ROLE_ENUM_SEARCH_FILE);
-	if (g_strcmp0 (string, "search-file") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the role bitfield");
-	for (i=1; i<=PK_ROLE_ENUM_UNKNOWN; i++) {
-		string = pk_role_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the status bitfield");
-	for (i=1; i<=PK_STATUS_ENUM_UNKNOWN; i++) {
-		string = pk_status_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the exit bitfield");
-	for (i=0; i<=PK_EXIT_ENUM_UNKNOWN; i++) {
-		string = pk_exit_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the filter bitfield");
-	for (i=0; i<=PK_FILTER_ENUM_UNKNOWN; i++) {
-		string = pk_filter_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the restart bitfield");
-	for (i=0; i<=PK_RESTART_ENUM_UNKNOWN; i++) {
-		string = pk_restart_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the error_code bitfield");
-	for (i=0; i<=PK_ERROR_ENUM_UNKNOWN; i++) {
-		string = pk_error_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the group bitfield");
-	for (i=1; i<=PK_GROUP_ENUM_UNKNOWN; i++) {
-		string = pk_group_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the info bitfield");
-	for (i=1; i<=PK_INFO_ENUM_UNKNOWN; i++) {
-		string = pk_info_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the sig_type bitfield");
-	for (i=0; i<=PK_SIGTYPE_ENUM_UNKNOWN; i++) {
-		string = pk_sig_type_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the upgrade bitfield");
-	for (i=0; i<=PK_DISTRO_UPGRADE_ENUM_UNKNOWN; i++) {
-		string = pk_distro_upgrade_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the license bitfield");
-	for (i=0; i<=PK_LICENSE_ENUM_UNKNOWN; i++) {
-		string = pk_license_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check we convert all the media type bitfield");
-	for (i=0; i<=PK_MEDIA_TYPE_ENUM_UNKNOWN; i++) {
-		string = pk_media_type_enum_to_text (i);
-		if (string == NULL) {
-			egg_test_failed (test, "failed to get %i", i);
-			break;
-		}
-	}
-	egg_test_success (test, NULL);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-enum.h b/lib/packagekit-glib/pk-enum.h
deleted file mode 100644
index d3e3a3b..0000000
--- a/lib/packagekit-glib/pk-enum.h
+++ /dev/null
@@ -1,698 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_ENUM_H
-#define __PK_ENUM_H
-
-#include <glib-object.h>
-#include <glib.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkEnumMatch:
- *
- * Matching an enumerated type to a string
- **/
-typedef struct {
-	guint		 value;
-	const gchar	*string;
-} PkEnumMatch;
-
-/**
- * PkRoleEnum:
- *
- * What we were asked to do, this never changes for the lifetime of the
- * transaction.
- * Icons that have to represent the whole "aim" of the transaction will use
- * these constants
- **/
-typedef enum {
-	PK_ROLE_ENUM_CANCEL,
-	PK_ROLE_ENUM_GET_DEPENDS,
-	PK_ROLE_ENUM_GET_DETAILS,
-	PK_ROLE_ENUM_GET_FILES,
-	PK_ROLE_ENUM_GET_PACKAGES,
-	PK_ROLE_ENUM_GET_REPO_LIST,
-	PK_ROLE_ENUM_GET_REQUIRES,
-	PK_ROLE_ENUM_GET_UPDATE_DETAIL,
-	PK_ROLE_ENUM_GET_UPDATES,
-	PK_ROLE_ENUM_INSTALL_FILES,
-	PK_ROLE_ENUM_INSTALL_PACKAGES,
-	PK_ROLE_ENUM_INSTALL_SIGNATURE,
-	PK_ROLE_ENUM_REFRESH_CACHE,
-	PK_ROLE_ENUM_REMOVE_PACKAGES,
-	PK_ROLE_ENUM_REPO_ENABLE,
-	PK_ROLE_ENUM_REPO_SET_DATA,
-	PK_ROLE_ENUM_RESOLVE,
-	PK_ROLE_ENUM_ROLLBACK,
-	PK_ROLE_ENUM_SEARCH_DETAILS,
-	PK_ROLE_ENUM_SEARCH_FILE,
-	PK_ROLE_ENUM_SEARCH_GROUP,
-	PK_ROLE_ENUM_SEARCH_NAME,
-	PK_ROLE_ENUM_UPDATE_PACKAGES,
-	PK_ROLE_ENUM_UPDATE_SYSTEM,
-	PK_ROLE_ENUM_WHAT_PROVIDES,
-	PK_ROLE_ENUM_ACCEPT_EULA,
-	PK_ROLE_ENUM_DOWNLOAD_PACKAGES,
-	PK_ROLE_ENUM_GET_DISTRO_UPGRADES,
-	PK_ROLE_ENUM_GET_CATEGORIES,
-	PK_ROLE_ENUM_GET_OLD_TRANSACTIONS,
-	PK_ROLE_ENUM_SIMULATE_INSTALL_FILES,
-	PK_ROLE_ENUM_SIMULATE_INSTALL_PACKAGES,
-	PK_ROLE_ENUM_SIMULATE_REMOVE_PACKAGES,
-	PK_ROLE_ENUM_SIMULATE_UPDATE_PACKAGES,
-	PK_ROLE_ENUM_UNKNOWN
-} PkRoleEnum;
-
-/**
- * PkStatusEnum:
- *
- * What status we are now; this can change for each transaction giving a
- * status of what sort of thing is happening
- * Icons that change to represent the current status of the transaction will
- * use these constants
- * If you add to these, make sure you add filenames in gpk-watch.c also
- *
- * A typical transaction will do:
- * - schedule task
- *	WAIT
- * - run task
- *	SETUP
- * - wait for lock
- *	RUNNING
- *
- * This means that backends should run pk_backend_set_status (backend, PK_STATUS_ENUM_RUNNING)
- * when they are ready to start running the transaction and after a lock has been got.
- **/
-typedef enum {
-	PK_STATUS_ENUM_WAIT,
-	PK_STATUS_ENUM_SETUP,
-	PK_STATUS_ENUM_RUNNING,
-	PK_STATUS_ENUM_QUERY,
-	PK_STATUS_ENUM_INFO,
-	PK_STATUS_ENUM_REMOVE,
-	PK_STATUS_ENUM_REFRESH_CACHE,
-	PK_STATUS_ENUM_DOWNLOAD,
-	PK_STATUS_ENUM_INSTALL,
-	PK_STATUS_ENUM_UPDATE,
-	PK_STATUS_ENUM_CLEANUP,
-	PK_STATUS_ENUM_OBSOLETE,
-	PK_STATUS_ENUM_DEP_RESOLVE,
-	PK_STATUS_ENUM_SIG_CHECK,
-	PK_STATUS_ENUM_ROLLBACK,
-	PK_STATUS_ENUM_TEST_COMMIT,
-	PK_STATUS_ENUM_COMMIT,
-	PK_STATUS_ENUM_REQUEST,
-	PK_STATUS_ENUM_FINISHED,
-	PK_STATUS_ENUM_CANCEL,
-	PK_STATUS_ENUM_DOWNLOAD_REPOSITORY,
-	PK_STATUS_ENUM_DOWNLOAD_PACKAGELIST,
-	PK_STATUS_ENUM_DOWNLOAD_FILELIST,
-	PK_STATUS_ENUM_DOWNLOAD_CHANGELOG,
-	PK_STATUS_ENUM_DOWNLOAD_GROUP,
-	PK_STATUS_ENUM_DOWNLOAD_UPDATEINFO,
-	PK_STATUS_ENUM_REPACKAGING,
-	PK_STATUS_ENUM_LOADING_CACHE,
-	PK_STATUS_ENUM_SCAN_APPLICATIONS,
-	PK_STATUS_ENUM_GENERATE_PACKAGE_LIST,
-	PK_STATUS_ENUM_WAITING_FOR_LOCK,
-	PK_STATUS_ENUM_WAITING_FOR_AUTH,
-	PK_STATUS_ENUM_SCAN_PROCESS_LIST,
-	PK_STATUS_ENUM_CHECK_EXECUTABLE_FILES,
-	PK_STATUS_ENUM_CHECK_LIBRARIES,
-	PK_STATUS_ENUM_COPY_FILES,
-	PK_STATUS_ENUM_UNKNOWN
-} PkStatusEnum;
-
-/**
- * PkExitEnum:
- *
- * How the backend exited
- **/
-typedef enum {
-	PK_EXIT_ENUM_SUCCESS,
-	PK_EXIT_ENUM_FAILED,
-	PK_EXIT_ENUM_CANCELLED,
-	PK_EXIT_ENUM_KEY_REQUIRED,
-	PK_EXIT_ENUM_EULA_REQUIRED,
-	PK_EXIT_ENUM_KILLED, /* when we forced the cancel, but had to SIGKILL */
-	PK_EXIT_ENUM_MEDIA_CHANGE_REQUIRED,
-	PK_EXIT_ENUM_NEED_UNTRUSTED,
-	PK_EXIT_ENUM_UNKNOWN
-} PkExitEnum;
-
-/**
- * PkNetworkEnum:
- **/
-typedef enum {
-	PK_NETWORK_ENUM_OFFLINE,
-	PK_NETWORK_ENUM_ONLINE,
-	PK_NETWORK_ENUM_WIRED,
-	PK_NETWORK_ENUM_WIFI,
-	PK_NETWORK_ENUM_MOBILE,
-	PK_NETWORK_ENUM_UNKNOWN
-} PkNetworkEnum;
-
-/**
- * PkFilterEnum:
- *
- * The filter types
- **/
-typedef enum {
-	PK_FILTER_ENUM_NONE,
-	PK_FILTER_ENUM_INSTALLED,
-	PK_FILTER_ENUM_NOT_INSTALLED,
-	PK_FILTER_ENUM_DEVELOPMENT,
-	PK_FILTER_ENUM_NOT_DEVELOPMENT,
-	PK_FILTER_ENUM_GUI,
-	PK_FILTER_ENUM_NOT_GUI,
-	PK_FILTER_ENUM_FREE,
-	PK_FILTER_ENUM_NOT_FREE,
-	PK_FILTER_ENUM_VISIBLE,
-	PK_FILTER_ENUM_NOT_VISIBLE,
-	PK_FILTER_ENUM_SUPPORTED,
-	PK_FILTER_ENUM_NOT_SUPPORTED,
-	PK_FILTER_ENUM_BASENAME,
-	PK_FILTER_ENUM_NOT_BASENAME,
-	PK_FILTER_ENUM_NEWEST,
-	PK_FILTER_ENUM_NOT_NEWEST,
-	PK_FILTER_ENUM_ARCH,
-	PK_FILTER_ENUM_NOT_ARCH,
-	PK_FILTER_ENUM_SOURCE,
-	PK_FILTER_ENUM_NOT_SOURCE,
-	PK_FILTER_ENUM_COLLECTIONS,
-	PK_FILTER_ENUM_NOT_COLLECTIONS,
-	PK_FILTER_ENUM_APPLICATION,
-	PK_FILTER_ENUM_NOT_APPLICATION,
-	PK_FILTER_ENUM_UNKNOWN
-} PkFilterEnum;
-
-/**
- * PkRestartEnum:
- *
- * What restart we need to after a transaction, ordered by severity
- **/
-typedef enum {
-	PK_RESTART_ENUM_NONE,
-	PK_RESTART_ENUM_APPLICATION,
-	PK_RESTART_ENUM_SESSION,
-	PK_RESTART_ENUM_SYSTEM,
-	PK_RESTART_ENUM_SECURITY_SESSION,	/* a library that is being used by this package has been updated for security */
-	PK_RESTART_ENUM_SECURITY_SYSTEM,
-	PK_RESTART_ENUM_UNKNOWN
-} PkRestartEnum;
-
-/**
- * PkMessageEnum:
- *
- * What message type we need to show
- **/
-typedef enum {
-	PK_MESSAGE_ENUM_BROKEN_MIRROR,
-	PK_MESSAGE_ENUM_CONNECTION_REFUSED,
-	PK_MESSAGE_ENUM_PARAMETER_INVALID,
-	PK_MESSAGE_ENUM_PRIORITY_INVALID,
-	PK_MESSAGE_ENUM_BACKEND_ERROR,
-	PK_MESSAGE_ENUM_DAEMON_ERROR,
-	PK_MESSAGE_ENUM_CACHE_BEING_REBUILT,
-	PK_MESSAGE_ENUM_UNTRUSTED_PACKAGE,
-	PK_MESSAGE_ENUM_NEWER_PACKAGE_EXISTS,
-	PK_MESSAGE_ENUM_COULD_NOT_FIND_PACKAGE,
-	PK_MESSAGE_ENUM_CONFIG_FILES_CHANGED,
-	PK_MESSAGE_ENUM_PACKAGE_ALREADY_INSTALLED,
-	PK_MESSAGE_ENUM_AUTOREMOVE_IGNORED,
-	PK_MESSAGE_ENUM_REPO_METADATA_DOWNLOAD_FAILED,
-	PK_MESSAGE_ENUM_UNKNOWN
-} PkMessageEnum;
-
-/**
- * PkErrorCodeEnum:
- *
- * The error type
- **/
-typedef enum {
-	PK_ERROR_ENUM_OOM,
-	PK_ERROR_ENUM_NO_NETWORK,
-	PK_ERROR_ENUM_NOT_SUPPORTED,
-	PK_ERROR_ENUM_INTERNAL_ERROR,
-	PK_ERROR_ENUM_GPG_FAILURE,
-	PK_ERROR_ENUM_PACKAGE_ID_INVALID,
-	PK_ERROR_ENUM_PACKAGE_NOT_INSTALLED,
-	PK_ERROR_ENUM_PACKAGE_NOT_FOUND,
-	PK_ERROR_ENUM_PACKAGE_ALREADY_INSTALLED,
-	PK_ERROR_ENUM_PACKAGE_DOWNLOAD_FAILED,
-	PK_ERROR_ENUM_GROUP_NOT_FOUND,
-	PK_ERROR_ENUM_GROUP_LIST_INVALID,
-	PK_ERROR_ENUM_DEP_RESOLUTION_FAILED,
-	PK_ERROR_ENUM_FILTER_INVALID,
-	PK_ERROR_ENUM_CREATE_THREAD_FAILED,
-	PK_ERROR_ENUM_TRANSACTION_ERROR,
-	PK_ERROR_ENUM_TRANSACTION_CANCELLED,
-	PK_ERROR_ENUM_NO_CACHE,
-	PK_ERROR_ENUM_REPO_NOT_FOUND,
-	PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE,
-	PK_ERROR_ENUM_PROCESS_KILL,
-	PK_ERROR_ENUM_FAILED_INITIALIZATION,
-	PK_ERROR_ENUM_FAILED_FINALISE,
-	PK_ERROR_ENUM_FAILED_CONFIG_PARSING,
-	PK_ERROR_ENUM_CANNOT_CANCEL,
-	PK_ERROR_ENUM_CANNOT_GET_LOCK,
-	PK_ERROR_ENUM_NO_PACKAGES_TO_UPDATE,
-	PK_ERROR_ENUM_CANNOT_WRITE_REPO_CONFIG,
-	PK_ERROR_ENUM_LOCAL_INSTALL_FAILED,
-	PK_ERROR_ENUM_BAD_GPG_SIGNATURE,
-	PK_ERROR_ENUM_MISSING_GPG_SIGNATURE,
-	PK_ERROR_ENUM_CANNOT_INSTALL_SOURCE_PACKAGE,
-	PK_ERROR_ENUM_REPO_CONFIGURATION_ERROR,
-	PK_ERROR_ENUM_NO_LICENSE_AGREEMENT,
-	PK_ERROR_ENUM_FILE_CONFLICTS,
-	PK_ERROR_ENUM_PACKAGE_CONFLICTS,
-	PK_ERROR_ENUM_REPO_NOT_AVAILABLE,
-	PK_ERROR_ENUM_INVALID_PACKAGE_FILE,
-	PK_ERROR_ENUM_PACKAGE_INSTALL_BLOCKED,
-	PK_ERROR_ENUM_PACKAGE_CORRUPT,
-	PK_ERROR_ENUM_ALL_PACKAGES_ALREADY_INSTALLED,
-	PK_ERROR_ENUM_FILE_NOT_FOUND,
-	PK_ERROR_ENUM_NO_MORE_MIRRORS_TO_TRY,
-	PK_ERROR_ENUM_NO_DISTRO_UPGRADE_DATA,
-	PK_ERROR_ENUM_INCOMPATIBLE_ARCHITECTURE,
-	PK_ERROR_ENUM_NO_SPACE_ON_DEVICE,
-	PK_ERROR_ENUM_MEDIA_CHANGE_REQUIRED,
-	PK_ERROR_ENUM_NOT_AUTHORIZED,
-	PK_ERROR_ENUM_UPDATE_NOT_FOUND,
-	PK_ERROR_ENUM_CANNOT_INSTALL_REPO_UNSIGNED,
-	PK_ERROR_ENUM_CANNOT_UPDATE_REPO_UNSIGNED,
-	PK_ERROR_ENUM_CANNOT_GET_FILELIST,
-	PK_ERROR_ENUM_CANNOT_GET_REQUIRES,
-	PK_ERROR_ENUM_CANNOT_DISABLE_REPOSITORY,
-	PK_ERROR_ENUM_RESTRICTED_DOWNLOAD,
-	PK_ERROR_ENUM_PACKAGE_FAILED_TO_CONFIGURE,
-	PK_ERROR_ENUM_PACKAGE_FAILED_TO_BUILD,
-	PK_ERROR_ENUM_PACKAGE_FAILED_TO_INSTALL,
-	PK_ERROR_ENUM_PACKAGE_FAILED_TO_REMOVE,
-	PK_ERROR_ENUM_UNKNOWN
-} PkErrorCodeEnum;
-
-/**
- * PkGroupEnum:
- *
- * The group type
- **/
-typedef enum {
-	PK_GROUP_ENUM_ACCESSIBILITY,
-	PK_GROUP_ENUM_ACCESSORIES,
-	PK_GROUP_ENUM_ADMIN_TOOLS,
-	PK_GROUP_ENUM_COMMUNICATION,
-	PK_GROUP_ENUM_DESKTOP_GNOME,
-	PK_GROUP_ENUM_DESKTOP_KDE,
-	PK_GROUP_ENUM_DESKTOP_OTHER,
-	PK_GROUP_ENUM_DESKTOP_XFCE,
-	PK_GROUP_ENUM_EDUCATION,
-	PK_GROUP_ENUM_FONTS,
-	PK_GROUP_ENUM_GAMES,
-	PK_GROUP_ENUM_GRAPHICS,
-	PK_GROUP_ENUM_INTERNET,
-	PK_GROUP_ENUM_LEGACY,
-	PK_GROUP_ENUM_LOCALIZATION,
-	PK_GROUP_ENUM_MAPS,
-	PK_GROUP_ENUM_MULTIMEDIA,
-	PK_GROUP_ENUM_NETWORK,
-	PK_GROUP_ENUM_OFFICE,
-	PK_GROUP_ENUM_OTHER,
-	PK_GROUP_ENUM_POWER_MANAGEMENT,
-	PK_GROUP_ENUM_PROGRAMMING,
-	PK_GROUP_ENUM_PUBLISHING,
-	PK_GROUP_ENUM_REPOS,
-	PK_GROUP_ENUM_SECURITY,
-	PK_GROUP_ENUM_SERVERS,
-	PK_GROUP_ENUM_SYSTEM,
-	PK_GROUP_ENUM_VIRTUALIZATION,
-	PK_GROUP_ENUM_SCIENCE,
-	PK_GROUP_ENUM_DOCUMENTATION,
-	PK_GROUP_ENUM_ELECTRONICS,
-	PK_GROUP_ENUM_COLLECTIONS,
-	PK_GROUP_ENUM_VENDOR,
-	PK_GROUP_ENUM_NEWEST,
-	PK_GROUP_ENUM_UNKNOWN
-} PkGroupEnum;
-
-/**
- * PkUpdateStateEnum:
- *
- * What state the update is in
- **/
-typedef enum {
-	PK_UPDATE_STATE_ENUM_STABLE,
-	PK_UPDATE_STATE_ENUM_UNSTABLE,
-	PK_UPDATE_STATE_ENUM_TESTING,
-	PK_UPDATE_STATE_ENUM_UNKNOWN
-} PkUpdateStateEnum;
-
-/**
- * PkInfoEnum:
- *
- * The enumerated types used in Package() - these have to refer to a specific
- * package action, rather than a general state
- **/
-typedef enum {
-	PK_INFO_ENUM_INSTALLED,
-	PK_INFO_ENUM_AVAILABLE,
-	PK_INFO_ENUM_LOW,
-	PK_INFO_ENUM_ENHANCEMENT,
-	PK_INFO_ENUM_NORMAL,
-	PK_INFO_ENUM_BUGFIX,
-	PK_INFO_ENUM_IMPORTANT,
-	PK_INFO_ENUM_SECURITY,
-	PK_INFO_ENUM_BLOCKED,
-	PK_INFO_ENUM_DOWNLOADING,
-	PK_INFO_ENUM_UPDATING,
-	PK_INFO_ENUM_INSTALLING,
-	PK_INFO_ENUM_REMOVING,
-	PK_INFO_ENUM_CLEANUP,
-	PK_INFO_ENUM_OBSOLETING,
-	PK_INFO_ENUM_COLLECTION_INSTALLED,
-	PK_INFO_ENUM_COLLECTION_AVAILABLE,
-	PK_INFO_ENUM_FINISHED,
-	PK_INFO_ENUM_REINSTALLING,
-	PK_INFO_ENUM_DOWNGRADING,
-	PK_INFO_ENUM_PREPARING,
-	PK_INFO_ENUM_DECOMPRESSING,
-	PK_INFO_ENUM_UNKNOWN
-} PkInfoEnum;
-
-/**
- * PkDistroUpgradeEnum:
- *
- * The distro upgrade status
- **/
-typedef enum {
-	PK_DISTRO_UPGRADE_ENUM_STABLE,
-	PK_DISTRO_UPGRADE_ENUM_UNSTABLE,
-	PK_DISTRO_UPGRADE_ENUM_UNKNOWN
-} PkDistroUpgradeEnum;
-
-/**
- * PkSigTypeEnum:
- *
- * The signature type type
- **/
-typedef enum {
-	PK_SIGTYPE_ENUM_GPG,
-	PK_SIGTYPE_ENUM_UNKNOWN
-} PkSigTypeEnum;
-
-/**
- * PkProvidesEnum:
- *
- * The signature type type
- **/
-typedef enum {
-	PK_PROVIDES_ENUM_ANY,
-	PK_PROVIDES_ENUM_MODALIAS,
-	PK_PROVIDES_ENUM_CODEC,
-	PK_PROVIDES_ENUM_MIMETYPE,
-	PK_PROVIDES_ENUM_FONT,
-	PK_PROVIDES_ENUM_HARDWARE_DRIVER,
-	PK_PROVIDES_ENUM_POSTSCRIPT_DRIVER,
-	PK_PROVIDES_ENUM_UNKNOWN
-} PkProvidesEnum;
-
-typedef enum {
-	PK_LICENSE_ENUM_AAL,
-	PK_LICENSE_ENUM_ADOBE,
-	PK_LICENSE_ENUM_ADSL,
-	PK_LICENSE_ENUM_AFL,
-	PK_LICENSE_ENUM_AGPLV1,
-	PK_LICENSE_ENUM_AMPAS_BSD,
-	PK_LICENSE_ENUM_APSL_2_DOT_0,
-	PK_LICENSE_ENUM_ARL,
-	PK_LICENSE_ENUM_ARTISTIC_2_DOT_0,
-	PK_LICENSE_ENUM_ARTISTIC_CLARIFIED,
-	PK_LICENSE_ENUM_ASL_1_DOT_0,
-	PK_LICENSE_ENUM_ASL_1_DOT_1,
-	PK_LICENSE_ENUM_ASL_2_DOT_0,
-	PK_LICENSE_ENUM_BITTORRENT,
-	PK_LICENSE_ENUM_BOOST,
-	PK_LICENSE_ENUM_BSD,
-	PK_LICENSE_ENUM_BSD_WITH_ADVERTISING,
-	PK_LICENSE_ENUM_CATOSL,
-	PK_LICENSE_ENUM_CC_BY,
-	PK_LICENSE_ENUM_CC_BY_SA,
-	PK_LICENSE_ENUM_CDDL,
-	PK_LICENSE_ENUM_CDL,
-	PK_LICENSE_ENUM_CECILL,
-	PK_LICENSE_ENUM_CECILL_B,
-	PK_LICENSE_ENUM_CECILL_C,
-	PK_LICENSE_ENUM_CNRI,
-	PK_LICENSE_ENUM_CONDOR,
-	PK_LICENSE_ENUM_COPYRIGHT_ONLY,
-	PK_LICENSE_ENUM_CPAL,
-	PK_LICENSE_ENUM_CPL,
-	PK_LICENSE_ENUM_CRYSTAL_STACKER,
-	PK_LICENSE_ENUM_DOC,
-	PK_LICENSE_ENUM_DSL,
-	PK_LICENSE_ENUM_DVIPDFM,
-	PK_LICENSE_ENUM_ECL_1_DOT_0,
-	PK_LICENSE_ENUM_ECL_2_DOT_0,
-	PK_LICENSE_ENUM_ECOS,
-	PK_LICENSE_ENUM_EFL_2_DOT_0,
-	PK_LICENSE_ENUM_ENTESSA,
-	PK_LICENSE_ENUM_EPL,
-	PK_LICENSE_ENUM_ERPL,
-	PK_LICENSE_ENUM_EUROSYM,
-	PK_LICENSE_ENUM_EU_DATAGRID,
-	PK_LICENSE_ENUM_FAIR,
-	PK_LICENSE_ENUM_FBSDDL,
-	PK_LICENSE_ENUM_FREE_ART,
-	PK_LICENSE_ENUM_FTL,
-	PK_LICENSE_ENUM_GEOGRATIS,
-	PK_LICENSE_ENUM_GFDL,
-	PK_LICENSE_ENUM_GIFTWARE,
-	PK_LICENSE_ENUM_GL2PS,
-	PK_LICENSE_ENUM_GLIDE,
-	PK_LICENSE_ENUM_GNUPLOT,
-	PK_LICENSE_ENUM_GPLV1,
-	PK_LICENSE_ENUM_GPLV2,
-	PK_LICENSE_ENUM_GPLV2_OR_ARTISTIC,
-	PK_LICENSE_ENUM_GPLV2_PLUS,
-	PK_LICENSE_ENUM_GPLV2_PLUS_OR_ARTISTIC,
-	PK_LICENSE_ENUM_GPLV2_PLUS_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_GPLV2_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_GPLV3,
-	PK_LICENSE_ENUM_GPLV3_PLUS,
-	PK_LICENSE_ENUM_GPLV3_PLUS_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_GPLV3_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_GPL_PLUS,
-	PK_LICENSE_ENUM_GPL_PLUS_OR_ARTISTIC,
-	PK_LICENSE_ENUM_GPL_PLUS_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_IBM,
-	PK_LICENSE_ENUM_IEEE,
-	PK_LICENSE_ENUM_IJG,
-	PK_LICENSE_ENUM_IMAGEMAGICK,
-	PK_LICENSE_ENUM_IMATIX,
-	PK_LICENSE_ENUM_IMLIB2,
-	PK_LICENSE_ENUM_INTEL_ACPI,
-	PK_LICENSE_ENUM_INTERBASE,
-	PK_LICENSE_ENUM_ISC,
-	PK_LICENSE_ENUM_JABBER,
-	PK_LICENSE_ENUM_JASPER,
-	PK_LICENSE_ENUM_JPYTHON,
-	PK_LICENSE_ENUM_KNUTH,
-	PK_LICENSE_ENUM_LBNL_BSD,
-	PK_LICENSE_ENUM_LGPLV2,
-	PK_LICENSE_ENUM_LGPLV2_PLUS,
-	PK_LICENSE_ENUM_LGPLV2_PLUS_OR_ARTISTIC,
-	PK_LICENSE_ENUM_LGPLV2_PLUS_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_LGPLV2_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_LGPLV3,
-	PK_LICENSE_ENUM_LGPLV3_PLUS,
-	PK_LICENSE_ENUM_LGPLV3_PLUS_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_LGPLV3_WITH_EXCEPTIONS,
-	PK_LICENSE_ENUM_LIBTIFF,
-	PK_LICENSE_ENUM_LLGPL,
-	PK_LICENSE_ENUM_LOGICA,
-	PK_LICENSE_ENUM_LPL,
-	PK_LICENSE_ENUM_LPPL,
-	PK_LICENSE_ENUM_MECAB_IPADIC,
-	PK_LICENSE_ENUM_MIROS,
-	PK_LICENSE_ENUM_MIT,
-	PK_LICENSE_ENUM_MIT_WITH_ADVERTISING,
-	PK_LICENSE_ENUM_MOTOSOTO,
-	PK_LICENSE_ENUM_MPLV1_DOT_0,
-	PK_LICENSE_ENUM_MPLV1_DOT_1,
-	PK_LICENSE_ENUM_MS_PL,
-	PK_LICENSE_ENUM_NAUMEN,
-	PK_LICENSE_ENUM_NCSA,
-	PK_LICENSE_ENUM_NETCDF,
-	PK_LICENSE_ENUM_NETSCAPE,
-	PK_LICENSE_ENUM_NEWMAT,
-	PK_LICENSE_ENUM_NGPL,
-	PK_LICENSE_ENUM_NOKIA,
-	PK_LICENSE_ENUM_NOSL,
-	PK_LICENSE_ENUM_NOWEB,
-	PK_LICENSE_ENUM_OAL,
-	PK_LICENSE_ENUM_OFSFDL,
-	PK_LICENSE_ENUM_OPENLDAP,
-	PK_LICENSE_ENUM_OPENPBS,
-	PK_LICENSE_ENUM_OPENSSL,
-	PK_LICENSE_ENUM_OREILLY,
-	PK_LICENSE_ENUM_OSL_1_DOT_0,
-	PK_LICENSE_ENUM_OSL_1_DOT_1,
-	PK_LICENSE_ENUM_OSL_2_DOT_0,
-	PK_LICENSE_ENUM_OSL_2_DOT_1,
-	PK_LICENSE_ENUM_OSL_3_DOT_0,
-	PK_LICENSE_ENUM_PHORUM,
-	PK_LICENSE_ENUM_PHP,
-	PK_LICENSE_ENUM_PLEXUS,
-	PK_LICENSE_ENUM_PSUTILS,
-	PK_LICENSE_ENUM_PUBLIC_DOMAIN,
-	PK_LICENSE_ENUM_PUBLIC_USE,
-	PK_LICENSE_ENUM_PYTHON,
-	PK_LICENSE_ENUM_QHULL,
-	PK_LICENSE_ENUM_QPL,
-	PK_LICENSE_ENUM_RICEBSD,
-	PK_LICENSE_ENUM_RPSL,
-	PK_LICENSE_ENUM_RUBY,
-	PK_LICENSE_ENUM_SAXPATH,
-	PK_LICENSE_ENUM_SCEA,
-	PK_LICENSE_ENUM_SCRIP,
-	PK_LICENSE_ENUM_SENDMAIL,
-	PK_LICENSE_ENUM_SISSL,
-	PK_LICENSE_ENUM_SLEEPYCAT,
-	PK_LICENSE_ENUM_SLIB,
-	PK_LICENSE_ENUM_SNIA,
-	PK_LICENSE_ENUM_SPL,
-	PK_LICENSE_ENUM_TCL,
-	PK_LICENSE_ENUM_TMATE,
-	PK_LICENSE_ENUM_TPL,
-	PK_LICENSE_ENUM_UCD,
-	PK_LICENSE_ENUM_VIM,
-	PK_LICENSE_ENUM_VNLSL,
-	PK_LICENSE_ENUM_VOSTROM,
-	PK_LICENSE_ENUM_VSL,
-	PK_LICENSE_ENUM_W3C,
-	PK_LICENSE_ENUM_WEBMIN,
-	PK_LICENSE_ENUM_WTFPL,
-	PK_LICENSE_ENUM_WXWIDGETS,
-	PK_LICENSE_ENUM_XEROX,
-	PK_LICENSE_ENUM_XINETD,
-	PK_LICENSE_ENUM_YPLV1_DOT_1,
-	PK_LICENSE_ENUM_ZEND,
-	PK_LICENSE_ENUM_ZLIB,
-	PK_LICENSE_ENUM_ZLIB_WITH_ACKNOWLEDGEMENT,
-	PK_LICENSE_ENUM_ZPLV1_DOT_0,
-	PK_LICENSE_ENUM_ZPLV2_DOT_0,
-	PK_LICENSE_ENUM_ZPLV2_DOT_1,
-	PK_LICENSE_ENUM_UNKNOWN
-} PkLicenseEnum;
-
-/**
- * PkMediaTypeEnum:
- *
- * The media type
- **/
-typedef enum {
-	PK_MEDIA_TYPE_ENUM_CD,
-	PK_MEDIA_TYPE_ENUM_DVD,
-	PK_MEDIA_TYPE_ENUM_DISC,
-	PK_MEDIA_TYPE_ENUM_UNKNOWN
-} PkMediaTypeEnum;
-
-/**
- * PkAuthorizeEnum:
- *
- * The authorization result
- **/
-typedef enum {
-	PK_AUTHORIZE_ENUM_YES,
-	PK_AUTHORIZE_ENUM_NO,
-	PK_AUTHORIZE_ENUM_INTERACTIVE,
-	PK_AUTHORIZE_ENUM_UNKNOWN
-} PkAuthorizeEnum;
-
-/* general */
-void		 pk_enum_test				(gpointer	 user_data);
-guint		 pk_enum_find_value			(const PkEnumMatch *table,
-							 const gchar	*string)
-							 G_GNUC_WARN_UNUSED_RESULT;
-const gchar	*pk_enum_find_string			(const PkEnumMatch *table,
-							 guint		 value)
-							 G_GNUC_WARN_UNUSED_RESULT;
-
-PkSigTypeEnum	 pk_sig_type_enum_from_text		(const gchar	*sig_type);
-const gchar	*pk_sig_type_enum_to_text		(PkSigTypeEnum	 sig_type);
-
-PkInfoEnum	 pk_info_enum_from_text			(const gchar	*info);
-const gchar	*pk_info_enum_to_text			(PkInfoEnum	 info);
-
-PkUpdateStateEnum  pk_update_state_enum_from_text	(const gchar	*update_state);
-const gchar	*pk_update_state_enum_to_text		(PkUpdateStateEnum update_state);
-
-PkExitEnum	 pk_exit_enum_from_text			(const gchar	*exit);
-const gchar	*pk_exit_enum_to_text			(PkExitEnum	 exit);
-
-PkNetworkEnum	 pk_network_enum_from_text		(const gchar	*network);
-const gchar	*pk_network_enum_to_text		(PkNetworkEnum	 network);
-
-PkStatusEnum	 pk_status_enum_from_text		(const gchar	*status);
-const gchar	*pk_status_enum_to_text			(PkStatusEnum	 status);
-
-PkRoleEnum	 pk_role_enum_from_text			(const gchar	*role);
-const gchar	*pk_role_enum_to_text			(PkRoleEnum	 role);
-
-PkErrorCodeEnum	 pk_error_enum_from_text		(const gchar	*code);
-const gchar	*pk_error_enum_to_text			(PkErrorCodeEnum code);
-
-PkRestartEnum	 pk_restart_enum_from_text		(const gchar	*restart);
-const gchar	*pk_restart_enum_to_text		(PkRestartEnum	 restart);
-
-PkMessageEnum	 pk_message_enum_from_text		(const gchar	*message);
-const gchar	*pk_message_enum_to_text		(PkMessageEnum	 message);
-
-PkGroupEnum	 pk_group_enum_from_text		(const gchar	*group);
-const gchar	*pk_group_enum_to_text			(PkGroupEnum	 group);
-
-PkFilterEnum	 pk_filter_enum_from_text		(const gchar	*filter);
-const gchar	*pk_filter_enum_to_text			(PkFilterEnum	 filter);
-
-PkProvidesEnum	 pk_provides_enum_from_text		(const gchar	*provides);
-const gchar	*pk_provides_enum_to_text		(PkProvidesEnum	 provides);
-
-PkLicenseEnum	 pk_license_enum_from_text		(const gchar	*license);
-const gchar	*pk_license_enum_to_text		(PkLicenseEnum	 license);
-
-PkDistroUpgradeEnum pk_distro_upgrade_enum_from_text	(const gchar	*upgrade);
-const gchar	*pk_distro_upgrade_enum_to_text		(PkDistroUpgradeEnum upgrade);
-
-PkMediaTypeEnum  pk_media_type_enum_from_text		(const gchar	*media_type);
-const gchar	*pk_media_type_enum_to_text		(PkMediaTypeEnum media_type);
-
-PkAuthorizeEnum  pk_authorize_type_enum_from_text	(const gchar	*auth_type);
-const gchar	*pk_authorize_type_enum_to_text		(PkAuthorizeEnum auth_type);
-
-G_END_DECLS
-
-#endif /* __PK_ENUM_H */
diff --git a/lib/packagekit-glib/pk-marshal.list b/lib/packagekit-glib/pk-marshal.list
deleted file mode 120000
index e01462d..0000000
--- a/lib/packagekit-glib/pk-marshal.list
+++ /dev/null
@@ -1 +0,0 @@
-../../src/pk-marshal.list
\ No newline at end of file
diff --git a/lib/packagekit-glib/pk-obj-list.c b/lib/packagekit-glib/pk-obj-list.c
deleted file mode 100644
index 2cd4b34..0000000
--- a/lib/packagekit-glib/pk-obj-list.c
+++ /dev/null
@@ -1,788 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-
-#include <glib/gi18n.h>
-#include <glib.h>
-#include <packagekit-glib/pk-obj-list.h>
-
-#include "egg-debug.h"
-
-#define PK_OBJ_LIST_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_OBJ_LIST, PkObjListPrivate))
-
-struct PkObjListPrivate
-{
-	PkObjListNewFunc	 func_new;
-	PkObjListCopyFunc	 func_copy;
-	PkObjListFreeFunc	 func_free;
-	PkObjListCompareFunc	 func_compare;
-	PkObjListEqualFunc	 func_equal;
-	PkObjListToStringFunc	 func_to_string;
-	PkObjListFromStringFunc func_from_string;
-	GPtrArray		*array;
-};
-
-G_DEFINE_TYPE (PkObjList, pk_obj_list, G_TYPE_OBJECT)
-
-/**
- * pk_obj_list_set_new:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a creation func
- **/
-void
-pk_obj_list_set_new (PkObjList *list, PkObjListNewFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_new = func;
-}
-
-/**
- * pk_obj_list_set_copy:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a copy func
- **/
-void
-pk_obj_list_set_copy (PkObjList *list, PkObjListCopyFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_copy = func;
-}
-
-/**
- * pk_obj_list_set_free:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a free func
- **/
-void
-pk_obj_list_set_free (PkObjList *list, PkObjListFreeFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_free = func;
-}
-
-/**
- * pk_obj_list_set_compare:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a compare func
- **/
-void
-pk_obj_list_set_compare (PkObjList *list, PkObjListCompareFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_compare = func;
-}
-
-/**
- * pk_obj_list_set_equal:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a equal func
- **/
-void
-pk_obj_list_set_equal (PkObjList *list, PkObjListEqualFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_equal = func;
-}
-
-/**
- * pk_obj_list_set_to_string:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a to string func
- **/
-void
-pk_obj_list_set_to_string (PkObjList *list, PkObjListToStringFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_to_string = func;
-}
-
-/**
- * pk_obj_list_set_from_string:
- * @list: a valid #PkObjList instance
- * @func: typedef'd function
- *
- * Adds a from string func
- **/
-void
-pk_obj_list_set_from_string (PkObjList *list, PkObjListFromStringFunc func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	list->priv->func_from_string = func;
-}
-
-/**
- * pk_obj_list_get_array:
- * @list: a valid #PkObjList instance
- *
- * Gets a GPtrArray representation of the package list
- **/
-const GPtrArray	*
-pk_obj_list_get_array (const PkObjList *list)
-{
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), NULL);
-	return list->priv->array;
-}
-
-/**
- * pk_obj_list_sort:
- * @list: a valid #PkObjList instance
- *
- * Sorts the package list
- **/
-void
-pk_obj_list_sort (PkObjList *list, GCompareFunc sort_func)
-{
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	g_ptr_array_sort (list->priv->array, sort_func);
-}
-
-/**
- * pk_obj_list_clear:
- * @list: a valid #PkObjList instance
- *
- * Clears the package list
- **/
-void
-pk_obj_list_clear (PkObjList *list)
-{
-	GPtrArray *array;
-	PkObjListFreeFunc func_free;
-
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-
-	array = list->priv->array;
-	func_free = list->priv->func_free;
-	if (func_free != NULL)
-		g_ptr_array_foreach (array, (GFunc) func_free, NULL);
-	if (array->len > 0)
-		g_ptr_array_remove_range (array, 0, array->len);
-	list->len = 0;
-}
-
-/**
- * pk_obj_list_print:
- * @list: a valid #PkObjList instance
- *
- * Prints the package list
- **/
-void
-pk_obj_list_print (PkObjList *list)
-{
-	guint i;
-	gpointer obj;
-	GPtrArray *array;
-	gchar *text;
-	PkObjListToStringFunc func_to_string;
-
-	g_return_if_fail (list->priv->func_to_string != NULL);
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-
-	array = list->priv->array;
-	func_to_string = list->priv->func_to_string;
-	for (i=0; i<array->len; i++) {
-		obj = g_ptr_array_index (array, i);
-		text = func_to_string (obj);
-		g_print ("(%i)\t%s\n", i, text);
-		g_free (text);
-	}
-}
-
-/**
- * pk_obj_list_to_string:
- * @list: a valid #PkObjList instance
- *
- * Converts the list to a newline delimited string
- **/
-gchar *
-pk_obj_list_to_string (PkObjList *list)
-{
-	guint i;
-	gpointer obj;
-	GPtrArray *array;
-	gchar *text;
-	PkObjListToStringFunc func_to_string;
-	GString *string;
-
-	g_return_val_if_fail (list->priv->func_to_string != NULL, NULL);
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), NULL);
-
-	array = list->priv->array;
-	func_to_string = list->priv->func_to_string;
-	string = g_string_new ("");
-	for (i=0; i<array->len; i++) {
-		obj = g_ptr_array_index (array, i);
-		text = func_to_string (obj);
-		g_string_append_printf (string, "%s\n", text);
-		g_free (text);
-	}
-	/* remove trailing newline */
-	if (string->len != 0)
-		g_string_set_size (string, string->len-1);
-
-	return g_string_free (string, FALSE);
-}
-
-/**
- * pk_obj_list_add:
- * @list: a valid #PkObjList instance
- * @obj: a valid #gpointer object
- *
- * Adds a copy of the object to the list
- **/
-void
-pk_obj_list_add (PkObjList *list, gconstpointer obj)
-{
-	gpointer obj_new;
-
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	g_return_if_fail (obj != NULL);
-	g_return_if_fail (list->priv->func_copy != NULL);
-
-	/* TODO: are we already in the list? */
-	obj_new = list->priv->func_copy (obj);
-	g_ptr_array_add (list->priv->array, obj_new);
-	list->len = list->priv->array->len;
-}
-
-/**
- * pk_obj_list_add_list:
- *
- * Makes a deep copy of the list
- **/
-void
-pk_obj_list_add_list (PkObjList *list, const PkObjList *data)
-{
-	guint i;
-	gconstpointer obj;
-
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	g_return_if_fail (PK_IS_OBJ_LIST (data));
-
-	/* add data items to list */
-	for (i=0; i < data->len; i++) {
-		obj = pk_obj_list_index (data, i);
-		pk_obj_list_add (list, obj);
-	}
-}
-
-/**
- * pk_obj_list_add_array:
- *
- * Makes a deep copy of the data in the array.
- * The data going into the list MUST be the correct type,
- * else bad things will happen.
- **/
-void
-pk_obj_list_add_array (PkObjList *list, const GPtrArray *data)
-{
-	guint i;
-	gconstpointer obj;
-
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-
-	/* add data items to list */
-	for (i=0; i < data->len; i++) {
-		obj = g_ptr_array_index (data, i);
-		pk_obj_list_add (list, obj);
-	}
-}
-
-/**
- * pk_obj_list_add_strv:
- *
- * Makes a deep copy of the data in the array.
- * The data going into the list MUST be the correct type,
- * else bad things will happen.
- **/
-void
-pk_obj_list_add_strv (PkObjList *list, gpointer **data)
-{
-	guint i;
-	guint len;
-	len = g_strv_length ((gchar**)data);
-	for (i=0; i<len; i++)
-		pk_obj_list_add (list, data[i]);
-}
-
-/**
- * pk_obj_list_remove_list:
- *
- * Makes a deep copy of the list
- **/
-void
-pk_obj_list_remove_list (PkObjList *list, const PkObjList *data)
-{
-	guint i;
-	gconstpointer obj;
-
-	g_return_if_fail (PK_IS_OBJ_LIST (list));
-	g_return_if_fail (PK_IS_OBJ_LIST (data));
-
-	/* remove data items from list */
-	for (i=0; i < data->len; i++) {
-		obj = pk_obj_list_index (data, i);
-		pk_obj_list_remove (list, obj);
-	}
-}
-
-/**
- * pk_obj_list_obj_equal:
- * @list: a valid #PkObjList instance
- * @obj: a valid #gpointer object
- *
- * Return value: the object
- *
- * Removes an item from a list
- **/
-static gboolean
-pk_obj_list_obj_equal (PkObjList *list, gconstpointer obj1, gconstpointer obj2)
-{
-	/* use equal */
-	if (list->priv->func_equal != NULL)
-		return list->priv->func_equal (obj1, obj2);
-
-	/* use compare */
-	if (list->priv->func_compare != NULL)
-		return list->priv->func_compare (obj1, obj2) == 0;
-
-	/* don't use helper function */
-	return obj1 == obj2;
-}
-
-/**
- * pk_obj_list_remove_duplicate:
- *
- * Removes duplicate entries
- **/
-void
-pk_obj_list_remove_duplicate (PkObjList *list)
-{
-	guint i, j;
-	gconstpointer obj1;
-	gconstpointer obj2;
-
-	for (i=0; i<list->len; i++) {
-		obj1 = pk_obj_list_index (list, i);
-		for (j=0; j<list->len; j++) {
-			if (i == j)
-				break;
-			obj2 = pk_obj_list_index (list, j);
-			if (pk_obj_list_obj_equal (list, obj1, obj2))
-				pk_obj_list_remove_index (list, i);
-		}
-	}
-}
-
-/**
- * pk_obj_list_find_obj:
- * @list: a valid #PkObjList instance
- * @obj: a valid #gconstpointer object
- *
- * Return value: the object
- *
- * Finds an item in a list
- **/
-static gpointer
-pk_obj_list_find_obj (PkObjList *list, gconstpointer obj)
-{
-	guint i;
-	gconstpointer obj_tmp;
-
-	/* usual case, don't compare in the fast path */
-	if (list->priv->func_compare == NULL && list->priv->func_equal == NULL) {
-		for (i=0; i < list->len; i++) {
-			obj_tmp = pk_obj_list_index (list, i);
-			if (obj_tmp == obj)
-				return (gpointer) obj_tmp;
-		}
-		return NULL;
-	}
-
-	/* use a comparison function */
-	for (i=0; i < list->len; i++) {
-		obj_tmp = pk_obj_list_index (list, i);
-		if (pk_obj_list_obj_equal (list, obj_tmp, obj))
-			return (gpointer) obj_tmp;
-	}
-
-	/* nothing found */
-	return NULL;
-}
-
-/**
- * pk_obj_list_exists:
- * @list: a valid #PkObjList instance
- * @obj: a valid #gconstpointer object
- *
- * Return value: the object
- *
- * Finds an item in a list
- **/
-gboolean
-pk_obj_list_exists (PkObjList *list, gconstpointer obj)
-{
-	gconstpointer obj_tmp;
-	obj_tmp = pk_obj_list_find_obj (list, obj);
-	return (obj_tmp != NULL);
-}
-
-/**
- * pk_obj_list_remove:
- * @list: a valid #PkObjList instance
- * @obj: a valid #gpointer object
- *
- * Return value: TRUE is we removed something
- *
- * Removes all the items from a list matching obj
- **/
-gboolean
-pk_obj_list_remove (PkObjList *list, gconstpointer obj)
-{
-	gboolean ret;
-	gpointer obj_new;
-	gboolean found = FALSE;
-
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), FALSE);
-	g_return_val_if_fail (obj != NULL, FALSE);
-	g_return_val_if_fail (list->priv->func_free != NULL, FALSE);
-
-	do {
-		/* get the object */
-		obj_new = pk_obj_list_find_obj (list, obj);
-		if (obj_new == NULL)
-			break;
-
-		/* try to remove */
-		ret = g_ptr_array_remove (list->priv->array, obj_new);
-
-		/* no compare function, and pointer not found */
-		if (!ret)
-			break;
-
-		found = TRUE;
-		list->priv->func_free (obj_new);
-		list->len = list->priv->array->len;
-	} while (ret);
-
-	return found;
-}
-
-/**
- * pk_obj_list_remove_index:
- * @list: a valid #PkObjList instance
- * @idx: the number to remove
- *
- * Return value: TRUE is we removed something
- *
- * Removes an item from a list
- **/
-gboolean
-pk_obj_list_remove_index (PkObjList *list, guint idx)
-{
-	gpointer obj;
-
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), FALSE);
-	g_return_val_if_fail (list->priv->func_free != NULL, FALSE);
-
-	/* get the object */
-	obj = g_ptr_array_remove_index (list->priv->array, idx);
-	if (obj == NULL)
-		return FALSE;
-	list->priv->func_free (obj);
-	list->len = list->priv->array->len;
-	return TRUE;
-}
-
-/**
- * pk_obj_list_to_file:
- * @list: a valid #PkObjList instance
- * @filename: a filename
- *
- * Saves a copy of the list to a file
- **/
-gboolean
-pk_obj_list_to_file (PkObjList *list, const gchar *filename)
-{
-	guint i;
-	gconstpointer obj;
-	gchar *part;
-	GString *string;
-	gboolean ret = TRUE;
-	GError *error = NULL;
-	PkObjListToStringFunc func_to_string;
-
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), FALSE);
-	g_return_val_if_fail (list->priv->func_to_string != NULL, FALSE);
-
-	func_to_string = list->priv->func_to_string;
-
-	/* generate data */
-	string = g_string_new ("");
-	for (i=0; i<list->len; i++) {
-		obj = pk_obj_list_index (list, i);
-		part = func_to_string (obj);
-		if (part == NULL) {
-			ret = FALSE;
-			break;
-		}
-		g_string_append_printf (string, "%s\n", part);
-		g_free (part);
-	}
-	part = g_string_free (string, FALSE);
-
-	/* we failed to convert to string */
-	if (!ret) {
-		egg_warning ("failed to convert");
-		goto out;
-	}
-
-	/* save to disk */
-	ret = g_file_set_contents (filename, part, -1, &error);
-	if (!ret) {
-		egg_warning ("failed to set data: %s", error->message);
-		g_error_free (error);
-		goto out;
-	}
-	egg_debug ("saved %s", filename);
-
-out:
-	g_free (part);
-	return ret;
-}
-
-/**
- * pk_obj_list_from_file:
- * @list: a valid #PkObjList instance
- * @filename: a filename
- *
- * Appends the list from a file
- **/
-gboolean
-pk_obj_list_from_file (PkObjList *list, const gchar *filename)
-{
-	gboolean ret;
-	GError *error = NULL;
-	gchar *data = NULL;
-	gchar **parts = NULL;
-	guint i;
-	guint length;
-	gpointer obj;
-	PkObjListFreeFunc func_free;
-	PkObjListFromStringFunc func_from_string;
-
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), FALSE);
-	g_return_val_if_fail (list->priv->func_from_string != NULL, FALSE);
-	g_return_val_if_fail (list->priv->func_free != NULL, FALSE);
-
-	func_free = list->priv->func_free;
-	func_from_string = list->priv->func_from_string;
-
-	/* do we exist */
-	ret = g_file_test (filename, G_FILE_TEST_EXISTS);
-	if (!ret) {
-		egg_debug ("failed to get data from %s as file does not exist", filename);
-		goto out;
-	}
-
-	/* get contents */
-	ret = g_file_get_contents (filename, &data, NULL, &error);
-	if (!ret) {
-		egg_warning ("failed to get data: %s", error->message);
-		g_error_free (error);
-		goto out;
-	}
-
-	/* split by line ending */
-	parts = g_strsplit (data, "\n", 0);
-	length = g_strv_length (parts);
-	if (length == 0) {
-		egg_debug ("no data in %s", filename);
-		goto out;
-	}
-
-	/* add valid entries */
-	egg_debug ("loading %i items of data from %s", length, filename);
-	for (i=0; i<length-1; i++) {
-		obj = func_from_string (parts[i]);
-		if (obj != NULL)
-			pk_obj_list_add (list, obj);
-		func_free (obj);
-	}
-
-out:
-	g_strfreev (parts);
-	g_free (data);
-
-	return ret;
-}
-
-/**
- * pk_obj_list_index:
- * @list: a valid #PkObjList instance
- * @idx: the element to return
- *
- * Gets an object from the list
- **/
-gconstpointer
-pk_obj_list_index (const PkObjList *list, guint idx)
-{
-	gconstpointer obj;
-
-	g_return_val_if_fail (PK_IS_OBJ_LIST (list), NULL);
-
-	obj = g_ptr_array_index (list->priv->array, idx);
-	return obj;
-}
-
-/**
- * pk_obj_list_finalize:
- * @object: a valid #PkObjList instance
- **/
-static void
-pk_obj_list_finalize (GObject *object)
-{
-	PkObjList *list;
-	g_return_if_fail (PK_IS_OBJ_LIST (object));
-	list = PK_OBJ_LIST (object);
-
-	pk_obj_list_clear (list);
-	g_ptr_array_free (list->priv->array, TRUE);
-
-	G_OBJECT_CLASS (pk_obj_list_parent_class)->finalize (object);
-}
-
-/**
- * pk_obj_list_class_init:
- * @klass: a valid #PkObjListClass instance
- **/
-static void
-pk_obj_list_class_init (PkObjListClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize = pk_obj_list_finalize;
-	g_type_class_add_private (klass, sizeof (PkObjListPrivate));
-}
-
-/**
- * pk_obj_list_init:
- * @list: a valid #PkObjList instance
- *
- * Initializes the obj_list class.
- **/
-static void
-pk_obj_list_init (PkObjList *list)
-{
-	list->priv = PK_OBJ_LIST_GET_PRIVATE (list);
-	list->priv->func_new = NULL;
-	list->priv->func_copy = NULL;
-	list->priv->func_free = NULL;
-	list->priv->func_compare = NULL;
-	list->priv->func_to_string = NULL;
-	list->priv->func_from_string = NULL;
-	list->priv->array = g_ptr_array_new ();
-	list->len = list->priv->array->len;
-}
-
-/**
- * pk_obj_list_new:
- *
- * Return value: A new list class instance.
- **/
-PkObjList *
-pk_obj_list_new (void)
-{
-	PkObjList *list;
-	list = g_object_new (PK_TYPE_OBJ_LIST, NULL);
-	return PK_OBJ_LIST (list);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-#include <packagekit-glib/pk-category-obj.h>
-
-void
-pk_obj_list_test (EggTest *test)
-{
-	PkObjList *list;
-	PkCategoryObj *obj;
-
-	if (!egg_test_start (test, "PkObjList"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "get an instance");
-	list = pk_obj_list_new ();
-	egg_test_assert (test, list != NULL);
-
-	/* test object */
-	obj = pk_category_obj_new_from_data ("dave", "dave-moo", "name", "This is a name", "help");
-
-	egg_test_title (test, "correct size");
-	egg_test_assert (test, list->len == 0);
-
-	/* setup list type */
-	pk_obj_list_set_free (list, (PkObjListFreeFunc) pk_category_obj_free);
-	pk_obj_list_set_copy (list, (PkObjListCopyFunc) pk_category_obj_copy);
-
-	/* add to list */
-	pk_obj_list_add (list, obj);
-
-	egg_test_title (test, "correct size");
-	egg_test_assert (test, list->len == 1);
-
-	/* add to list */
-	pk_obj_list_add (list, obj);
-
-	egg_test_title (test, "correct size");
-	egg_test_assert (test, list->len == 2);
-
-	pk_obj_list_clear (list);
-
-	egg_test_title (test, "correct size");
-	egg_test_assert (test, list->len == 0);
-
-	/* add to list */
-	pk_obj_list_add (list, obj);
-
-	g_object_unref (list);
-
-	pk_category_obj_free (obj);
-	egg_test_end (test);
-}
-#endif
diff --git a/lib/packagekit-glib/pk-obj-list.h b/lib/packagekit-glib/pk-obj-list.h
deleted file mode 100644
index 7483915..0000000
--- a/lib/packagekit-glib/pk-obj-list.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#ifndef __PK_OBJ_LIST_H
-#define __PK_OBJ_LIST_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_OBJ_LIST		(pk_obj_list_get_type ())
-#define PK_OBJ_LIST(o)			(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_OBJ_LIST, PkObjList))
-#define PK_OBJ_LIST_CLASS(k)		(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_OBJ_LIST, PkObjListClass))
-#define PK_IS_OBJ_LIST(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_OBJ_LIST))
-#define PK_IS_OBJ_LIST_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_OBJ_LIST))
-#define PK_OBJ_LIST_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_OBJ_LIST, PkObjListClass))
-
-typedef struct PkObjListPrivate PkObjListPrivate;
-
-typedef struct
-{
-	GObject		     	 parent;
-	PkObjListPrivate	*priv;
-	guint			 len;
-} PkObjList;
-
-typedef struct
-{
-	GObjectClass			 parent_class;
-} PkObjListClass;
-
-typedef gpointer (*PkObjListNewFunc)		(void);
-typedef gpointer (*PkObjListCopyFunc)		(gconstpointer		 data);
-typedef void	 (*PkObjListFreeFunc)		(gpointer		 data);
-typedef gint	 (*PkObjListCompareFunc)	(gconstpointer		 data1,
-						 gconstpointer		 data2);
-typedef gboolean (*PkObjListEqualFunc)		(gconstpointer		 data1,
-						 gconstpointer		 data2);
-typedef gpointer (*PkObjListFromStringFunc)	(const gchar		*data);
-typedef gchar	*(*PkObjListToStringFunc)	(gconstpointer		 data);
-
-GType		 pk_obj_list_get_type		(void);
-PkObjList	*pk_obj_list_new		(void);
-
-void		 pk_obj_list_set_new		(PkObjList		*list,
-						 PkObjListNewFunc	 func);
-void		 pk_obj_list_set_copy		(PkObjList		*list,
-						 PkObjListCopyFunc	 func);
-void		 pk_obj_list_set_free		(PkObjList		*list,
-						 PkObjListFreeFunc	 func);
-void		 pk_obj_list_set_compare	(PkObjList		*list,
-						 PkObjListCompareFunc	 func);
-void		 pk_obj_list_set_equal		(PkObjList		*list,
-						 PkObjListEqualFunc	 func);
-void		 pk_obj_list_set_to_string	(PkObjList		*list,
-						 PkObjListToStringFunc	 func);
-void		 pk_obj_list_set_from_string	(PkObjList		*list,
-						 PkObjListFromStringFunc func);
-void		 pk_obj_list_clear		(PkObjList		*list);
-void		 pk_obj_list_print		(PkObjList		*list);
-gchar		*pk_obj_list_to_string		(PkObjList		*list)
-						 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_obj_list_to_file		(PkObjList		*list,
-						 const gchar		*filename);
-gboolean	 pk_obj_list_from_file		(PkObjList		*list,
-						 const gchar		*filename);
-void		 pk_obj_list_add		(PkObjList		*list,
-						 gconstpointer		 data);
-void		 pk_obj_list_sort		(PkObjList		*list,
-						 GCompareFunc		 sort_func);
-void		 pk_obj_list_add_list		(PkObjList		*list,
-						 const PkObjList	*data);
-void		 pk_obj_list_add_array		(PkObjList		*list,
-						 const GPtrArray	*data);
-void		 pk_obj_list_add_strv		(PkObjList		*list,
-						 gpointer		**data);
-void		 pk_obj_list_remove_list	(PkObjList		*list,
-						 const PkObjList	*data);
-void		 pk_obj_list_remove_duplicate	(PkObjList		*list);
-gboolean	 pk_obj_list_exists		(PkObjList		*list,
-						 gconstpointer		 data);
-gboolean	 pk_obj_list_remove		(PkObjList		*list,
-						 gconstpointer		 data);
-gboolean	 pk_obj_list_remove_index	(PkObjList		*list,
-						 guint			 index);
-gconstpointer	 pk_obj_list_index		(const PkObjList	*list,
-						 guint			 index);
-const GPtrArray	*pk_obj_list_get_array		(const PkObjList	*list);
-
-G_END_DECLS
-
-#endif /* __PK_OBJ_LIST_H */
diff --git a/lib/packagekit-glib/pk-package-id.c b/lib/packagekit-glib/pk-package-id.c
deleted file mode 100644
index 384081a..0000000
--- a/lib/packagekit-glib/pk-package-id.c
+++ /dev/null
@@ -1,706 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-package-id
- * @short_description: Functionality to modify a PackageID
- *
- * PackageId's are difficult to read and create.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-package-id.h>
-
-/**
- * pk_package_id_new:
- *
- * Creates a new #PkPackageId object with default values
- *
- * Return value: a new #PkPackageId object
- **/
-PkPackageId *
-pk_package_id_new (void)
-{
-	PkPackageId *id;
-	id = g_new0 (PkPackageId, 1);
-	id->name = NULL;
-	id->version = NULL;
-	id->arch = NULL;
-	id->data = NULL;
-	return id;
-}
-
-/**
- * pk_package_id_get_name:
- *
- * Gets name property from given #PkPackageId object
- *
- * Return value: name property of given #PkPackageId object
- **/
-const gchar *
-pk_package_id_get_name (const PkPackageId *id)
-{
-	g_return_val_if_fail (id != NULL, NULL);
-	return id->name;
-}
-
-/**
- * pk_package_id_get_version:
- *
- * Gets version property from given #PkPackageId object
- *
- * Return value: version property of given #PkPackageId object
- **/
-const gchar *
-pk_package_id_get_version (const PkPackageId *id)
-{
-	g_return_val_if_fail (id != NULL, NULL);
-	return id->version;
-}
-
-/**
- * pk_package_id_get_arch:
- *
- * Gets arch property from given #PkPackageId object
- *
- * Return value: arch property of given #PkPackageId object
- **/
-const gchar *
-pk_package_id_get_arch (const PkPackageId *id)
-{
-	g_return_val_if_fail (id != NULL, NULL);
-	return id->arch;
-}
-
-/**
- * pk_package_id_get_data:
- *
- * Gets data property from given #PkPackageId object
- *
- * Return value: data property of given #PkPackageId object
- **/
-const gchar *
-pk_package_id_get_data (const PkPackageId *id)
-{
-	g_return_val_if_fail (id != NULL, NULL);
-	return id->data;
-}
-
-/**
- * pk_strsplit:
- * @id: the ; delimited string to split
- * @parts: how many parts the delimted string should be split into
- *
- * Splits a string into the correct number of parts, checking the correct
- * number of delimiters are present.
- *
- * Return value: a char array is split correctly, %NULL if invalid
- * Note: You need to use g_strfreev on the returned value
- **/
-static gchar **
-pk_strsplit (const gchar *id, guint parts)
-{
-	gchar **sections = NULL;
-
-	if (id == NULL) {
-		goto out;
-	}
-
-	/* split by delimeter ';' */
-	sections = g_strsplit (id, ";", 0);
-	if (g_strv_length (sections) != parts) {
-		goto out;
-	}
-
-	/* name has to be valid */
-	if (egg_strzero (sections[0])) {
-		goto out;
-	}
-
-	/* all okay, phew.. */
-	return sections;
-
-out:
-	/* free sections and return NULL */
-	if (sections != NULL) {
-		g_strfreev (sections);
-	}
-	return NULL;
-}
-
-/**
- * pk_package_id_check:
- * @package_id: the text the check
- *
- * Return value: %TRUE if the package_id was well formed.
- **/
-gboolean
-pk_package_id_check (const gchar *package_id)
-{
-	gchar **sections;
-	gboolean ret;
-
-	if (package_id == NULL) {
-		return FALSE;
-	}
-	ret = g_utf8_validate (package_id, -1, NULL);
-	if (!ret) {
-		egg_warning ("invalid UTF8!");
-		return FALSE;
-	}
-	sections = pk_strsplit (package_id, 4);
-	if (sections != NULL) {
-		g_strfreev (sections);
-		return TRUE;
-	}
-	return FALSE;
-}
-
-/**
- * pk_package_id_new_from_string:
- * @package_id: the text to pre-fill the object
- *
- * Creates a new #PkPackageId object with values taken from the supplied id.
- *
- * Return value: a new #PkPackageId object
- **/
-PkPackageId *
-pk_package_id_new_from_string (const gchar *package_id)
-{
-	gchar **sections;
-	PkPackageId *id = NULL;
-
-	g_return_val_if_fail (package_id != NULL, NULL);
-
-	sections = pk_strsplit (package_id, 4);
-	if (sections == NULL) {
-		return NULL;
-	}
-
-	/* create new object */
-	id = pk_package_id_new ();
-	if (!egg_strzero (sections[0]))
-		id->name = g_strdup (sections[0]);
-	if (!egg_strzero (sections[1]))
-		id->version = g_strdup (sections[1]);
-	if (!egg_strzero (sections[2]))
-		id->arch = g_strdup (sections[2]);
-	if (!egg_strzero (sections[3]))
-		id->data = g_strdup (sections[3]);
-	g_strfreev (sections);
-	return id;
-}
-
-/**
- * pk_package_id_new_from_list:
- * @name: the package name
- * @version: the package version
- * @arch: the package architecture
- * @data: the package extra data
- *
- * Creates a new #PkPackageId object with values.
- *
- * Return value: a new #PkPackageId object
- **/
-PkPackageId *
-pk_package_id_new_from_list (const gchar *name, const gchar *version, const gchar *arch, const gchar *data)
-{
-	PkPackageId *id = NULL;
-
-	g_return_val_if_fail (name != NULL, NULL);
-
-	/* create new object */
-	id = pk_package_id_new ();
-	id->name = g_strdup (name);
-	id->version = g_strdup (version);
-	id->arch = g_strdup (arch);
-	id->data = g_strdup (data);
-	return id;
-}
-
-/**
- * pk_package_id_copy:
- * @id: the %PkPackageId structure to copy
- *
- * Copies into a new #PkPackageId object.
- *
- * Return value: a new #PkPackageId object
- **/
-PkPackageId *
-pk_package_id_copy (const PkPackageId *id)
-{
-	return pk_package_id_new_from_list (id->name, id->version, id->arch, id->data);
-}
-
-/**
- * pk_package_id_to_string:
- * @id: A #PkPackageId object
- *
- * Return value: returns a string representation of #PkPackageId.
- **/
-gchar *
-pk_package_id_to_string (const PkPackageId *id)
-{
-	g_return_val_if_fail (id != NULL, NULL);
-	g_return_val_if_fail (id->name != NULL, NULL);
-	return g_strdup_printf ("%s;%s;%s;%s", id->name,
-				id->version != NULL ? id->version : "",
-				id->arch != NULL ? id->arch : "",
-				id->data != NULL ? id->data : "");
-}
-
-/**
- * pk_package_id_build:
- * @name: the package name
- * @version: the package version
- * @arch: the package architecture
- * @data: the package extra data
- *
- * Return value: returns a string putting together the data.
- **/
-gchar *
-pk_package_id_build (const gchar *name, const gchar *version,
-		     const gchar *arch, const gchar *data)
-{
-	g_return_val_if_fail (name != NULL, NULL);
-	return g_strdup_printf ("%s;%s;%s;%s", name,
-				version != NULL ? version : "",
-				arch != NULL ? arch : "",
-				data != NULL ? data : "");
-}
-
-/**
- * pk_package_id_free:
- * @id: the #PkPackageId object
- *
- * Return value: %TRUE if the #PkPackageId object was freed.
- **/
-gboolean
-pk_package_id_free (PkPackageId *id)
-{
-	if (id == NULL) {
-		return FALSE;
-	}
-	g_free (id->name);
-	g_free (id->arch);
-	g_free (id->version);
-	g_free (id->data);
-	g_free (id);
-	return TRUE;
-}
-
-/**
- * pk_arch_base_ix86:
- **/
-static gboolean
-pk_arch_base_ix86 (const gchar *arch)
-{
-	if (g_strcmp0 (arch, "i386") == 0 ||
-	    g_strcmp0 (arch, "i486") == 0 ||
-	    g_strcmp0 (arch, "i586") == 0 ||
-	    g_strcmp0 (arch, "i686") == 0)
-		return TRUE;
-	return FALSE;
-}
-
-/**
- * pk_arch_fuzzy_equal:
- * @arch1: the first %PkPackageId
- * @arch2: the second %PkPackageId
- *
- * Compare the architectures in a fuzzy way
- *
- * Return value: %TRUE if the archs can be considered equal.
- **/
-static gboolean
-pk_arch_fuzzy_equal (const gchar *arch1, const gchar *arch2)
-{
-	if (g_strcmp0 (arch1, arch2) == 0)
-		return TRUE;
-	if (pk_arch_base_ix86 (arch1) && pk_arch_base_ix86 (arch2))
-		return TRUE;
-	return FALSE;
-}
-
-/**
- * pk_package_id_equal_fuzzy_arch:
- * @id1: the first %PkPackageId
- * @id2: the second %PkPackageId
- *
- * Only compare the name, version, and arch
- *
- * Return value: %TRUE if the ids can be considered equal.
- **/
-gboolean
-pk_package_id_equal_fuzzy_arch (const PkPackageId *id1, const PkPackageId *id2)
-{
-	if (g_strcmp0 (id1->name, id2->name) == 0 &&
-	    g_strcmp0 (id1->version, id2->version) == 0 &&
-	    pk_arch_fuzzy_equal (id1->arch, id2->arch))
-		return TRUE;
-	return FALSE;
-}
-
-/**
- * pk_package_id_equal:
- * @id1: the first %PkPackageId
- * @id2: the second %PkPackageId
- *
- * Only compare the name, version, and arch
- *
- * Return value: %TRUE if the ids can be considered equal.
- **/
-gboolean
-pk_package_id_equal (const PkPackageId *id1, const PkPackageId *id2)
-{
-	if (g_strcmp0 (id1->name, id2->name) == 0 &&
-	    g_strcmp0 (id1->version, id2->version) == 0 &&
-	    g_strcmp0 (id1->arch, id2->arch) == 0)
-		return TRUE;
-	return FALSE;
-}
-
-/**
- * pk_strcmp_sections:
- * @id1: the first item of text to test
- * @id2: the second item of text to test
- * @parts: the number of parts each id should have
- * @compare: the leading number of parts to compare
- *
- * We only want to compare some first sections, not all the data when
- * comparing package_id's and transaction_id's.
- *
- * Return value: %TRUE if the strings can be considered the same.
- *
- **/
-static gboolean
-pk_strcmp_sections (const gchar *id1, const gchar *id2, guint parts, guint compare)
-{
-	gchar **sections1;
-	gchar **sections2;
-	gboolean ret = FALSE;
-	guint i;
-
-	if (id1 == NULL || id2 == NULL) {
-		egg_warning ("package id compare invalid '%s' and '%s'", id1, id2);
-		return FALSE;
-	}
-	if (compare > parts) {
-		egg_warning ("compare %i > parts %i", compare, parts);
-		return FALSE;
-	}
-	if (compare == parts) {
-		return (g_strcmp0 (id1, id2) == 0);
-	}
-
-	/* split, NULL will be returned if error */
-	sections1 = pk_strsplit (id1, parts);
-	sections2 = pk_strsplit (id2, parts);
-
-	/* check we split okay */
-	if (sections1 == NULL) {
-		egg_warning ("string id compare sections1 invalid '%s'", id1);
-		goto out;
-	}
-	if (sections2 == NULL) {
-		egg_warning ("string id compare sections2 invalid '%s'", id2);
-		goto out;
-	}
-
-	/* only compare preceeding sections */
-	for (i=0; i<compare; i++) {
-		if (g_strcmp0 (sections1[i], sections2[i]) != 0) {
-			goto out;
-		}
-	}
-	ret = TRUE;
-
-out:
-	g_strfreev (sections1);
-	g_strfreev (sections2);
-	return ret;
-}
-
-/**
- * pk_package_id_equal_strings:
- * @pid1: the first package_id
- * @pid2: the second package_id
- *
- * Only compare the first three sections, data is not part of the match
- *
- * Return value: %TRUE if the package_id's can be considered equal.
- **/
-gboolean
-pk_package_id_equal_strings (const gchar *pid1, const gchar *pid2)
-{
-	return pk_strcmp_sections (pid1, pid2, 4, 3);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_package_id_test (EggTest *test)
-{
-	gboolean ret;
-	gchar *text;
-	const gchar *temp;
-	PkPackageId *id;
-	PkPackageId *id2;
-	gchar **array;
-
-	if (!egg_test_start (test, "PkPackageId"))
-		return;
-
-	/************************************************************
-	 ****************          id           ******************
-	 ************************************************************/
-
-	egg_test_title (test, "id build valid");
-	text = pk_package_id_build ("moo", "0.0.1", "i386", "fedora");
-	if (g_strcmp0 (text, "moo;0.0.1;i386;fedora") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-	g_free (text);
-
-	egg_test_title (test, "id build partial");
-	text = pk_package_id_build ("moo", NULL, NULL, NULL);
-	if (g_strcmp0 (text, "moo;;;") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got '%s', expected '%s'", text, "moo;;;");
-	g_free (text);
-
-	egg_test_title (test, "pid equal pass (same)");
-	ret = pk_package_id_equal_strings ("moo;0.0.1;i386;fedora", "moo;0.0.1;i386;fedora");
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "pid equal pass (different)");
-	ret = pk_package_id_equal_strings ("moo;0.0.1;i386;fedora", "moo;0.0.1;i386;data");
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "get an id object");
-	id = pk_package_id_new ();
-	egg_test_assert (test, id != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test id freeing early");
-	ret = pk_package_id_free (id);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "parse incorrect package_id from string (empty)");
-	temp = "";
-	id = pk_package_id_new_from_string (temp);
-	if (id == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "passed an invalid string '%s'", temp);
-
-	/************************************************************/
-	egg_test_title (test, "parse incorrect package_id from string (not enough)");
-	temp = "moo;0.0.1;i386";
-	id = pk_package_id_new_from_string (temp);
-	if (id == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "passed an invalid string '%s'", temp);
-
-	/************************************************************/
-	egg_test_title (test, "parse package_id from string");
-	id = pk_package_id_new_from_string ("moo;0.0.1;i386;fedora");
-	if (id != NULL &&
-	    g_strcmp0 (id->name, "moo") == 0 &&
-	    g_strcmp0 (id->arch, "i386") == 0 &&
-	    g_strcmp0 (id->data, "fedora") == 0 &&
-	    g_strcmp0 (id->version, "0.0.1") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test copying");
-	id2 = pk_package_id_copy (id);
-	if (id2 != NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test id building with valid data");
-	text = pk_package_id_to_string (id2);
-	if (g_strcmp0 (text, "moo;0.0.1;i386;fedora") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "package_id is '%s'", text);
-	g_free (text);
-	pk_package_id_free (id);
-	pk_package_id_free (id2);
-
-	/************************************************************/
-	egg_test_title (test, "test id building with partial data");
-	id = pk_package_id_new_from_string ("moo;;;");
-	text = pk_package_id_to_string (id);
-	if (g_strcmp0 (text, "moo;;;") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "package_id is '%s', should be '%s'", text, "moo;;;");
-	g_free (text);
-	pk_package_id_free (id);
-
-	/************************************************************/
-	egg_test_title (test, "parse short package_id from string");
-	id = pk_package_id_new_from_string ("moo;0.0.1;;");
-	if (id != NULL &&
-	    (g_strcmp0 (id->name, "moo") == 0) &&
-	    (g_strcmp0 (id->version, "0.0.1") == 0) &&
-	    id->data == NULL &&
-	    id->arch == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, NULL);
-	pk_package_id_free (id);
-
-	egg_test_title (test, "id equal pass (same)");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "moo;0.0.1;i386;fedora", 4, 3);
-	egg_test_assert (test, ret);
-
-	egg_test_title (test, "id equal pass (parts==match)");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "moo;0.0.1;i386;fedora", 4, 4);
-	egg_test_assert (test, ret);
-
-	egg_test_title (test, "id equal pass (different)");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "moo;0.0.1;i386;data", 4, 3);
-	egg_test_assert (test, ret);
-
-	egg_test_title (test, "id equal fail1");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "moo;0.0.2;x64;fedora", 4, 3);
-	egg_test_assert (test, !ret);
-
-	egg_test_title (test, "id equal fail2");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "gnome;0.0.2;i386;fedora", 4, 3);
-	egg_test_assert (test, !ret);
-
-	egg_test_title (test, "id equal fail3");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "moo;0.0.3;i386;fedora", 4, 3);
-	egg_test_assert (test, !ret);
-
-	egg_test_title (test, "id equal fail (match too high)");
-	ret = pk_strcmp_sections ("moo;0.0.1;i386;fedora", "moo;0.0.3;i386;fedora", 4, 5);
-	egg_test_assert (test, !ret);
-
-	/************************************************************
-	 ****************          splitting         ****************
-	 ************************************************************/
-	egg_test_title (test, "test pass 1");
-	array = pk_strsplit ("foo", 1);
-	if (array != NULL &&
-	    g_strcmp0 (array[0], "foo") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got %s", array[0]);
-	g_strfreev (array);
-
-	/************************************************************/
-	egg_test_title (test, "test pass 2");
-	array = pk_strsplit ("foo;moo", 2);
-	if (array != NULL &&
-	    g_strcmp0 (array[0], "foo") == 0 &&
-	    g_strcmp0 (array[1], "moo") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got %s, %s", array[0], array[1]);
-	g_strfreev (array);
-
-	/************************************************************/
-	egg_test_title (test, "test pass 3");
-	array = pk_strsplit ("foo;moo;bar", 3);
-	if (array != NULL &&
-	    g_strcmp0 (array[0], "foo") == 0 &&
-	    g_strcmp0 (array[1], "moo") == 0 &&
-	    g_strcmp0 (array[2], "bar") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got %s, %s, %s, %s", array[0], array[1], array[2], array[3]);
-	g_strfreev (array);
-
-	/************************************************************/
-	egg_test_title (test, "test on real packageid");
-	array = pk_strsplit ("kde-i18n-csb;4:3.5.8~pre20071001-0ubuntu1;all;", 4);
-	if (array != NULL &&
-	    g_strcmp0 (array[0], "kde-i18n-csb") == 0 &&
-	    g_strcmp0 (array[1], "4:3.5.8~pre20071001-0ubuntu1") == 0 &&
-	    g_strcmp0 (array[2], "all") == 0 &&
-	    g_strcmp0 (array[3], "") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got %s, %s, %s, %s", array[0], array[1], array[2], array[3]);
-	g_strfreev (array);
-
-	/************************************************************/
-	egg_test_title (test, "test on short packageid");
-	array = pk_strsplit ("kde-i18n-csb;4:3.5.8~pre20071001-0ubuntu1;;", 4);
-	if (array != NULL &&
-	    g_strcmp0 (array[0], "kde-i18n-csb") == 0 &&
-	    g_strcmp0 (array[1], "4:3.5.8~pre20071001-0ubuntu1") == 0 &&
-	    g_strcmp0 (array[2], "") == 0 &&
-	    g_strcmp0 (array[3], "") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got %s, %s, %s, %s", array[0], array[1], array[2], array[3]);
-	g_strfreev (array);
-
-	/************************************************************/
-	egg_test_title (test, "test fail under");
-	array = pk_strsplit ("foo;moo", 1);
-	egg_test_assert (test, array == NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test fail over");
-	array = pk_strsplit ("foo;moo", 3);
-	egg_test_assert (test, array == NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test fail missing first");
-	array = pk_strsplit (";moo", 2);
-	egg_test_assert (test, array == NULL);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-package-id.h b/lib/packagekit-glib/pk-package-id.h
deleted file mode 100644
index b7278ad..0000000
--- a/lib/packagekit-glib/pk-package-id.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_PACKAGE_ID_H
-#define __PK_PACKAGE_ID_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkPackageId:
- *
- * Cached object to represent a package ID.
- **/
-typedef struct {
-	gchar	*name;
-	gchar	*version;
-	gchar	*arch;
-	gchar	*data;
-} PkPackageId;
-
-/* objects */
-PkPackageId	*pk_package_id_new			(void);
-const gchar	*pk_package_id_get_name			(const PkPackageId	*id);
-const gchar	*pk_package_id_get_version		(const PkPackageId	*id);
-const gchar	*pk_package_id_get_arch			(const PkPackageId	*id);
-const gchar	*pk_package_id_get_data			(const PkPackageId	*id);
-PkPackageId	*pk_package_id_new_from_string		(const gchar		*package_id)
-							 G_GNUC_WARN_UNUSED_RESULT;
-PkPackageId	*pk_package_id_new_from_list		(const gchar		*name,
-							 const gchar		*version,
-							 const gchar		*arch,
-							 const gchar		*data)
-							 G_GNUC_WARN_UNUSED_RESULT;
-PkPackageId	*pk_package_id_copy			(const PkPackageId	*id)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_package_id_equal			(const PkPackageId	*id1,
-							 const PkPackageId	*id2);
-gboolean	 pk_package_id_equal_fuzzy_arch		(const PkPackageId	*id1,
-							 const PkPackageId	*id2);
-gchar		*pk_package_id_to_string		(const PkPackageId	*id)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_package_id_free			(PkPackageId		*id);
-
-/* string helpers */
-gchar		*pk_package_id_build			(const gchar		*name,
-							 const gchar		*version,
-							 const gchar		*arch,
-							 const gchar		*data)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_package_id_check			(const gchar		*package_id)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_package_id_equal_strings		(const gchar		*pid1,
-							 const gchar		*pid2);
-
-G_END_DECLS
-
-#endif /* __PK_PACKAGE_ID_H */
-
diff --git a/lib/packagekit-glib/pk-package-ids.c b/lib/packagekit-glib/pk-package-ids.c
deleted file mode 100644
index d25aceb..0000000
--- a/lib/packagekit-glib/pk-package-ids.c
+++ /dev/null
@@ -1,272 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-package-ids
- * @short_description: Functionality to modify multiple PackageIDs
- *
- * Composite PackageId's are difficult to read and create.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-package-id.h>
-#include <packagekit-glib/pk-package-ids.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-/**
- * pk_package_ids_from_id:
- * @package_id: A single package_id
- *
- * Form a composite string array of package_id's from
- * a single package_id
- *
- * Return value: the string array, or %NULL if invalid, free with g_strfreev()
- **/
-gchar **
-pk_package_ids_from_id (const gchar *package_id)
-{
-	g_return_val_if_fail (package_id != NULL, NULL);
-	return g_strsplit (package_id, PK_PACKAGE_IDS_DELIM, 1);
-}
-
-/**
- * pk_package_ids_from_text:
- * @package_id: A single package_id
- *
- * Form a composite string array of package_id's from
- * a delimited string
- *
- * Return value: the string array, or %NULL if invalid, free with g_strfreev()
- **/
-gchar **
-pk_package_ids_from_text (const gchar *package_id)
-{
-	g_return_val_if_fail (package_id != NULL, NULL);
-	return g_strsplit (package_id, PK_PACKAGE_IDS_DELIM, 0);
-}
-
-/**
- * pk_package_ids_from_array:
- * @array: the GPtrArray of package_id's
- *
- * Form a composite string array of package_id's.
- * The data in the GPtrArray is copied.
- *
- * Return value: the string array, or %NULL if invalid
- **/
-gchar **
-pk_package_ids_from_array (GPtrArray *array)
-{
-	g_return_val_if_fail (array != NULL, NULL);
-	return pk_ptr_array_to_strv (array);
-}
-
-/**
- * pk_package_ids_from_va_list:
- * @package_id_first: the first package_id
- * @args: any subsequant package_id's
- *
- * Form a composite string array of package_id's.
- *
- * Return value: the string array, or %NULL if invalid
- **/
-gchar **
-pk_package_ids_from_va_list (const gchar *package_id_first, va_list *args)
-{
-	g_return_val_if_fail (package_id_first != NULL, NULL);
-	return pk_va_list_to_argv (package_id_first, args);
-}
-
-/**
- * pk_package_ids_check:
- * @package_ids: a string array of package_id's
- *
- * Check the string array of package_id's for validity
- *
- * Return value: %TRUE if the package_ids are all valid.
- **/
-gboolean
-pk_package_ids_check (gchar **package_ids)
-{
-	guint i;
-	guint size;
-	gboolean ret = FALSE;
-	const gchar *package_id;
-
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-
-	/* check all */
-	size = g_strv_length (package_ids);
-	for (i=0; i<size; i++) {
-		package_id = package_ids[i];
-		ret = pk_package_id_check (package_id);
-		if (!ret)
-			goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_package_ids_print:
- * @package_ids: a string array of package_id's
- *
- * Print the string array of package_id's
- *
- * Return value: %TRUE if we printed all the package_id's.
- **/
-gboolean
-pk_package_ids_print (gchar **package_ids)
-{
-	guint i;
-	guint size;
-
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-
-	/* print all */
-	size = g_strv_length (package_ids);
-	for (i=0; i<size; i++) {
-		egg_debug ("package_id[%i] = %s", i, package_ids[i]);
-	}
-	return TRUE;
-}
-
-/**
- * pk_package_ids_size:
- * @package_ids: a string array of package_id's
- *
- * Gets the size of the array
- *
- * Return value: the size of the array.
- **/
-guint
-pk_package_ids_size (gchar **package_ids)
-{
-	g_return_val_if_fail (package_ids != NULL, 0);
-	return g_strv_length (package_ids);
-}
-
-/**
- * pk_package_ids_to_text:
- * @package_ids: a string array of package_id's
- *
- * Cats the string array of package_id's into one delimited string
- *
- * Return value: a string representation of all the package_id's.
- **/
-gchar *
-pk_package_ids_to_text (gchar **package_ids)
-{
-	/* special case as this is allowed */
-	if (package_ids == NULL)
-		return g_strdup ("(null)");
-	return g_strjoinv (PK_PACKAGE_IDS_DELIM, package_ids);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-/**
- * pk_package_ids_test_va_list:
- **/
-static gchar **
-pk_package_ids_test_va_list (const gchar *package_id_first, ...)
-{
-	va_list args;
-	gchar **package_ids;
-
-	/* process the valist */
-	va_start (args, package_id_first);
-	package_ids = pk_package_ids_from_va_list (package_id_first, &args);
-	va_end (args);
-
-	return package_ids;
-}
-
-
-void
-pk_package_ids_test (EggTest *test)
-{
-	gboolean ret;
-	gchar *package_ids_blank[] = {};
-	gchar **package_ids;
-	guint size;
-
-	if (!egg_test_start (test, "PkPackageIds"))
-		return;
-
-	/************************************************************
-	 ****************          IDENTS          ******************
-	 ************************************************************/
-
-	egg_test_title (test, "parse va_list");
-	package_ids = pk_package_ids_test_va_list ("foo;0.0.1;i386;fedora", "bar;0.1.1;noarch;livna", NULL);
-	egg_test_assert (test, package_ids != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "correct size");
-	size = pk_package_ids_size (package_ids);
-	egg_test_assert (test, size == 2);
-
-	/************************************************************/
-	egg_test_title (test, "verify blank");
-	ret = pk_package_ids_check (package_ids_blank);
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "verify");
-	ret = pk_package_ids_check (package_ids);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "first correct");
-	ret = pk_package_id_equal_strings (package_ids[0], "foo;0.0.1;i386;fedora");
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "second correct");
-	ret = pk_package_id_equal_strings (package_ids[1], "bar;0.1.1;noarch;livna");
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "print");
-	ret = pk_package_ids_print (package_ids);
-	egg_test_assert (test, ret);
-
-	g_strfreev (package_ids);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-package-ids.h b/lib/packagekit-glib/pk-package-ids.h
deleted file mode 100644
index f17201e..0000000
--- a/lib/packagekit-glib/pk-package-ids.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_PACKAGE_IDS_H
-#define __PK_PACKAGE_IDS_H
-
-#include <glib-object.h>
-
-G_BEGIN_DECLS
-
-/* rationalle:
- *
- * '%': breaks printf
- * '|': used as the filename seporator
- * '~': conary
- * '@': conary
- *
- * If this has to be changed, also change:
- * - backends/urpmi/helpers/urpmi-dispatched-backend.pl
- * - python/packagekit/backend.py
- */
-#define PK_PACKAGE_IDS_DELIM	"&"
-
-gchar		**pk_package_ids_from_id		(const gchar	*package_id);
-gchar		**pk_package_ids_from_text		(const gchar	*package_id);
-gchar		**pk_package_ids_from_array		(GPtrArray	*array);
-gchar		**pk_package_ids_from_va_list		(const gchar	*package_id_first,
-							 va_list	*args);
-gboolean	 pk_package_ids_check			(gchar		**package_ids)
-							 G_GNUC_WARN_UNUSED_RESULT;
-gboolean	 pk_package_ids_print			(gchar		**package_ids);
-guint		 pk_package_ids_size			(gchar		**package_ids);
-gchar		*pk_package_ids_to_text			(gchar		**package_ids)
-							 G_GNUC_WARN_UNUSED_RESULT;
-
-G_END_DECLS
-
-#endif /* __PK_PACKAGE_IDS_H */
diff --git a/lib/packagekit-glib/pk-package-list.c b/lib/packagekit-glib/pk-package-list.c
deleted file mode 100644
index c2fa9d7..0000000
--- a/lib/packagekit-glib/pk-package-list.c
+++ /dev/null
@@ -1,573 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-package-list
- * @short_description: A list of Package data needed for an offline cache
- *
- * These provide a way to query and store a list of packages.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <time.h>
-#include <errno.h>
-
-#include <string.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <glib/gi18n.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-#include <packagekit-glib/pk-obj-list.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-package-id.h>
-#include <packagekit-glib/pk-package-obj.h>
-#include <packagekit-glib/pk-package-list.h>
-
-static void     pk_package_list_finalize	(GObject            *object);
-
-#define PK_PACKAGE_LIST_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_PACKAGE_LIST, PkPackageListPrivate))
-
-/**
- * PkPackageListPrivate:
- *
- * Private #PkPackageList data
- **/
-struct _PkPackageListPrivate
-{
-	GPtrArray		*array;
-	gboolean		 fuzzy_arch;
-};
-
-G_DEFINE_TYPE (PkPackageList, pk_package_list, PK_TYPE_OBJ_LIST)
-
-/**
- * pk_package_list_set_fuzzy_arch:
- **/
-gboolean
-pk_package_list_set_fuzzy_arch (PkPackageList *plist, gboolean fuzzy_arch)
-{
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	plist->priv->fuzzy_arch = fuzzy_arch;
-
-	/* use a different equality function */
-	if (fuzzy_arch)
-		pk_obj_list_set_equal (PK_OBJ_LIST(plist), (PkObjListCompareFunc) pk_package_obj_equal_fuzzy_arch);
-	else
-		pk_obj_list_set_equal (PK_OBJ_LIST(plist), (PkObjListCompareFunc) pk_package_obj_equal);
-
-	return TRUE;
-}
-
-/**
- * pk_package_list_add:
- **/
-gboolean
-pk_package_list_add (PkPackageList *plist, PkInfoEnum info, const PkPackageId *ident, const gchar *summary)
-{
-	PkPackageObj *obj;
-
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	g_return_val_if_fail (ident != NULL, FALSE);
-
-	obj = pk_package_obj_new (info, ident, summary);
-	pk_obj_list_add (PK_OBJ_LIST(plist), obj);
-	pk_package_obj_free (obj);
-
-	return TRUE;
-}
-
-/**
- * pk_package_list_to_strv:
- **/
-gchar **
-pk_package_list_to_strv (const PkPackageList *plist)
-{
-	const PkPackageObj *obj;
-	GPtrArray *array;
-	gchar **package_ids;
-	gchar *package_id;
-	guint length;
-	guint i;
-
-	array = g_ptr_array_new ();
-	length = PK_OBJ_LIST(plist)->len;
-	for (i=0; i<length; i++) {
-		obj = pk_obj_list_index (PK_OBJ_LIST(plist), i);
-		package_id = pk_package_id_to_string (obj->id);
-		g_ptr_array_add (array, g_strdup (package_id));
-		g_free (package_id);
-	}
-
-	/* convert to argv */
-	package_ids = pk_ptr_array_to_strv (array);
-	g_ptr_array_foreach (array, (GFunc) g_free, NULL);
-	g_ptr_array_free (array, TRUE);
-
-	return package_ids;
-}
-
-/**
- * pk_package_list_get_size:
- **/
-guint
-pk_package_list_get_size (const PkPackageList *plist)
-{
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), 0);
-	return PK_OBJ_LIST(plist)->len;
-}
-
-/**
- * pk_package_list_sort_compare_package_id_func:
- **/
-static gint
-pk_package_list_sort_compare_package_id_func (PkPackageObj **a, PkPackageObj **b)
-{
-	guint ret;
-	gchar *a_text = pk_package_id_to_string ((*a)->id);
-	gchar *b_text = pk_package_id_to_string ((*b)->id);
-	ret = strcmp (a_text, b_text);
-	g_free (a_text);
-	g_free (b_text);
-	return ret;
-}
-
-/**
- * pk_package_list_sort_compare_summary_func:
- **/
-static gint
-pk_package_list_sort_compare_summary_func (PkPackageObj **a, PkPackageObj **b)
-{
-	if ((*a)->summary == NULL && (*b)->summary == NULL)
-		return 0;
-	else if ((*a)->summary == NULL)
-		return -1;
-	else if ((*b)->summary == NULL)
-		return 1;
-	return strcmp ((*a)->summary, (*b)->summary);
-}
-
-/**
- * pk_package_list_sort_compare_info_func:
- **/
-static gint
-pk_package_list_sort_compare_info_func (PkPackageObj **a, PkPackageObj **b)
-{
-	if ((*a)->info == (*b)->info)
-		return 0;
-	else if ((*a)->info > (*b)->info)
-		return -1;
-	return 1;
-}
-
-/**
- * pk_package_list_sort:
- *
- * Sorts by package_id
- **/
-gboolean
-pk_package_list_sort (PkPackageList *plist)
-{
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	pk_obj_list_sort (PK_OBJ_LIST(plist), (GCompareFunc) pk_package_list_sort_compare_package_id_func);
-	return TRUE;
-}
-
-/**
- * pk_package_list_sort_summary:
- *
- * Sorts by summary
- **/
-gboolean
-pk_package_list_sort_summary (PkPackageList *plist)
-{
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	pk_obj_list_sort (PK_OBJ_LIST(plist), (GCompareFunc) pk_package_list_sort_compare_summary_func);
-	return TRUE;
-}
-
-/**
- * pk_package_list_sort_info:
- *
- * Sorts by PkInfoEnum
- **/
-gboolean
-pk_package_list_sort_info (PkPackageList *plist)
-{
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	pk_obj_list_sort (PK_OBJ_LIST(plist), (GCompareFunc) pk_package_list_sort_compare_info_func);
-	return TRUE;
-}
-
-/**
- * pk_package_list_get_obj:
- **/
-const PkPackageObj *
-pk_package_list_get_obj (const PkPackageList *plist, guint item)
-{
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), NULL);
-	if (item >= PK_OBJ_LIST(plist)->len) {
-		egg_warning ("item too large!");
-		return NULL;
-	}
-	return pk_obj_list_index (PK_OBJ_LIST(plist), item);
-}
-
-/**
- * pk_package_list_contains:
- **/
-gboolean
-pk_package_list_contains (const PkPackageList *plist, const gchar *package_id)
-{
-	const PkPackageObj *obj;
-	guint i;
-	guint length;
-	gboolean ret = FALSE;
-	gchar *package_id_temp;
-
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	g_return_val_if_fail (package_id != NULL, FALSE);
-
-	length = PK_OBJ_LIST(plist)->len;
-	for (i=0; i<length; i++) {
-		obj = pk_obj_list_index (PK_OBJ_LIST(plist), i);
-		package_id_temp = pk_package_id_to_string (obj->id);
-		ret = pk_package_id_equal_strings (package_id_temp, package_id);
-		g_free (package_id_temp);
-		if (ret) {
-			break;
-		}
-	}
-	return ret;
-}
-
-/**
- * pk_package_list_remove:
- **/
-gboolean
-pk_package_list_remove (PkPackageList *plist, const gchar *package_id)
-{
-	const PkPackageObj *obj;
-	guint i;
-	guint length;
-	gboolean ret = FALSE;
-	gchar *package_id_temp;
-
-	g_return_val_if_fail (PK_IS_PACKAGE_LIST (plist), FALSE);
-	g_return_val_if_fail (package_id != NULL, FALSE);
-
-	length = PK_OBJ_LIST(plist)->len;
-	for (i=0; i<length; i++) {
-		obj = pk_obj_list_index (PK_OBJ_LIST(plist), i);
-		package_id_temp = pk_package_id_to_string (obj->id);
-		ret = pk_package_id_equal_strings (package_id_temp, package_id);
-		g_free (package_id_temp);
-		if (ret) {
-			pk_obj_list_remove (PK_OBJ_LIST(plist), obj);
-			ret = TRUE;
-			break;
-		}
-	}
-	return ret;
-}
-
-/**
- * pk_package_list_class_init:
- * @klass: The PkPackageListClass
- **/
-static void
-pk_package_list_class_init (PkPackageListClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize = pk_package_list_finalize;
-	g_type_class_add_private (klass, sizeof (PkPackageListPrivate));
-}
-
-/**
- * pk_package_list_init:
- **/
-static void
-pk_package_list_init (PkPackageList *plist)
-{
-	g_return_if_fail (plist != NULL);
-	g_return_if_fail (PK_IS_PACKAGE_LIST (plist));
-
-	plist->priv = PK_PACKAGE_LIST_GET_PRIVATE (plist);
-	pk_obj_list_set_copy (PK_OBJ_LIST(plist), (PkObjListCopyFunc) pk_package_obj_copy);
-	pk_obj_list_set_free (PK_OBJ_LIST(plist), (PkObjListFreeFunc) pk_package_obj_free);
-	pk_obj_list_set_to_string (PK_OBJ_LIST(plist), (PkObjListToStringFunc)  pk_package_obj_to_string);
-	pk_obj_list_set_from_string (PK_OBJ_LIST(plist), (PkObjListFromStringFunc)  pk_package_obj_from_string);
-	pk_package_list_set_fuzzy_arch (plist, FALSE);
-}
-
-/**
- * pk_package_list_finalize:
- * @object: The object to finalize
- **/
-static void
-pk_package_list_finalize (GObject *object)
-{
-	PkPackageList *plist;
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_PACKAGE_LIST (object));
-	plist = PK_PACKAGE_LIST (object);
-	g_return_if_fail (plist->priv != NULL);
-
-	G_OBJECT_CLASS (pk_package_list_parent_class)->finalize (object);
-}
-
-/**
- * pk_package_list_new:
- *
- * Return value: a new PkPackageList object.
- **/
-PkPackageList *
-pk_package_list_new (void)
-{
-	PkPackageList *plist;
-	plist = g_object_new (PK_TYPE_PACKAGE_LIST, NULL);
-	return PK_PACKAGE_LIST (plist);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_package_list_test (EggTest *test)
-{
-	PkPackageList *plist;
-	gchar *text;
-	gboolean ret;
-	const PkPackageObj *r0;
-	const PkPackageObj *r1;
-	const PkPackageObj *r2;
-	gchar *r0_text;
-	gchar *r1_text;
-	gchar *r2_text;
-	PkPackageId *id;
-	guint size;
-	gchar **argv;
-
-	if (!egg_test_start (test, "PkPackageList"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "create then unref");
-	plist = pk_package_list_new ();
-	g_object_unref (plist);
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "create");
-	plist = pk_package_list_new ();
-	egg_test_assert (test, plist != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "make sure size is zero");
-	size = pk_package_list_get_size (plist);
-	if (size == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "size: %i", size);
-
-	/************************************************************/
-	egg_test_title (test, "add entry");
-	id = pk_package_id_new_from_string ("gnome;1.23;i386;data");
-	ret = pk_package_list_add (plist, PK_INFO_ENUM_INSTALLED, id, "GNOME!");
-	pk_package_id_free (id);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "make sure size is one");
-	size = pk_package_list_get_size (plist);
-	if (size == 1)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "size: %i", size);
-
-	/************************************************************/
-	egg_test_title (test, "make sure argv is correct");
-	argv = pk_package_list_to_strv (plist);
-	if (argv != NULL &&
-	    g_strcmp0 (argv[0], "gnome;1.23;i386;data") == 0 &&
-	    argv[1] == NULL)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "list: %s", argv[0]);
-	g_strfreev (argv);
-
-	/************************************************************/
-	egg_test_title (test, "check not exists");
-	id = pk_package_id_new_from_string ("gnome;1.23;i386;data");
-	ret = pk_package_list_contains (plist, "liferea;1.23;i386;data");
-	pk_package_id_free (id);
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "check exists");
-	ret = pk_package_list_contains (plist, "gnome;1.23;i386;data");
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "check exists different data");
-	ret = pk_package_list_contains (plist, "gnome;1.23;i386;fedora");
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "add entry");
-	text = pk_obj_list_to_string (PK_OBJ_LIST(plist));
-	if (g_strcmp0 (text, "installed\tgnome;1.23;i386;data\tGNOME!") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "get string incorrect '%s'", text);
-	g_free (text);
-
-	/************************************************************/
-	egg_test_title (test, "add entry with NULL summary");
-	id = pk_package_id_new_from_string ("nosummary;1.23;i386;data");
-	ret = pk_package_list_add (plist, PK_INFO_ENUM_INSTALLED, id, NULL);
-	pk_package_id_free (id);
-	if (ret)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "could not add NULL summary");
-	g_object_unref (plist);
-
-	plist = pk_package_list_new ();
-
-	/************************************************************/
-	egg_test_title (test, "add entries");
-	id = pk_package_id_new_from_string ("def;1.23;i386;data");
-	ret = pk_package_list_add (plist, PK_INFO_ENUM_SECURITY, id, "zed");
-	pk_package_id_free (id);
-	if (!ret)
-		egg_test_failed (test, NULL);
-	id = pk_package_id_new_from_string ("abc;1.23;i386;data");
-	ret = pk_package_list_add (plist, PK_INFO_ENUM_BUGFIX, id, "fed");
-	pk_package_id_free (id);
-	if (!ret)
-		egg_test_failed (test, NULL);
-	id = pk_package_id_new_from_string ("ghi;1.23;i386;data");
-	ret = pk_package_list_add (plist, PK_INFO_ENUM_ENHANCEMENT, id, "aed");
-	pk_package_id_free (id);
-	if (!ret)
-		egg_test_failed (test, NULL);
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "sort by package_id");
-	ret = pk_package_list_sort (plist);
-	r0 = pk_package_list_get_obj (plist, 0);
-	r1 = pk_package_list_get_obj (plist, 1);
-	r2 = pk_package_list_get_obj (plist, 2);
-	r0_text = pk_package_id_to_string (r0->id);
-	r1_text = pk_package_id_to_string (r1->id);
-	r2_text = pk_package_id_to_string (r2->id);
-	if (g_strcmp0 (r0_text, "abc;1.23;i386;data") == 0 &&
-	    g_strcmp0 (r1_text, "def;1.23;i386;data") == 0 &&
-	    g_strcmp0 (r2_text, "ghi;1.23;i386;data") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "could not sort: %s,%s,%s", r0_text, r1_text, r2_text);
-	g_free (r0_text);
-	g_free (r1_text);
-	g_free (r2_text);
-
-	/************************************************************/
-	egg_test_title (test, "sort by summary");
-	ret = pk_package_list_sort_summary (plist);
-	r0 = pk_package_list_get_obj (plist, 0);
-	r1 = pk_package_list_get_obj (plist, 1);
-	r2 = pk_package_list_get_obj (plist, 2);
-	if (g_strcmp0 (r0->summary, "aed") == 0 &&
-	    g_strcmp0 (r1->summary, "fed") == 0 &&
-	    g_strcmp0 (r2->summary, "zed") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "could not sort: %s,%s,%s", r0->summary, r1->summary, r2->summary);
-
-	/************************************************************/
-	egg_test_title (test, "sort by severity");
-	ret = pk_package_list_sort_info (plist);
-	r0 = pk_package_list_get_obj (plist, 0);
-	r1 = pk_package_list_get_obj (plist, 1);
-	r2 = pk_package_list_get_obj (plist, 2);
-	if (r0->info == PK_INFO_ENUM_SECURITY &&
-	    r1->info == PK_INFO_ENUM_BUGFIX &&
-	    r2->info == PK_INFO_ENUM_ENHANCEMENT)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "could not sort: %s,%s,%s", r0->summary, r1->summary, r2->summary);
-
-	g_object_unref (plist);
-
-	plist = pk_package_list_new ();
-	id = pk_package_id_new_from_string ("def;1.23;i386;data");
-	pk_package_list_add (plist, PK_INFO_ENUM_SECURITY, id, "zed");
-	pk_package_id_free (id);
-	id = pk_package_id_new_from_string ("abc;1.23;i386;data");
-	pk_package_list_add (plist, PK_INFO_ENUM_SECURITY, id, "fed");
-	pk_package_id_free (id);
-	id = pk_package_id_new_from_string ("ghi;1.23;i386;data");
-	pk_package_list_add (plist, PK_INFO_ENUM_BUGFIX, id, "aed");
-	pk_package_id_free (id);
-	id = pk_package_id_new_from_string ("jkl;1.23;i386;data");
-	pk_package_list_add (plist, PK_INFO_ENUM_BUGFIX, id, "med");
-	pk_package_id_free (id);
-
-	/************************************************************/
-	egg_test_title (test, "sort by package_id then priority (should not mess up previous sort)");
-	pk_package_list_sort (plist);
-	pk_package_list_sort_info (plist);
-	r0 = pk_package_list_get_obj (plist, 0);
-	r1 = pk_package_list_get_obj (plist, 1);
-	r2 = pk_package_list_get_obj (plist, 2);
-	r0_text = pk_package_id_to_string (r0->id);
-	r1_text = pk_package_id_to_string (r1->id);
-	r2_text = pk_package_id_to_string (r2->id);
-	if (g_strcmp0 (r0_text, "abc;1.23;i386;data") == 0 &&
-	    g_strcmp0 (r1_text, "def;1.23;i386;data") == 0 &&
-	    g_strcmp0 (r2_text, "ghi;1.23;i386;data") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "could not sort: %s,%s,%s", r0_text, r1_text, r2_text);
-	g_free (r0_text);
-	g_free (r1_text);
-	g_free (r2_text);
-
-	g_object_unref (plist);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-package-list.h b/lib/packagekit-glib/pk-package-list.h
deleted file mode 100644
index f91acab..0000000
--- a/lib/packagekit-glib/pk-package-list.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_PACKAGE_LIST_H
-#define __PK_PACKAGE_LIST_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-package-obj.h>
-#include <packagekit-glib/pk-obj-list.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_PACKAGE_LIST		(pk_package_list_get_type ())
-#define PK_PACKAGE_LIST(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_PACKAGE_LIST, PkPackageList))
-#define PK_PACKAGE_LIST_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_PACKAGE_LIST, PkPackageListClass))
-#define PK_IS_PACKAGE_LIST(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_PACKAGE_LIST))
-#define PK_IS_PACKAGE_LIST_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_PACKAGE_LIST))
-#define PK_PACKAGE_LIST_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_PACKAGE_LIST, PkPackageListClass))
-
-typedef struct _PkPackageListPrivate	PkPackageListPrivate;
-typedef struct _PkPackageList		PkPackageList;
-typedef struct _PkPackageListClass	PkPackageListClass;
-
-struct _PkPackageList
-{
-	 PkObjList		 parent;
-	 PkPackageListPrivate	*priv;
-};
-
-struct _PkPackageListClass
-{
-	PkObjListClass		parent_class;
-};
-
-GType			 pk_package_list_get_type	(void);
-PkPackageList		*pk_package_list_new		(void);
-gboolean		 pk_package_list_add		(PkPackageList		*plist,
-							 PkInfoEnum		 info,
-							 const PkPackageId	*ident,
-							 const gchar		*summary);
-gboolean		 pk_package_list_contains	(const PkPackageList	*plist,
-							 const gchar		*package_id);
-gboolean		 pk_package_list_remove		(PkPackageList		*plist,
-							 const gchar		*package_id);
-gchar			**pk_package_list_to_strv	(const PkPackageList	*plist)
-							 G_GNUC_WARN_UNUSED_RESULT;
-guint			 pk_package_list_get_size	(const PkPackageList	*plist);
-gboolean		 pk_package_list_sort		(PkPackageList		*plist);
-gboolean		 pk_package_list_sort_info	(PkPackageList		*plist);
-gboolean		 pk_package_list_sort_summary	(PkPackageList		*plist);
-const PkPackageObj	*pk_package_list_get_obj	(const PkPackageList	*plist,
-							 guint			 item);
-gboolean		 pk_package_list_set_fuzzy_arch	(PkPackageList		*plist,
-							 gboolean		 fuzzy_arch);
-
-G_END_DECLS
-
-#endif /* __PK_PACKAGE_LIST_H */
-
diff --git a/lib/packagekit-glib/pk-package-obj.c b/lib/packagekit-glib/pk-package-obj.c
deleted file mode 100644
index 3a963e8..0000000
--- a/lib/packagekit-glib/pk-package-obj.c
+++ /dev/null
@@ -1,297 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-package-obj
- * @short_description: A cached Package structure
- *
- * These provide a way to query and store a single package.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <time.h>
-#include <errno.h>
-
-#include <string.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <glib/gi18n.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-package-obj.h>
-
-/**
- * pk_package_obj_new:
- **/
-PkPackageObj *
-pk_package_obj_new (PkInfoEnum info, const PkPackageId *id, const gchar *summary)
-{
-	PkPackageObj *obj;
-
-	g_return_val_if_fail (id != NULL, NULL);
-
-	obj = g_new0 (PkPackageObj, 1);
-	obj->info = info;
-	obj->id = pk_package_id_copy (id);
-	obj->summary = g_strdup (summary);
-	return obj;
-}
-
-/**
- * pk_package_obj_free:
- **/
-gboolean
-pk_package_obj_free (PkPackageObj *obj)
-{
-	if (obj == NULL)
-		return FALSE;
-	pk_package_id_free (obj->id);
-	g_free (obj->summary);
-	g_free (obj);
-	return TRUE;
-}
-
-/**
- * pk_package_obj_equal:
- *
- * Only compares the package_id's and the info enum
- **/
-gboolean
-pk_package_obj_equal (const PkPackageObj *obj1, const PkPackageObj *obj2)
-{
-	if (obj1 == NULL || obj2 == NULL)
-		return FALSE;
-	return (obj1->info == obj2->info && pk_package_id_equal (obj1->id, obj2->id));
-}
-
-/**
- * pk_package_obj_equal_fuzzy_arch:
- *
- * Only compares the package_id's and the info enum, being a bit fuzzy on the arch
- **/
-gboolean
-pk_package_obj_equal_fuzzy_arch (const PkPackageObj *obj1, const PkPackageObj *obj2)
-{
-	if (obj1 == NULL || obj2 == NULL)
-		return FALSE;
-	return (obj1->info == obj2->info && pk_package_id_equal_fuzzy_arch (obj1->id, obj2->id));
-}
-
-/**
- * pk_package_obj_copy:
- *
- * Copy a PkPackageObj
- **/
-PkPackageObj *
-pk_package_obj_copy (const PkPackageObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_package_obj_new (obj->info, obj->id, obj->summary);
-}
-
-/**
- * pk_package_obj_to_string:
- *
- * Convert a PkPackageObj to a string
- **/
-gchar *
-pk_package_obj_to_string (const PkPackageObj *obj)
-{
-	gchar *text;
-	gchar *package_id;
-
-	g_return_val_if_fail (obj != NULL, NULL);
-
-	package_id = pk_package_id_to_string (obj->id);
-	text = g_strdup_printf ("%s\t%s\t%s",
-				pk_info_enum_to_text (obj->info),
-				package_id, obj->summary);
-	g_free (package_id);
-	return text;
-}
-
-/**
- * pk_package_obj_from_string:
- *
- * Convert a PkPackageObj from a string
- **/
-PkPackageObj *
-pk_package_obj_from_string (const gchar *text)
-{
-	gchar **sections;
-	PkPackageObj *obj = NULL;
-	PkPackageId *id = NULL;
-	PkInfoEnum info;
-
-	g_return_val_if_fail (text != NULL, NULL);
-
-	sections = g_strsplit (text, "\t", 3);
-	if (sections == NULL) {
-		egg_warning ("invalid input: %s", text);
-		goto out;
-	}
-
-	info = pk_info_enum_from_text (sections[0]);
-	if (info == PK_INFO_ENUM_UNKNOWN) {
-		egg_warning ("invalid info for string %s", text);
-		goto out;
-	}
-	id = pk_package_id_new_from_string (sections[1]);
-	if (id == NULL) {
-		egg_warning ("invalid package_id for string %s", text);
-		goto out;
-	}
-	obj = pk_package_obj_new (info, id, sections[2]);
-out:
-	pk_package_id_free (id);
-	g_strfreev (sections);
-	return obj;
-}
-
-/**
- * pk_package_obj_get_info:
- **/
-PkInfoEnum
-pk_package_obj_get_info	(const PkPackageObj *obj)
-{
-	return obj->info;
-}
-
-/**
- * pk_package_obj_get_id:
- **/
-const PkPackageId *
-pk_package_obj_get_id (const PkPackageObj *obj)
-{
-	return obj->id;
-}
-/**
- * pk_package_obj_get_summary:
- **/
-const gchar *
-pk_package_obj_get_summary (const PkPackageObj *obj)
-{
-	return obj->summary;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_package_obj_test (EggTest *test)
-{
-	PkPackageObj *obj1;
-	PkPackageObj *obj2;
-	PkPackageObj *obj3;
-	gboolean ret;
-	PkPackageId *id;
-	gchar *text;
-
-	if (!egg_test_start (test, "PkPackageObj"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "add entry");
-	id = pk_package_id_new_from_string ("gnome;1.23;i386;data");
-	obj1 = pk_package_obj_new (PK_INFO_ENUM_INSTALLED, id, "GNOME!");
-	egg_test_assert (test, obj1 != NULL);
-	pk_package_id_free (id);
-
-	/************************************************************/
-	egg_test_title (test, "add entry");
-	id = pk_package_id_new_from_string ("gnome;1.23;i386;data");
-	obj2 = pk_package_obj_new (PK_INFO_ENUM_INSTALLED, id, "GNOME foo!");
-	egg_test_assert (test, obj2 != NULL);
-	pk_package_id_free (id);
-
-	/************************************************************/
-	egg_test_title (test, "copy entry");
-	obj3 = pk_package_obj_copy (obj2);
-	egg_test_assert (test, obj3 != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check equal");
-	ret = pk_package_obj_equal (obj1, obj3);
-	egg_test_assert (test, ret);
-
-	pk_package_obj_free (obj2);
-	pk_package_obj_free (obj3);
-
-	/************************************************************/
-	egg_test_title (test, "add entry");
-	id = pk_package_id_new_from_string ("gnome;1.23;i586;data");
-	obj2 = pk_package_obj_new (PK_INFO_ENUM_INSTALLED, id, "GNOME doo!");
-	egg_test_assert (test, obj2 != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "check !equal");
-	ret = pk_package_obj_equal (obj1, obj2);
-	egg_test_assert (test, !ret);
-
-	/************************************************************/
-	egg_test_title (test, "check equal when fuzzy");
-	ret = pk_package_obj_equal_fuzzy_arch (obj1, obj2);
-	egg_test_assert (test, ret);
-
-	/************************************************************/
-	egg_test_title (test, "check to string");
-	text = pk_package_obj_to_string (obj1);
-	if (g_strcmp0 (text, "installed\tgnome;1.23;i386;data\tGNOME!") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got %s", text);
-
-	/************************************************************/
-	egg_test_title (test, "check from string");
-	obj3 = pk_package_obj_from_string (text);
-	if (obj3->info == PK_INFO_ENUM_INSTALLED &&
-	    pk_package_id_equal (obj3->id, obj1->id) &&
-	    g_strcmp0 (obj3->summary, "GNOME!") == 0)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "got incorrect data %s,%s,%s",
-			      pk_info_enum_to_text (obj3->info),
-			      pk_package_id_to_string (obj3->id),
-			      obj3->summary);
-
-	pk_package_id_free (id);
-	pk_package_obj_free (obj1);
-	pk_package_obj_free (obj2);
-	pk_package_obj_free (obj3);
-	g_free (text);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-package-obj.h b/lib/packagekit-glib/pk-package-obj.h
deleted file mode 100644
index f2b619b..0000000
--- a/lib/packagekit-glib/pk-package-obj.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_PACKAGE_OBJ_H
-#define __PK_PACKAGE_OBJ_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-package-id.h>
-
-/**
- * PkPackageObj:
- *
- * A cached store for the complete Package object
- */
-typedef struct {
-	PkInfoEnum		 info;
-	PkPackageId		*id;
-	gchar			*summary;
-} PkPackageObj;
-
-PkPackageObj	*pk_package_obj_new			(PkInfoEnum		 info,
-							 const PkPackageId	*id,
-							 const gchar		*summary);
-gboolean	 pk_package_obj_free			(PkPackageObj		*obj);
-PkPackageObj	*pk_package_obj_copy			(const PkPackageObj	*obj);
-gboolean	 pk_package_obj_equal			(const PkPackageObj	*obj1,
-							 const PkPackageObj	*obj2);
-gboolean	 pk_package_obj_equal_fuzzy_arch	(const PkPackageObj	*obj1,
-							 const PkPackageObj	*obj2);
-gchar		*pk_package_obj_to_string		(const PkPackageObj	*obj);
-PkPackageObj	*pk_package_obj_from_string		(const gchar		*text);
-PkInfoEnum	 pk_package_obj_get_info		(const PkPackageObj	*obj);
-const PkPackageId	*pk_package_obj_get_id		(const PkPackageObj	*obj);
-const gchar		*pk_package_obj_get_summary	(const PkPackageObj	*obj);
-
-#endif /* __PK_PACKAGE_OBJ_H */
-
diff --git a/lib/packagekit-glib/pk-require-restart-obj.c b/lib/packagekit-glib/pk-require-restart-obj.c
deleted file mode 100644
index 6211ff9..0000000
--- a/lib/packagekit-glib/pk-require-restart-obj.c
+++ /dev/null
@@ -1,138 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2009 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-require-restart-obj
- * @short_description: Functionality to create a require restart struct
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-require-restart-obj.h>
-
-#include "egg-debug.h"
-
-/**
- * pk_require_restart_obj_new:
- *
- * Creates a new #PkRequireRestartObj object with default values
- *
- * Return value: a new #PkRequireRestartObj object
- **/
-PkRequireRestartObj *
-pk_require_restart_obj_new (void)
-{
-	PkRequireRestartObj *obj;
-	obj = g_new0 (PkRequireRestartObj, 1);
-	obj->restart = PK_RESTART_ENUM_UNKNOWN;
-	obj->id = NULL;
-	return obj;
-}
-
-/**
- * pk_require_restart_obj_new_from_data:
- *
- * Creates a new #PkRequireRestartObj object with values.
- *
- * Return value: a new #PkRequireRestartObj object
- **/
-PkRequireRestartObj *
-pk_require_restart_obj_new_from_data (PkRestartEnum restart, const PkPackageId *id)
-{
-	PkRequireRestartObj *obj = NULL;
-
-	/* create new object */
-	obj = pk_require_restart_obj_new ();
-	obj->restart = restart;
-	obj->id = pk_package_id_copy (id);
-	return obj;
-}
-
-/**
- * pk_require_restart_obj_copy:
- *
- * Return value: a new #PkRequireRestartObj object
- **/
-PkRequireRestartObj *
-pk_require_restart_obj_copy (const PkRequireRestartObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_require_restart_obj_new_from_data (obj->restart, obj->id);
-}
-
-/**
- * pk_require_restart_obj_free:
- * @obj: the #PkRequireRestartObj object
- *
- * Return value: %TRUE if the #PkRequireRestartObj object was freed.
- **/
-gboolean
-pk_require_restart_obj_free (PkRequireRestartObj *obj)
-{
-	if (obj == NULL) {
-		return FALSE;
-	}
-	pk_package_id_free (obj->id);
-	g_free (obj);
-	return TRUE;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-egg_test_require_restart (EggTest *test)
-{
-	gboolean ret;
-	PkRequireRestartObj *obj;
-
-	if (!egg_test_start (test, "PkRequireRestartObj"))
-		return;
-
-	/************************************************************
-	 ****************          IDENT           ******************
-	 ************************************************************/
-
-	/************************************************************/
-	egg_test_title (test, "get an upgrade object");
-	obj = pk_require_restart_obj_new ();
-	egg_test_assert (test, obj != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test upgrade");
-	ret = pk_require_restart_obj_free (obj);
-	egg_test_assert (test, ret);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-require-restart-obj.h b/lib/packagekit-glib/pk-require-restart-obj.h
deleted file mode 100644
index ac07386..0000000
--- a/lib/packagekit-glib/pk-require-restart-obj.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_REQUIRE_RESTART_OBJ_H
-#define __PK_REQUIRE_RESTART_OBJ_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-package-id.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkRequireRestartObj:
- *
- * Cached object to represent details about the require_restart.
- **/
-typedef struct
-{
-	PkRestartEnum			 restart;
-	PkPackageId			*id;
-} PkRequireRestartObj;
-
-PkRequireRestartObj	*pk_require_restart_obj_new		(void);
-PkRequireRestartObj	*pk_require_restart_obj_copy		(const PkRequireRestartObj *obj);
-PkRequireRestartObj	*pk_require_restart_obj_new_from_data	(PkRestartEnum		 restart,
-								 const PkPackageId	*id);
-gboolean		 pk_require_restart_obj_free		(PkRequireRestartObj	*obj);
-
-G_END_DECLS
-
-#endif /* __PK_REQUIRE_RESTART_OBJ_H */
diff --git a/lib/packagekit-glib/pk-self-test.c b/lib/packagekit-glib/pk-self-test.c
deleted file mode 100644
index a82e790..0000000
--- a/lib/packagekit-glib/pk-self-test.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#include "config.h"
-
-#include <glib.h>
-#include <glib-object.h>
-#include "egg-test.h"
-#include "egg-debug.h"
-
-/* prototypes */
-void egg_string_test (EggTest *test);
-void pk_obj_list_test (EggTest *test);
-void pk_package_id_test (EggTest *test);
-void pk_package_ids_test (EggTest *test);
-void pk_package_obj_test (EggTest *test);
-void pk_package_list_test (EggTest *test);
-void pk_enum_test (EggTest *test);
-void pk_bitfield_test (EggTest *test);
-void pk_common_test (EggTest *test);
-void pk_enum_test_list (EggTest *test);
-void pk_desktop_test (EggTest *test);
-void pk_client_test (EggTest *test);
-void pk_client_pool_test (EggTest *test);
-void pk_control_test (EggTest *test);
-void pk_task_list_test (EggTest *test);
-void pk_catalog_test (EggTest *test);
-void pk_update_detail_test (EggTest *test);
-void pk_details_test (EggTest *test);
-void pk_service_pack_test (EggTest *test);
-
-int
-main (int argc, char **argv)
-{
-	EggTest *test;
-
-	g_type_init ();
-	test = egg_test_init ();
-	egg_debug_init (&argc, &argv);
-
-	/* tests go here */
-	egg_string_test (test);
-	pk_client_pool_test (test);
-	pk_obj_list_test (test);
-	pk_common_test (test);
-	pk_package_id_test (test);
-	pk_package_ids_test (test);
-	pk_package_obj_test (test);
-	pk_package_list_test (test);
-	pk_enum_test (test);
-	pk_bitfield_test (test);
-	pk_client_test (test);
-	pk_catalog_test (test);
-	pk_control_test (test);
-	pk_task_list_test (test);
-	pk_update_detail_test (test);
-	pk_details_test (test);
-	pk_service_pack_test (test);
-//	pk_desktop_test (test);
-
-	return (egg_test_finish (test));
-}
-
diff --git a/lib/packagekit-glib/pk-service-pack.c b/lib/packagekit-glib/pk-service-pack.c
deleted file mode 100644
index 7156f94..0000000
--- a/lib/packagekit-glib/pk-service-pack.c
+++ /dev/null
@@ -1,1173 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- * Copyright (C) 2008 Shishir Goel <crazyontheedge at gmail.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#  include "config.h"
-#endif
-
-#include <fcntl.h>
-
-#ifdef HAVE_ARCHIVE_H
-#include <archive.h>
-#include <archive_entry.h>
-#endif /* HAVE_ARCHIVE_H */
-
-#include <glib.h>
-#include <glib/gstdio.h>
-
-#include <packagekit-glib/pk-obj-list.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-package-ids.h>
-#include <packagekit-glib/pk-service-pack.h>
-
-#include "egg-debug.h"
-#include "egg-string.h"
-
-#define PK_SERVICE_PACK_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_SERVICE_PACK, PkServicePackPrivate))
-
-typedef enum {
-	PK_SERVICE_PACK_TYPE_UPDATE,
-	PK_SERVICE_PACK_TYPE_INSTALL,
-	PK_SERVICE_PACK_TYPE_UNKNOWN
-} PkServicePackType;
-
-struct PkServicePackPrivate
-{
-	PkPackageList		*exclude_list;
-	gchar			*filename;
-	gchar			*directory;
-	PkClient		*client;
-	PkServicePackType	 type;
-};
-
-typedef enum {
-	PK_SERVICE_PACK_PACKAGE,
-	PK_SERVICE_PACK_PERCENTAGE,
-	PK_SERVICE_PACK_STATUS,
-	PK_SERVICE_PACK_LAST_SIGNAL
-} PkSignals;
-
-static guint signals [PK_SERVICE_PACK_LAST_SIGNAL] = { 0 };
-G_DEFINE_TYPE (PkServicePack, pk_service_pack, G_TYPE_OBJECT)
-
-/**
- * pk_service_pack_error_quark:
- *
- * Return value: Our personal error quark.
- **/
-GQuark
-pk_service_pack_error_quark (void)
-{
-	static GQuark quark = 0;
-	if (!quark)
-		quark = g_quark_from_static_string ("pk_service_pack_error");
-	return quark;
-}
-
-/**
- * pk_service_pack_error_get_type:
- **/
-#define ENUM_ENTRY(NAME, DESC) { NAME, "" #NAME "", DESC }
-GType
-pk_service_pack_error_get_type (void)
-{
-	static GType etype = 0;
-
-	if (etype == 0) {
-		static const GEnumValue values[] =
-		{
-			ENUM_ENTRY (PK_SERVICE_PACK_ERROR_FAILED_SETUP, "FailedSetup"),
-			ENUM_ENTRY (PK_SERVICE_PACK_ERROR_FAILED_DOWNLOAD, "FailedDownload"),
-			ENUM_ENTRY (PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION, "FailedExtraction"),
-			ENUM_ENTRY (PK_SERVICE_PACK_ERROR_FAILED_CREATE, "FailedCreate"),
-			ENUM_ENTRY (PK_SERVICE_PACK_ERROR_NOTHING_TO_DO, "NothingToDo"),
-			ENUM_ENTRY (PK_SERVICE_PACK_ERROR_NOT_COMPATIBLE, "NotCompatible"),
-			{ 0, NULL, NULL }
-		};
-		etype = g_enum_register_static ("PkServicePackError", values);
-	}
-	return etype;
-}
-
-/**
- * pk_service_pack_check_metadata_file:
- **/
-static gboolean
-pk_service_pack_check_metadata_file (const gchar *full_path, GError **error)
-{
-	GKeyFile *file;
-	gboolean ret;
-	GError *error_local = NULL;
-	gchar *type = NULL;
-	gchar *distro_id = NULL;
-	gchar *distro_id_us = NULL;
-
-	/* load the file */
-	file = g_key_file_new ();
-	ret = g_key_file_load_from_file (file, full_path, G_KEY_FILE_NONE, &error_local);
-	if (!ret) {
-		*error = g_error_new (1, 0, "failed to load file: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* read the value */
-	distro_id = g_key_file_get_string (file, PK_SERVICE_PACK_GROUP_NAME, "distro_id", &error_local);
-	if (distro_id == NULL) {
-		*error = g_error_new (1, 0, "failed to get value: %s", error_local->message);
-		g_error_free (error_local);
-		ret = FALSE;
-		goto out;
-	}
-
-	/* read the value */
-	type = g_key_file_get_string (file, PK_SERVICE_PACK_GROUP_NAME, "type", &error_local);
-	if (type == NULL) {
-		*error = g_error_new (1, 0, "failed to get type: %s", error_local->message);
-		g_error_free (error_local);
-		ret = FALSE;
-		goto out;
-	}
-
-	/* check the types we support */
-	if (g_strcmp0 (type, "update") != 0 && g_strcmp0 (type, "install") != 0) {
-		*error = g_error_new (1, 0, "does not have correct type key: %s", type);
-		ret = FALSE;
-		goto out;
-	}
-
-	/* get this system id */
-	distro_id_us = pk_get_distro_id ();
-
-	/* do we match? */
-	ret = (g_strcmp0 (distro_id_us, distro_id) == 0);
-	if (!ret)
-		*error = g_error_new (1, 0, "distro id did not match %s == %s", distro_id_us, distro_id);
-
-out:
-	g_key_file_free (file);
-	g_free (type);
-	g_free (distro_id);
-	g_free (distro_id_us);
-	return ret;
-}
-
-/**
- * pk_service_pack_extract:
- * @directory: the directory to unpack into
- * @error: a valid %GError
- *
- * Decompress a tar file
- *
- * Return value: %TRUE if the file was decompressed
- **/
-#ifdef HAVE_ARCHIVE_H
-static gboolean
-pk_service_pack_extract (const gchar *filename, const gchar *directory, GError **error)
-{
-	gboolean ret = FALSE;
-	struct archive *arch = NULL;
-	struct archive_entry *entry;
-	int r;
-	int retval;
-	gchar *retcwd;
-	gchar buf[PATH_MAX];
-
-	/* save the PWD as we chdir to extract */
-	retcwd = getcwd (buf, PATH_MAX);
-	if (retcwd == NULL) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to get cwd");
-		goto out;
-	}
-
-	/* we can only read tar achives */
-	arch = archive_read_new ();
-	archive_read_support_format_tar (arch);
-
-	/* open the tar file */
-	r = archive_read_open_file (arch, filename, 10240);
-	if (r) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION,
-				      "cannot open: %s", archive_error_string (arch));
-		goto out;
-	}
-
-	/* switch to our destination directory */
-	retval = chdir (directory);
-	if (retval != 0) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed chdir to %s", directory);
-		goto out;
-	}
-
-	/* decompress each file */
-	for (;;) {
-		r = archive_read_next_header (arch, &entry);
-		if (r == ARCHIVE_EOF)
-			break;
-		if (r != ARCHIVE_OK) {
-			*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION,
-					      "cannot read header: %s", archive_error_string (arch));
-			goto out;
-		}
-		r = archive_read_extract (arch, entry, 0);
-		if (r != ARCHIVE_OK) {
-			*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION,
-					      "cannot extract: %s", archive_error_string (arch));
-			goto out;
-		}
-	}
-
-	/* completed all okay */
-	ret = TRUE;
-out:
-	/* close the archive */
-	if (arch != NULL) {
-		archive_read_close (arch);
-		archive_read_finish (arch);
-	}
-
-	/* switch back to PWD */
-	retval = chdir (buf);
-	if (retval != 0)
-		egg_warning ("cannot chdir back!");
-
-	return ret;
-}
-#else /* HAVE_ARCHIVE_H */
-static gboolean
-pk_service_pack_extract (const gchar *filename, const gchar *directory, GError **error)
-{
-	*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION,
-			      "The service pack %s cannot be extracted as PackageKit was not built with libarchive support", filename);
-	return FALSE;
-}
-#endif /* HAVE_ARCHIVE_H */
-
-/**
- * pk_service_pack_get_random:
- **/
-static gchar *
-pk_service_pack_get_random (const gchar *prefix, guint length)
-{
-	guint32 n;
-	gchar *str;
-	guint i;
-	guint prefix_len;
-
-	/* make a string to hold both parts */
-	prefix_len = egg_strlen (prefix, 28);
-	str = g_strnfill (length + prefix_len, 'X');
-
-	/* copy over prefix */
-	for (i=0; i<prefix_len; i++)
-		str[i] = prefix[i];
-
-	/* use random string */
-	for (i=prefix_len; i<length+prefix_len; i++) {
-		n = g_random_int_range (97, 122);
-		str[i] = (gchar) n;
-	}
-	return str;
-}
-
-/**
- * pk_service_pack_create_temporary_directory:
- **/
-static gchar *
-pk_service_pack_create_temporary_directory (const gchar *prefix)
-{
-	gboolean ret;
-	gchar *random;
-	gchar *directory = NULL;
-
-	/* ensure path does not already exist */
-	do {
-		/* last iter results, or NULL */
-		g_free (directory);
-
-		/* get a random path */
-		random = pk_service_pack_get_random (prefix, 8);
-
-		/* ITS4: ignore, the user has no control over the daemon envp  */
-		directory = g_build_filename (g_get_tmp_dir (), random, NULL);
-		g_free (random);
-		ret = g_file_test (directory, G_FILE_TEST_IS_DIR);
-	} while (ret);
-
-	/* create so only user (root) has rwx access */
-	g_mkdir (directory, 0700);
-
-	return directory;
-}
-
-/**
- * pk_service_pack_check_valid:
- * @pack: a valid #PkServicePack instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Checks to see if a service pack file is valid, and usable with this system.
- *
- * Return value: %TRUE if the service pack is valid
- **/
-gboolean
-pk_service_pack_check_valid (PkServicePack *pack, GError **error)
-{
-	gboolean ret = TRUE;
-	gchar *directory = NULL;
-	gchar *metafile = NULL;
-	GDir *dir = NULL;
-	const gchar *filename_entry;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (pack->priv->filename != NULL, FALSE);
-
-	/* create a random directory */
-	directory = pk_service_pack_create_temporary_directory ("PackageKit-");
-	ret = pk_service_pack_extract (pack->priv->filename, directory, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, error_local->code,
-				      "failed to check %s: %s", pack->priv->filename, error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* get the files */
-	dir = g_dir_open (directory, 0, NULL);
-	if (dir == NULL) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to get directory for %s", directory);
-		ret = FALSE;
-		goto out;
-	}
-
-	/* find the file, and check the metadata */
-	while ((filename_entry = g_dir_read_name (dir))) {
-		metafile = g_build_filename (directory, filename_entry, NULL);
-		if (g_strcmp0 (filename_entry, "metadata.conf") == 0) {
-			ret = pk_service_pack_check_metadata_file (metafile, &error_local);
-			if (!ret) {
-				*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_NOT_COMPATIBLE,
-						      "Service Pack %s not compatible with your distro: %s", pack->priv->filename, error_local->message);
-				g_error_free (error_local);
-				ret = FALSE;
-				goto out;
-			}
-		}
-		g_free (metafile);
-	}
-out:
-	g_rmdir (directory);
-	g_free (directory);
-	if (dir != NULL)
-		g_dir_close (dir);
-	return ret;
-}
-
-/**
- * pk_service_pack_status_changed:
- **/
-static void
-pk_service_pack_status_changed (PkServicePack *pack, PkServicePackStatus status)
-{
-	egg_debug ("emit status %i", status);
-	g_signal_emit (pack, signals [PK_SERVICE_PACK_STATUS], 0, status);
-}
-
-/**
- * pk_service_pack_set_filename:
- * @pack: a valid #PkServicePack instance
- * @filename: the filename to use
- *
- * Sets the filename to use when reading or writing a service pack
- *
- * Return value: %TRUE if the name was set
- **/
-gboolean
-pk_service_pack_set_filename (PkServicePack *pack, const gchar *filename)
-{
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (filename != NULL, FALSE);
-	g_free (pack->priv->filename);
-	pack->priv->filename = g_strdup (filename);
-	return TRUE;
-}
-
-/**
- * pk_service_pack_set_temp_directory:
- * @pack: a valid #PkServicePack instance
- * @directory: the directory to use, or %NULL to use the default
- *
- * Sets the directory to use when decompressing the service pack
- *
- * Return value: %TRUE if the directory was set
- **/
-gboolean
-pk_service_pack_set_temp_directory (PkServicePack *pack, const gchar *directory)
-{
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_free (pack->priv->directory);
-
-	/* use default */
-	if (directory == NULL)
-		directory = pk_service_pack_create_temporary_directory ("PackageKit-");
-
-	pack->priv->directory = g_strdup (directory);
-	return TRUE;
-}
-
-/**
- * pk_service_pack_set_exclude_list:
- * @pack: a valid #PkServicePack instance
- * @list: the list of packages to exclude
- *
- * Sets the list of packages to exclude from the dependency downloads.
- *
- * Return value: %TRUE if the list was set
- **/
-gboolean
-pk_service_pack_set_exclude_list (PkServicePack *pack, PkPackageList *list)
-{
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (list != NULL, FALSE);
-	if (pack->priv->exclude_list != NULL)
-		g_object_unref (pack->priv->exclude_list);
-	pack->priv->exclude_list = g_object_ref (list);
-	return TRUE;
-}
-
-/**
- * pk_service_pack_download_package_ids:
- **/
-static gboolean
-pk_service_pack_download_package_ids (PkServicePack *pack, gchar **package_ids, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->directory != NULL, FALSE);
-
-	egg_debug ("download+ %s", package_ids[0]);
-	ret = pk_client_reset (pack->priv->client, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to reset: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-	ret = pk_client_download_packages (pack->priv->client, package_ids, pack->priv->directory, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_DOWNLOAD,
-				      "failed to download: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-out:
-	return ret;
-}
-
-/**
- * pk_service_pack_exclude_packages:
- **/
-static gboolean
-pk_service_pack_exclude_packages (PkServicePack *pack, PkPackageList *list)
-{
-	guint i;
-	guint length;
-	gboolean found;
-	const PkPackageObj *obj;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (pack->priv->exclude_list != NULL, FALSE);
-
-	/* do not just download everything, uselessly */
-	length = pk_package_list_get_size (pack->priv->exclude_list);
-	for (i=0; i<length; i++) {
-		obj = pk_package_list_get_obj (pack->priv->exclude_list, i);
-		/* will just ignore if the obj is not there */
-		found = pk_obj_list_remove (PK_OBJ_LIST(list), obj);
-		if (found)
-			egg_debug ("removed %s", obj->id->name);
-	}
-	return TRUE;
-}
-
-#ifdef HAVE_ARCHIVE_H
-/**
- * pk_service_pack_create_metadata_file:
- **/
-static gboolean
-pk_service_pack_create_metadata_file (PkServicePack *pack, const gchar *filename)
-{
-	gboolean ret = FALSE;
-	gchar *distro_id = NULL;
-	gchar *iso_time = NULL;
-	GError *error = NULL;
-	GKeyFile *file = NULL;
-	gchar *data = NULL;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (filename != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->type != PK_SERVICE_PACK_TYPE_UNKNOWN, FALSE);
-
-	file = g_key_file_new ();
-
-	/* get needed data */
-	distro_id = pk_get_distro_id ();
-	if (distro_id == NULL)
-		goto out;
-	iso_time = pk_iso8601_present ();
-	if (iso_time == NULL)
-		goto out;
-
-	g_key_file_set_string (file, PK_SERVICE_PACK_GROUP_NAME, "distro_id", distro_id);
-	g_key_file_set_string (file, PK_SERVICE_PACK_GROUP_NAME, "created", iso_time);
-
-	if (pack->priv->type == PK_SERVICE_PACK_TYPE_INSTALL)
-		g_key_file_set_string (file, PK_SERVICE_PACK_GROUP_NAME, "type", "install");
-	else if (pack->priv->type == PK_SERVICE_PACK_TYPE_UPDATE)
-		g_key_file_set_string (file, PK_SERVICE_PACK_GROUP_NAME, "type", "update");
-
-	/* convert to text */
-	data = g_key_file_to_data (file, NULL, &error);
-	if (data == NULL) {
-		egg_warning ("failed to convert to text: %s", error->message);
-		g_error_free (error);
-		goto out;
-	}
-
-	/* save contents */
-	ret = g_file_set_contents (filename, data, -1, &error);
-	if (!ret) {
-		egg_warning ("failed to save file: %s", error->message);
-		g_error_free (error);
-		goto out;
-	}
-
-out:
-	g_key_file_free (file);
-	g_free (data);
-	g_free (distro_id);
-	g_free (iso_time);
-	return ret;
-}
-
-/**
- * pk_service_pack_archive_add_file:
- **/
-static gboolean
-pk_service_pack_archive_add_file (struct archive *arch, const gchar *filename, GError **error)
-{
-	int retval;
-	int len;
-	int fd = -1;
-	int wrote;
-	gboolean ret = FALSE;
-	gchar *filename_basename = NULL;
-	struct archive_entry *entry = NULL;
-	struct stat st;
-	gchar buff[8192];
-
-	/* stat file */
-	retval = stat (filename, &st);
-	if (retval != 0) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_CREATE,
-				      "file not found %s", filename);
-		goto out;
-	}
-	egg_debug ("stat(%s), size=%lu bytes\n", filename, (glong) st.st_size);
-
-	/* create new entry */
-	entry = archive_entry_new ();
-	archive_entry_copy_stat (entry, &st);
-	filename_basename = g_path_get_basename (filename);
-	archive_entry_set_pathname (entry, filename_basename);
-
-	/* ._BIG FAT BUG_. We should not have to do this, as it should be
-	 * set from archive_entry_copy_stat() */
-	archive_entry_set_size (entry, st.st_size);
-
-	/* write header */
-	retval = archive_write_header (arch, entry);
-	if (retval != ARCHIVE_OK) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_CREATE,
-				      "failed to write header: %s\n", archive_error_string (arch));
-		goto out;
-	}
-
-	/* open file to copy */
-	fd = open (filename, O_RDONLY);
-	if (fd < 0) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_CREATE,
-				      "failed to get fd for %s", filename);
-		goto out;
-	}
-
-	/* ITS4: ignore, buffer statically preallocated  */
-	len = read (fd, buff, sizeof (buff));
-	/* write data to archive -- how come no convenience function? */
-	while (len > 0) {
-		wrote = archive_write_data (arch, buff, len);
-		if (wrote != len)
-			egg_warning("wrote %i instead of %i\n", wrote, len);
-		/* ITS4: ignore, buffer statically preallocated  */
-		len = read (fd, buff, sizeof (buff));
-	}
-	ret = TRUE;
-out:
-	if (fd >= 0)
-		close (fd);
-	if (entry != NULL)
-		archive_entry_free (entry);
-	g_free (filename_basename);
-	return ret;
-}
-
-/**
- * pk_service_pack_create_from_files:
- **/
-static gboolean
-pk_service_pack_create_from_files (PkServicePack *pack, GPtrArray *file_array, GError **error)
-{
-	struct archive *arch = NULL;
-	gboolean ret = FALSE;
-	const gchar *src;
-	guint i;
-	gchar *filename;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (file_array != NULL, FALSE);
-	g_return_val_if_fail (error != NULL, FALSE);
-
-	/* create a file with metadata in it */
-	filename = g_build_filename (g_get_tmp_dir (), "metadata.conf", NULL);
-	ret = pk_service_pack_create_metadata_file (pack, filename);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_CREATE,
-				      "failed to generate metadata file %s", filename);
-		goto out;
-	}
-	g_ptr_array_add (file_array, g_strdup (filename));
-
-	/* we can only write tar achives */
-	arch = archive_write_new ();
-	archive_write_set_compression_none (arch);
-	archive_write_set_format_ustar (arch);
-	archive_write_open_filename (arch, pack->priv->filename);
-
-	/* for each filename */
-	for (i=0; i<file_array->len; i++) {
-		src = (const gchar *) g_ptr_array_index (file_array, i);
-		/* try to add to archive */
-		ret = pk_service_pack_archive_add_file (arch, src, error);
-		if (!ret)
-			goto out;
-	}
-
-	/* completed all okay */
-	ret = TRUE;
-out:
-	g_free (filename);
-	/* delete each filename */
-	for (i=0; i<file_array->len; i++) {
-		src = (const gchar *) g_ptr_array_index (file_array, i);
-		g_remove (src);
-	}
-
-	/* close the archive */
-	if (arch != NULL) {
-		archive_write_close (arch);
-		archive_write_finish (arch);
-	}
-	return ret;
-}
-#else
-/**
- * pk_service_pack_create_from_files:
- **/
-static gboolean
-pk_service_pack_create_from_files (PkServicePack *pack, GPtrArray *file_array, GError **error)
-{
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_CREATE,
-			      "The service pack %s cannot be created as PackageKit was not built with libarchive support", pack->priv->filename);
-	return FALSE;
-}
-#endif
-
-/**
- * pk_service_pack_scan_files_in_directory:
- **/
-static GPtrArray *
-pk_service_pack_scan_files_in_directory (PkServicePack *pack)
-{
-	gchar *src;
-	GPtrArray *file_array = NULL;
-	GDir *dir;
-	const gchar *filename;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), NULL);
-	g_return_val_if_fail (pack->priv->directory != NULL, NULL);
-
-	/* try and open the directory */
-	dir = g_dir_open (pack->priv->directory, 0, NULL);
-	if (dir == NULL) {
-		egg_warning ("failed to get directory for %s", pack->priv->directory);
-		goto out;
-	}
-
-	/* add each file to an array */
-	file_array = g_ptr_array_new ();
-	while ((filename = g_dir_read_name (dir))) {
-		src = g_build_filename (pack->priv->directory, filename, NULL);
-		g_ptr_array_add (file_array, src);
-	}
-	g_dir_close (dir);
-out:
-	return file_array;
-}
-
-/**
- * pk_service_pack_package_cb:
- **/
-static void
-pk_service_pack_package_cb (PkClient *client, const PkPackageObj *obj, PkServicePack *pack)
-{
-	g_return_if_fail (PK_IS_SERVICE_PACK (pack));
-	g_return_if_fail (obj != NULL);
-
-	/* only shown downloading */
-	if (obj->info != PK_INFO_ENUM_DOWNLOADING)
-		return;
-
-	egg_debug ("emit package %s", obj->id->name);
-	g_signal_emit (pack, signals [PK_SERVICE_PACK_PACKAGE], 0, obj);
-}
-
-/**
- * pk_service_pack_progress_changed_cb:
- **/
-static void
-pk_service_pack_progress_changed_cb (PkClient *client, guint percentage, guint subpercentage,
-				     guint elapsed, guint remaining, PkServicePack *pack)
-{
-	egg_debug ("emit percentage %i", percentage);
-	g_signal_emit (pack, signals [PK_SERVICE_PACK_PERCENTAGE], 0, percentage);
-}
-
-/**
- * pk_service_pack_setup_client:
- **/
-static gboolean
-pk_service_pack_setup_client (PkServicePack *pack)
-{
-	if (pack->priv->client != NULL)
-		return FALSE;
-	pack->priv->client = pk_client_new ();
-	g_signal_connect (pack->priv->client, "package",
-			  G_CALLBACK (pk_service_pack_package_cb), pack);
-	g_signal_connect (pack->priv->client, "progress-changed",
-			  G_CALLBACK (pk_service_pack_progress_changed_cb), pack);
-	pk_client_set_use_buffer (pack->priv->client, TRUE, NULL);
-	pk_client_set_synchronous (pack->priv->client, TRUE, NULL);
-	return TRUE;
-}
-
-/**
- * pk_service_pack_create_for_package_ids_internal:
- **/
-static gboolean
-pk_service_pack_create_for_package_ids_internal (PkServicePack *pack, gchar **package_ids, GError **error)
-{
-	gchar **package_ids_deps = NULL;
-	PkPackageList *list = NULL;
-	guint length;
-	GPtrArray *file_array = NULL;
-	GError *error_local = NULL;
-	gboolean ret = FALSE;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (package_ids != NULL, FALSE);
-	g_return_val_if_fail (error != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->filename != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->directory != NULL, FALSE);
-
-	/* don't setup by default to not block the server */
-	pk_service_pack_setup_client (pack);
-
-	/* download this package */
-	pk_service_pack_status_changed (pack, PK_SERVICE_PACK_STATUS_DOWNLOAD_PACKAGES);
-	ret = pk_service_pack_download_package_ids (pack, package_ids, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, error_local->code,
-				      "failed to download main package: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* get depends */
-	ret = pk_client_reset (pack->priv->client, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to reset: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	egg_debug ("Getting depends for %s", package_ids[0]);
-	ret = pk_client_get_depends (pack->priv->client, PK_FILTER_ENUM_NONE, package_ids, TRUE, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to get depends: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* get the deps */
-	list = pk_client_get_package_list (pack->priv->client);
-
-	/* remove some deps */
-	pk_package_list_set_fuzzy_arch (list, TRUE);
-	pk_service_pack_exclude_packages (pack, list);
-
-	/* get the deps */
-	length = pk_package_list_get_size (list);
-	if (length != 0) {
-		/* download additional package_ids */
-		package_ids_deps = pk_package_list_to_strv (list);
-		pk_service_pack_status_changed (pack, PK_SERVICE_PACK_STATUS_DOWNLOAD_DEPENDENCIES);
-		ret = pk_service_pack_download_package_ids (pack, package_ids_deps, &error_local);
-		g_strfreev (package_ids_deps);
-
-		/* failed to get deps */
-		if (!ret) {
-			*error = g_error_new (PK_SERVICE_PACK_ERROR, error_local->code,
-					      "failed to download deps of package: %s", error_local->message);
-			g_error_free (error_local);
-			goto out;
-		}
-	}
-
-	/* find packages that were downloaded */
-	file_array = pk_service_pack_scan_files_in_directory (pack);
-	if (file_array == NULL) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to scan directory: %s", pack->priv->directory);
-		goto out;
-	}
-
-	/* generate pack file */
-	ret = pk_service_pack_create_from_files (pack, file_array, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, error_local->code,
-				      "failed to create archive: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-out:
-	if (list != NULL)
-		g_object_unref (list);
-	if (file_array != NULL) {
-		g_ptr_array_foreach (file_array, (GFunc) g_free, NULL);
-		g_ptr_array_free (file_array, TRUE);
-	}
-	return ret;
-}
-
-/**
- * pk_service_pack_create_for_package_ids:
- * @pack: a valid #PkServicePack instance
- * @package_ids: A list of package_ids to download
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Adds the packages specified to a service pack.
- *
- * Return value: %TRUE if the service pack was created successfully
- **/
-gboolean
-pk_service_pack_create_for_package_ids (PkServicePack *pack, gchar **package_ids, GError **error)
-{
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-
-	pack->priv->type = PK_SERVICE_PACK_TYPE_INSTALL;
-	return pk_service_pack_create_for_package_ids_internal (pack, package_ids, error);
-}
-
-/**
- * pk_service_pack_create_for_package_id:
- * @pack: a valid #PkServicePack instance
- * @package_id: A single package_id to download
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Adds the package specified to a service pack.
- *
- * Return value: %TRUE if the service pack was created successfully
- **/
-gboolean
-pk_service_pack_create_for_package_id (PkServicePack *pack, const gchar *package_id, GError **error)
-{
-	gchar **package_ids;
-	gboolean ret;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (package_id != NULL, FALSE);
-	g_return_val_if_fail (error != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->filename != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->directory != NULL, FALSE);
-
-	package_ids = pk_package_ids_from_id (package_id);
-	pack->priv->type = PK_SERVICE_PACK_TYPE_INSTALL;
-	ret = pk_service_pack_create_for_package_ids_internal (pack, package_ids, error);
-	g_strfreev (package_ids);
-	return ret;
-}
-
-/**
- * pk_service_pack_create_for_updates:
- * @pack: a valid #PkServicePack instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Adds any pending updates to a service pack.
- *
- * Return value: %TRUE if the service pack was created successfully
- **/
-gboolean
-pk_service_pack_create_for_updates (PkServicePack *pack, GError **error)
-{
-	gchar **package_ids = NULL;
-	GError *error_local = NULL;
-	gboolean ret = FALSE;
-	PkPackageList *list;
-	guint len;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-	g_return_val_if_fail (error != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->filename != NULL, FALSE);
-	g_return_val_if_fail (pack->priv->directory != NULL, FALSE);
-
-	/* don't setup by default to not block the server */
-	pk_service_pack_setup_client (pack);
-
-	/* get updates */
-	ret = pk_client_reset (pack->priv->client, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to reset: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	egg_debug ("Getting updates");
-	ret = pk_client_get_updates (pack->priv->client, PK_FILTER_ENUM_NONE, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to get updates: %s", error_local->message);
-		g_error_free (error_local);
-		goto out;
-	}
-
-	/* get the updates, and download them with deps */
-	list = pk_client_get_package_list (pack->priv->client);
-	len = pk_package_list_get_size (list);
-
-	/* no updates */
-	if (len == 0) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_NOTHING_TO_DO,
-				      "there are no updates to download");
-		ret = FALSE;
-		goto out;
-	}
-
-	package_ids = pk_package_list_to_strv (list);
-	g_object_unref (list);
-
-	pack->priv->type = PK_SERVICE_PACK_TYPE_UPDATE;
-	ret = pk_service_pack_create_for_package_ids_internal (pack, package_ids, error);
-out:
-	g_strfreev (package_ids);
-	return ret;
-}
-
-/**
- * pk_service_pack_cancel:
- * @pack: a valid #PkServicePack instance
- * @error: a %GError to put the error code and message in, or %NULL
- *
- * Cancels the pack creation
- *
- * Return value: %TRUE if we cancelled okay
- **/
-gboolean
-pk_service_pack_cancel (PkServicePack *pack, GError **error)
-{
-	gboolean ret;
-	GError *error_local = NULL;
-
-	g_return_val_if_fail (PK_IS_SERVICE_PACK (pack), FALSE);
-
-	/* nothing to cancel */
-	if (pack->priv->client == NULL)
-		return TRUE;
-
-	/* cancel the client */
-	egg_debug ("cancelling the client");
-	ret = pk_client_cancel (pack->priv->client, &error_local);
-	if (!ret) {
-		*error = g_error_new (PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-				      "failed to cancel: %s", error_local->message);
-		g_error_free (error_local);
-	}
-	return ret;
-}
-
-/**
- * pk_service_pack_finalize:
- **/
-static void
-pk_service_pack_finalize (GObject *object)
-{
-	PkServicePack *pack;
-
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_SERVICE_PACK (object));
-	pack = PK_SERVICE_PACK (object);
-
-	if (pack->priv->exclude_list != NULL)
-		g_object_unref (pack->priv->exclude_list);
-	if (pack->priv->client != NULL)
-		g_object_unref (pack->priv->client);
-	g_free (pack->priv->directory);
-	g_free (pack->priv->filename);
-
-	G_OBJECT_CLASS (pk_service_pack_parent_class)->finalize (object);
-}
-
-/**
- * pk_service_pack_class_init:
- **/
-static void
-pk_service_pack_class_init (PkServicePackClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-	object_class->finalize = pk_service_pack_finalize;
-
-	/**
-	 * PkServicePack::package:
-	 * @pack: the #PkServicePack instance that emitted the signal
-	 * @obj: the #PkPackageObj that has just been downloaded
-	 *
-	 * The ::package signal is emitted when a file is being downloaded.
-	 **/
-	signals [PK_SERVICE_PACK_PACKAGE] =
-		g_signal_new ("package",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkServicePackClass, package),
-			      NULL, NULL, g_cclosure_marshal_VOID__POINTER,
-			      G_TYPE_NONE, 1, G_TYPE_POINTER);
-
-	/**
-	 * PkServicePack::percentage:
-	 * @pack: the #PkServicePack instance that emitted the signal
-	 * @percentage: the percentage complete
-	 *
-	 * The ::package signal is emitted when a file is being downloaded.
-	 **/
-	signals [PK_SERVICE_PACK_PERCENTAGE] =
-		g_signal_new ("percentage",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkServicePackClass, percentage),
-			      NULL, NULL, g_cclosure_marshal_VOID__UINT,
-			      G_TYPE_NONE, 1, G_TYPE_UINT);
-
-	/**
-	 * PkServicePack::status:
-	 * @pack: the #PkServicePack instance that emitted the signal
-	 * @status: the #PkPackageObj that has just been downloaded
-	 *
-	 * The %PkServicePackStatus enum describing what we are doing
-	 **/
-	signals [PK_SERVICE_PACK_STATUS] =
-		g_signal_new ("status",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkServicePackClass, status),
-			      NULL, NULL, g_cclosure_marshal_VOID__UINT,
-			      G_TYPE_NONE, 1, G_TYPE_UINT);
-
-	g_type_class_add_private (klass, sizeof (PkServicePackPrivate));
-}
-
-/**
- * pk_service_pack_init:
- **/
-static void
-pk_service_pack_init (PkServicePack *pack)
-{
-	pack->priv = PK_SERVICE_PACK_GET_PRIVATE (pack);
-	pack->priv->exclude_list = NULL;
-	pack->priv->filename = NULL;
-	pack->priv->directory = NULL;
-	pack->priv->type = PK_SERVICE_PACK_TYPE_UNKNOWN;
-}
-
-/**
- * pk_service_pack_new:
- *
- * Return value: A new service_pack class instance.
- **/
-PkServicePack *
-pk_service_pack_new (void)
-{
-	PkServicePack *pack;
-	pack = g_object_new (PK_TYPE_SERVICE_PACK, NULL);
-	return PK_SERVICE_PACK (pack);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_service_pack_test (EggTest *test)
-{
-	PkServicePack *pack;
-
-	if (!egg_test_start (test, "PkServicePack"))
-		return;
-
-	/************************************************************/
-	egg_test_title (test, "get an instance");
-	pack = pk_service_pack_new ();
-	egg_test_assert (test, pack != NULL);
-	g_object_unref (pack);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-service-pack.h b/lib/packagekit-glib/pk-service-pack.h
deleted file mode 100644
index e1b83e7..0000000
--- a/lib/packagekit-glib/pk-service-pack.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_SERVICE_PACK_H
-#define __PK_SERVICE_PACK_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-package-list.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_SERVICE_PACK		(pk_service_pack_get_type ())
-#define PK_SERVICE_PACK(o)		(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_SERVICE_PACK, PkServicePack))
-#define PK_SERVICE_PACK_CLASS(k)	(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_SERVICE_PACK, PkServicePackClass))
-#define PK_IS_SERVICE_PACK(o)		(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_SERVICE_PACK))
-#define PK_IS_SERVICE_PACK_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_SERVICE_PACK))
-#define PK_SERVICE_PACK_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_SERVICE_PACK, PkServicePackClass))
-#define PK_SERVICE_PACK_ERROR	 	(pk_service_pack_error_quark ())
-#define PK_SERVICE_PACK_TYPE_ERROR	(pk_service_pack_error_get_type ())
-
-/* the file extension to a servicepack */
-#define PK_SERVICE_PACK_FILE_EXTENSION	"servicepack"
-
-typedef struct PkServicePackPrivate PkServicePackPrivate;
-
-typedef enum
-{
-	PK_SERVICE_PACK_ERROR_FAILED_SETUP,
-	PK_SERVICE_PACK_ERROR_FAILED_DOWNLOAD,
-	PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION,
-	PK_SERVICE_PACK_ERROR_FAILED_CREATE,
-	PK_SERVICE_PACK_ERROR_NOTHING_TO_DO,
-	PK_SERVICE_PACK_ERROR_NOT_COMPATIBLE
-} PkServicePackError;
-
-typedef enum
-{
-	PK_SERVICE_PACK_STATUS_DOWNLOAD_PACKAGES,
-	PK_SERVICE_PACK_STATUS_DOWNLOAD_DEPENDENCIES,
-	PK_SERVICE_PACK_STATUS_UNKNOWN
-} PkServicePackStatus;
-
-typedef struct
-{
-	GObject		      parent;
-	PkServicePackPrivate     *priv;
-} PkServicePack;
-
-typedef struct
-{
-	GObjectClass	parent_class;
-	void		(* package)			(PkServicePack		*pack,
-							 const PkPackageObj	*obj);
-	void		(* percentage)			(PkServicePack		*pack,
-							 guint			 percentage);
-	void		(* status)			(PkServicePack		*pack,
-							 PkServicePackStatus	 status);
-	/* Padding for future expansion */
-	void (*_pk_reserved1) (void);
-	void (*_pk_reserved2) (void);
-	void (*_pk_reserved3) (void);
-	void (*_pk_reserved4) (void);
-} PkServicePackClass;
-
-GQuark		 pk_service_pack_error_quark			(void);
-GType		 pk_service_pack_error_get_type			(void);
-GType		 pk_service_pack_get_type			(void);
-PkServicePack	*pk_service_pack_new				(void);
-
-/* used by the server */
-gboolean	 pk_service_pack_check_valid			(PkServicePack	*pack,
-								 GError		**error);
-
-/* used by clients */
-gboolean	 pk_service_pack_set_filename			(PkServicePack	*pack,
-								 const gchar	*filename);
-gboolean	 pk_service_pack_set_temp_directory		(PkServicePack	*pack,
-								 const gchar	*directory);
-gboolean	 pk_service_pack_set_exclude_list		(PkServicePack	*pack,
-								 PkPackageList	*list);
-
-gboolean	 pk_service_pack_create_for_package_id		(PkServicePack	*pack,
-								 const gchar	*package_id,
-								 GError		**error);
-gboolean	 pk_service_pack_create_for_package_ids		(PkServicePack	*pack,
-								 gchar		**package_ids,
-								 GError		**error);
-gboolean	 pk_service_pack_create_for_updates		(PkServicePack	*pack,
-								 GError		**error);
-gboolean	 pk_service_pack_cancel				(PkServicePack	*pack,
-								 GError		**error);
-
-G_END_DECLS
-
-#endif /* __PK_SERVICE_PACK_H */
-
diff --git a/lib/packagekit-glib/pk-task-list.c b/lib/packagekit-glib/pk-task-list.c
deleted file mode 100644
index 3a13211..0000000
--- a/lib/packagekit-glib/pk-task-list.c
+++ /dev/null
@@ -1,588 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-task-list
- * @short_description: A nice way to keep a list of the jobs being processed
- *
- * These provide a good way to keep a list of the jobs being processed so we
- * can see what type of jobs and thier status easily.
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <string.h>
-#include <sys/types.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif /* HAVE_UNISTD_H */
-
-#include <glib/gi18n.h>
-#include <dbus/dbus-glib.h>
-
-#include "egg-debug.h"
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-task-list.h>
-#include <packagekit-glib/pk-control.h>
-#include <packagekit-glib/pk-connection.h>
-#include <packagekit-glib/pk-marshal.h>
-
-static void     pk_task_list_finalize		(GObject         *object);
-
-#define PK_TASK_LIST_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), PK_TYPE_TASK_LIST, PkTaskListPrivate))
-
-/**
- * PkTaskListPrivate:
- *
- * Private #PkTaskList data
- **/
-struct _PkTaskListPrivate
-{
-	GPtrArray		*task_list;
-	PkControl		*control;
-	PkConnection		*connection;
-	guint			 control_changed_id;
-	guint			 connection_changed_id;
-};
-
-typedef enum {
-	PK_TASK_LIST_CHANGED,
-	PK_TASK_LIST_STATUS_CHANGED,
-	PK_TASK_LIST_MESSAGE,
-	PK_TASK_LIST_FINISHED,
-	PK_TASK_LIST_ERROR_CODE,
-	PK_TASK_LIST_LAST_SIGNAL
-} PkSignals;
-
-static guint signals [PK_TASK_LIST_LAST_SIGNAL] = { 0 };
-
-G_DEFINE_TYPE (PkTaskList, pk_task_list, G_TYPE_OBJECT)
-
-/**
- * pk_task_list_print:
- **/
-gboolean
-pk_task_list_print (PkTaskList *tlist)
-{
-	guint i;
-	PkTaskListItem *item;
-	guint length;
-
-	g_return_val_if_fail (PK_IS_TASK_LIST (tlist), FALSE);
-
-	length = tlist->priv->task_list->len;
-	egg_debug ("Tasks:");
-	if (length == 0) {
-		g_print ("[none]...\n");
-		return TRUE;
-	}
-	for (i=0; i<length; i++) {
-		item = g_ptr_array_index (tlist->priv->task_list, i);
-		g_print ("%s\t%s:%s %s\n", item->tid, pk_role_enum_to_text (item->role),
-			 pk_status_enum_to_text (item->status), item->text);
-	}
-	return TRUE;
-}
-
-/**
- * pk_task_list_contains_role:
- **/
-gboolean
-pk_task_list_contains_role (PkTaskList *tlist, PkRoleEnum role)
-{
-	guint i;
-	PkTaskListItem *item;
-	guint length;
-
-	g_return_val_if_fail (PK_IS_TASK_LIST (tlist), FALSE);
-
-	length = tlist->priv->task_list->len;
-	for (i=0; i<length; i++) {
-		item = g_ptr_array_index (tlist->priv->task_list, i);
-		if (item->role == role) {
-			return TRUE;
-		}
-	}
-	return FALSE;
-}
-
-/**
- * pk_task_list_find_existing_tid:
- **/
-static PkTaskListItem *
-pk_task_list_find_existing_tid (PkTaskList *tlist, const gchar *tid)
-{
-	guint i;
-	guint length;
-	PkTaskListItem *item;
-
-	length = tlist->priv->task_list->len;
-	/* mark previous tasks as non-valid */
-	for (i=0; i<length; i++) {
-		item = g_ptr_array_index (tlist->priv->task_list, i);
-		if (strcmp (item->tid, tid) == 0) {
-			return item;
-		}
-	}
-	return NULL;
-}
-
-/**
- * pk_task_list_status_changed_cb:
- **/
-static void
-pk_task_list_status_changed_cb (PkClient *client, PkStatusEnum status, PkTaskList *tlist)
-{
-	gchar *tid;
-	PkTaskListItem *item;
-
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-
-	tid = pk_client_get_tid (client);
-
-	/* get correct item */
-	item = pk_task_list_find_existing_tid (tlist, tid);
-	item->status = status;
-
-	egg_debug ("emit status-changed(%s) for %s", pk_status_enum_to_text (status), tid);
-	g_signal_emit (tlist, signals [PK_TASK_LIST_STATUS_CHANGED], 0);
-	g_free (tid);
-}
-
-/**
- * gpk_task_list_finished_cb:
- **/
-static void
-gpk_task_list_finished_cb (PkClient *client, PkExitEnum exit_enum, guint runtime, PkTaskList *tlist)
-{
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-	egg_debug ("emit finished");
-	g_signal_emit (tlist, signals [PK_TASK_LIST_FINISHED], 0, client, exit_enum, runtime);
-}
-
-/**
- * gpk_task_list_error_code_cb:
- **/
-static void
-gpk_task_list_error_code_cb (PkClient *client, PkErrorCodeEnum error_code, const gchar *details, PkTaskList *tlist)
-{
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-	egg_debug ("emit error-code");
-	g_signal_emit (tlist, signals [PK_TASK_LIST_ERROR_CODE], 0, client, error_code, details);
-}
-
-/**
- * gpk_task_list_message_cb:
- **/
-static void
-gpk_task_list_message_cb (PkClient *client, PkMessageEnum message, const gchar *details, PkTaskList *tlist)
-{
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-	egg_debug ("emit message");
-	g_signal_emit (tlist, signals [PK_TASK_LIST_MESSAGE], 0, client, message, details);
-}
-
-/**
- * pk_task_list_item_free:
- **/
-static void
-pk_task_list_item_free (PkTaskListItem *item)
-{
-	g_return_if_fail (item != NULL);
-	g_object_unref (item->monitor);
-	g_free (item->tid);
-	g_free (item->text);
-	g_free (item);
-}
-
-/**
- * pk_task_list_item_create:
- **/
-static PkTaskListItem *
-pk_task_list_item_create (PkTaskList *tlist, const gchar *tid)
-{
-	gboolean ret;
-	GError *error = NULL;
-	PkTaskListItem *item;
-
-	g_return_val_if_fail (PK_IS_TASK_LIST (tlist), NULL);
-	g_return_val_if_fail (tid != NULL, NULL);
-
-	item = g_new0 (PkTaskListItem, 1);
-	item->tid = g_strdup (tid);
-	item->monitor = pk_client_new ();
-	g_signal_connect (item->monitor, "status-changed",
-			  G_CALLBACK (pk_task_list_status_changed_cb), tlist);
-	g_signal_connect (item->monitor, "finished",
-			  G_CALLBACK (gpk_task_list_finished_cb), tlist);
-	g_signal_connect (item->monitor, "error-code",
-			  G_CALLBACK (gpk_task_list_error_code_cb), tlist);
-	g_signal_connect (item->monitor, "message",
-			  G_CALLBACK (gpk_task_list_message_cb), tlist);
-	ret = pk_client_set_tid (item->monitor, tid, &error);
-	if (!ret) {
-		egg_error ("could not set tid: %s", error->message);
-		g_error_free (error);
-		pk_task_list_item_free (item);
-		return NULL;
-	}
-	pk_client_set_use_buffer (item->monitor, TRUE, NULL);
-	pk_client_get_role (item->monitor, &item->role, &item->text, NULL);
-	pk_client_get_status (item->monitor, &item->status, NULL);
-
-	return item;
-}
-
-/**
- * pk_task_list_refresh:
- *
- * Not normally required, but force a refresh
- **/
-gboolean
-pk_task_list_refresh (PkTaskList *tlist)
-{
-	guint i;
-	PkTaskListItem *item;
-	guint length;
-	const gchar *tid;
-	const gchar **array;
-
-	g_return_val_if_fail (PK_IS_TASK_LIST (tlist), FALSE);
-
-	/* get the latest job list */
-	array = pk_control_transaction_list_get (tlist->priv->control);
-	if (array == NULL) {
-		egg_warning ("failed to get transaction list");
-		return FALSE;
-	}
-
-	/* mark previous tasks as non-valid */
-	length = tlist->priv->task_list->len;
-	for (i=0; i<length; i++) {
-		item = g_ptr_array_index (tlist->priv->task_list, i);
-		item->valid = FALSE;
-	}
-
-	/* copy tasks */
-	length = g_strv_length ((gchar **) array);
-	for (i=0; i<length; i++) {
-		tid = array[i];
-
-		item = pk_task_list_find_existing_tid (tlist, tid);
-		if (item == NULL) {
-			egg_debug ("new job, have to create %s", tid);
-			item = pk_task_list_item_create (tlist, tid);
-			/* add to watched array */
-			g_ptr_array_add (tlist->priv->task_list, item);
-		}
-
-		/* mark as present so we don't garbage collect it */
-		item->valid = TRUE;
-	}
-
-	/* find and remove non-valid watches */
-	for (i=0; i<tlist->priv->task_list->len; i++) {
-		item = g_ptr_array_index (tlist->priv->task_list, i);
-		if (!item->valid) {
-			pk_task_list_item_free (item);
-			g_ptr_array_remove (tlist->priv->task_list, item);
-		}
-	}
-
-	return TRUE;
-}
-
-/**
- * pk_task_list_get_size:
- **/
-guint
-pk_task_list_get_size (PkTaskList *tlist)
-{
-	g_return_val_if_fail (PK_IS_TASK_LIST (tlist), 0);
-	return tlist->priv->task_list->len;
-}
-
-/**
- * pk_task_list_get_item:
- **/
-PkTaskListItem *
-pk_task_list_get_item (PkTaskList *tlist, guint item)
-{
-	g_return_val_if_fail (PK_IS_TASK_LIST (tlist), NULL);
-	if (item >= tlist->priv->task_list->len) {
-		egg_warning ("item too large!");
-		return NULL;
-	}
-	return g_ptr_array_index (tlist->priv->task_list, item);
-}
-
-/**
- * pk_task_list_transaction_list_changed_cb:
- **/
-static void
-pk_task_list_transaction_list_changed_cb (PkControl *control, PkTaskList *tlist)
-{
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-	/* for now, just refresh all the jobs. a little inefficient me thinks */
-	pk_task_list_refresh (tlist);
-	egg_debug ("emit changed");
-	g_signal_emit (tlist, signals [PK_TASK_LIST_CHANGED], 0);
-}
-
-/**
- * pk_task_list_connection_changed_cb:
- **/
-static void
-pk_task_list_connection_changed_cb (PkConnection *connection, gboolean connected, PkTaskList *tlist)
-{
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-	egg_debug ("connected=%i", connected);
-
-	/* force a refresh so we have valid data */
-	if (connected)
-		pk_task_list_refresh (tlist);
-}
-
-/**
- * pk_task_list_class_init:
- **/
-static void
-pk_task_list_class_init (PkTaskListClass *klass)
-{
-	GObjectClass *object_class = G_OBJECT_CLASS (klass);
-
-	object_class->finalize = pk_task_list_finalize;
-
-	/**
-	 * PkTaskList::changed:
-	 * @tlist: the #PkTaskList instance that emitted the signal
-	 *
-	 * The ::changed signal is emitted when the transaction list has changed
-	 **/
-	signals [PK_TASK_LIST_CHANGED] =
-		g_signal_new ("changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkTaskListClass, changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID,
-			      G_TYPE_NONE, 0);
-	/**
-	 * PkTaskList::status-changed:
-	 * @tlist: the #PkTaskList instance that emitted the signal
-	 *
-	 * The ::status-changed signal is emitted when one of the status' of the transaction list
-	 * clients has changed
-	 **/
-	signals [PK_TASK_LIST_STATUS_CHANGED] =
-		g_signal_new ("status-changed",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkTaskListClass, status_changed),
-			      NULL, NULL, g_cclosure_marshal_VOID__VOID,
-			      G_TYPE_NONE, 0);
-	/**
-	 * PkTaskList::message:
-	 * @tlist: the #PkTaskList instance that emitted the signal
-	 * @client: the #PkClient instance that caused the signal
-	 * @message: the PkMessageEnum type of the message, e.g. %PK_MESSAGE_ENUM_BROKEN_MIRROR
-	 * @details: the non-localised message details
-	 *
-	 * The ::message signal is emitted when the transaction wants to tell
-	 * the user something.
-	 **/
-	signals [PK_TASK_LIST_MESSAGE] =
-		g_signal_new ("message",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkTaskListClass, message),
-			      NULL, NULL, pk_marshal_VOID__POINTER_UINT_STRING,
-			      G_TYPE_NONE, 3, G_TYPE_POINTER, G_TYPE_UINT, G_TYPE_STRING);
-	/**
-	 * PkTaskList::finished:
-	 * @tlist: the #PkTaskList instance that emitted the signal
-	 * @client: the #PkClient instance that caused the signal
-	 * @exit: the #PkExitEnum status value, e.g. PK_EXIT_ENUM_SUCCESS
-	 * @runtime: the time in seconds the transaction has been running
-	 *
-	 * The ::finished signal is emitted when the transaction is complete.
-	 **/
-	signals [PK_TASK_LIST_FINISHED] =
-		g_signal_new ("finished",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkTaskListClass, finished),
-			      NULL, NULL, pk_marshal_VOID__POINTER_UINT_UINT,
-			      G_TYPE_NONE, 3, G_TYPE_POINTER, G_TYPE_UINT, G_TYPE_UINT);
-	/**
-	 * PkClient::error-code:
-	 * @tlist: the #PkTaskList instance that emitted the signal
-	 * @client: the #PkClient instance that caused the signal
-	 * @code: the #PkErrorCodeEnum of the error, e.g. PK_ERROR_ENUM_DEP_RESOLUTION_FAILED
-	 * @details: the non-locaised details about the error
-	 *
-	 * The ::error-code signal is emitted when the transaction wants to
-	 * convey an error in the transaction.
-	 *
-	 * This can only happen once in a transaction.
-	 **/
-	signals [PK_TASK_LIST_ERROR_CODE] =
-		g_signal_new ("error-code",
-			      G_TYPE_FROM_CLASS (object_class), G_SIGNAL_RUN_LAST,
-			      G_STRUCT_OFFSET (PkTaskListClass, error_code),
-			      NULL, NULL, pk_marshal_VOID__POINTER_UINT_STRING,
-			      G_TYPE_NONE, 3, G_TYPE_POINTER, G_TYPE_UINT, G_TYPE_STRING);
-
-	g_type_class_add_private (klass, sizeof (PkTaskListPrivate));
-}
-
-/**
- * pk_task_list_init:
- **/
-static void
-pk_task_list_init (PkTaskList *tlist)
-{
-	tlist->priv = PK_TASK_LIST_GET_PRIVATE (tlist);
-
-	/* get the changing job list */
-	tlist->priv->control = pk_control_new ();
-	tlist->priv->control_changed_id =
-		g_signal_connect (tlist->priv->control, "transaction-list-changed",
-				  G_CALLBACK (pk_task_list_transaction_list_changed_cb), tlist);
-
-	/* we maintain a local copy */
-	tlist->priv->task_list = g_ptr_array_new ();
-
-	tlist->priv->connection = pk_connection_new ();
-	tlist->priv->connection_changed_id =
-		g_signal_connect (tlist->priv->connection, "connection-changed",
-				  G_CALLBACK (pk_task_list_connection_changed_cb), tlist);
-
-	/* force a refresh so we have valid data*/
-	pk_task_list_refresh (tlist);
-}
-
-/**
- * pk_task_list_finalize:
- **/
-static void
-pk_task_list_finalize (GObject *object)
-{
-	PkTaskList *tlist;
-
-	g_return_if_fail (object != NULL);
-	g_return_if_fail (PK_IS_TASK_LIST (object));
-	tlist = PK_TASK_LIST (object);
-	g_return_if_fail (tlist->priv != NULL);
-
-	/* unhook all signals */
-	g_signal_handler_disconnect (tlist->priv->control, tlist->priv->control_changed_id);
-	g_signal_handler_disconnect (tlist->priv->connection, tlist->priv->connection_changed_id);
-
-	/* remove all watches */
-	g_ptr_array_foreach (tlist->priv->task_list, (GFunc) pk_task_list_item_free, NULL);
-	g_ptr_array_free (tlist->priv->task_list, TRUE);
-	g_object_unref (tlist->priv->control);
-
-	G_OBJECT_CLASS (pk_task_list_parent_class)->finalize (object);
-}
-
-/**
- * pk_task_list_new:
- **/
-PkTaskList *
-pk_task_list_new (void)
-{
-	PkTaskList *tlist;
-	tlist = g_object_new (PK_TYPE_TASK_LIST, NULL);
-	return PK_TASK_LIST (tlist);
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-#include <packagekit-glib/pk-connection.h>
-
-static gboolean finished = FALSE;
-
-static void
-pk_task_list_test_finished_cb (PkTaskList *tlist, PkClient *client, PkExitEnum exit, guint runtime, EggTest *test)
-{
-	g_return_if_fail (PK_IS_CLIENT (client));
-	g_return_if_fail (PK_IS_TASK_LIST (tlist));
-	finished = TRUE;
-	egg_test_loop_quit (test);
-}
-
-void
-pk_task_list_test (EggTest *test)
-{
-	PkConnection *connection;
-	PkTaskList *tlist;
-	PkClient *client;
-	gboolean ret;
-	GError *error = NULL;
-
-	if (!egg_test_start (test, "PkTaskList"))
-		return;
-
-	/* check to see if there is a daemon running */
-	connection = pk_connection_new ();
-	ret = pk_connection_valid (connection);
-	g_object_unref (connection);
-	if (!ret) {
-		egg_warning ("daemon is not running, skipping tests");
-		goto out;
-	}
-
-	/************************************************************/
-	egg_test_title (test, "get client");
-	tlist = pk_task_list_new ();
-	egg_test_assert (test, tlist != NULL);
-	g_signal_connect (tlist, "finished",
-			  G_CALLBACK (pk_task_list_test_finished_cb), test);
-
-	/************************************************************/
-	egg_test_title (test, "search for power");
-	client = pk_client_new ();
-	ret = pk_client_search_name (client, PK_FILTER_ENUM_NONE, "power", &error);
-	if (!ret) {
-		egg_test_failed (test, "failed: %s", error->message);
-		g_error_free (error);
-	}
-	egg_test_loop_wait (test, 5000);
-	egg_test_success (test, NULL);
-
-	/************************************************************/
-	egg_test_title (test, "we finished?");
-	if (finished)
-		egg_test_success (test, NULL);
-	else
-		egg_test_failed (test, "not finished");
-
-	g_object_unref (tlist);
-	g_object_unref (client);
-out:
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-task-list.h b/lib/packagekit-glib/pk-task-list.h
deleted file mode 100644
index 9ab143e..0000000
--- a/lib/packagekit-glib/pk-task-list.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_TASK_LIST_H
-#define __PK_TASK_LIST_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-client.h>
-#include <packagekit-glib/pk-enum.h>
-
-G_BEGIN_DECLS
-
-#define PK_TYPE_TASK_LIST		(pk_task_list_get_type ())
-#define PK_TASK_LIST(o)			(G_TYPE_CHECK_INSTANCE_CAST ((o), PK_TYPE_TASK_LIST, PkTaskList))
-#define PK_TASK_LIST_CLASS(k)		(G_TYPE_CHECK_CLASS_CAST((k), PK_TYPE_TASK_LIST, PkTaskListClass))
-#define PK_IS_TASK_LIST(o)	 	(G_TYPE_CHECK_INSTANCE_TYPE ((o), PK_TYPE_TASK_LIST))
-#define PK_IS_TASK_LIST_CLASS(k)	(G_TYPE_CHECK_CLASS_TYPE ((k), PK_TYPE_TASK_LIST))
-#define PK_TASK_LIST_GET_CLASS(o)	(G_TYPE_INSTANCE_GET_CLASS ((o), PK_TYPE_TASK_LIST, PkTaskListClass))
-
-typedef struct _PkTaskListPrivate	PkTaskListPrivate;
-typedef struct _PkTaskList		PkTaskList;
-typedef struct _PkTaskListClass		PkTaskListClass;
-
-typedef struct
-{
-	gchar			*tid;
-	PkStatusEnum		 status;
-	PkRoleEnum		 role;
-	gchar			*text;
-	PkClient		*monitor;
-	gboolean		 valid;
-} PkTaskListItem;
-
-struct _PkTaskList
-{
-	GObject			 parent;
-	PkTaskListPrivate	*priv;
-};
-
-struct _PkTaskListClass
-{
-	GObjectClass	parent_class;
-	void		(* changed)			(PkTaskList	*tlist);
-	void		(* status_changed)		(PkTaskList	*tlist);
-	void		(* message)			(PkTaskList	*tlist,
-							 PkClient	*client,
-							 PkMessageEnum	 message,
-							 const gchar	*details);
-	void		(* finished)			(PkTaskList	*tlist,
-							 PkClient	*client,
-							 PkExitEnum	 exit,
-							 guint		 runtime);
-	void		(* error_code)			(PkTaskList	*tlist,
-							 PkClient	*client,
-							 PkErrorCodeEnum code,
-							 const gchar	*details);
-};
-
-GType		 pk_task_list_get_type			(void);
-PkTaskList	*pk_task_list_new			(void);
-
-gboolean	 pk_task_list_refresh			(PkTaskList	*tlist);
-gboolean	 pk_task_list_print			(PkTaskList	*tlist);
-gboolean	 pk_task_list_free			(PkTaskList	*tlist);
-gboolean	 pk_task_list_contains_role		(PkTaskList	*tlist,
-							 PkRoleEnum	 role);
-guint		 pk_task_list_get_size			(PkTaskList	*tlist);
-PkTaskListItem	*pk_task_list_get_item			(PkTaskList	*tlist,
-							 guint		 item);
-
-G_END_DECLS
-
-#endif /* __PK_TASK_LIST_H */
-
diff --git a/lib/packagekit-glib/pk-transaction-obj.c b/lib/packagekit-glib/pk-transaction-obj.c
deleted file mode 100644
index 199859c..0000000
--- a/lib/packagekit-glib/pk-transaction-obj.c
+++ /dev/null
@@ -1,159 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-transaction-obj
- * @short_description: Functionality to create a transaction struct
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-transaction-obj.h>
-
-#include "egg-debug.h"
-
-/**
- * pk_transaction_obj_new:
- *
- * Creates a new #PkTransactionObj object with default values
- *
- * Return value: a new #PkTransactionObj object
- **/
-PkTransactionObj *
-pk_transaction_obj_new (void)
-{
-	PkTransactionObj *obj;
-	obj = g_new0 (PkTransactionObj, 1);
-	obj->tid = NULL;
-	obj->timespec = NULL;
-	obj->succeeded = FALSE;
-	obj->role = PK_ROLE_ENUM_UNKNOWN;
-	obj->duration = 0;
-	obj->data = NULL;
-	obj->uid = 0;
-	obj->cmdline = NULL;
-	return obj;
-}
-
-/**
- * pk_transaction_obj_new_from_data:
- *
- * Creates a new #PkTransactionObj object with values.
- *
- * Return value: a new #PkTransactionObj object
- **/
-PkTransactionObj *
-pk_transaction_obj_new_from_data (const gchar *tid, const gchar *timespec,
-				  gboolean succeeded, PkRoleEnum role,
-				  guint duration, const gchar *data,
-				  guint uid, const gchar *cmdline)
-{
-	PkTransactionObj *obj = NULL;
-
-	/* create new object */
-	obj = pk_transaction_obj_new ();
-	obj->tid = g_strdup (tid);
-	obj->timespec = g_strdup (timespec);
-	obj->succeeded = succeeded;
-	obj->role = role;
-	obj->duration = duration;
-	obj->data = g_strdup (data);
-	obj->uid = uid;
-	obj->cmdline = g_strdup (cmdline);
-	return obj;
-}
-
-/**
- * pk_transaction_obj_copy:
- *
- * Return value: a new #PkTransactionObj object
- **/
-PkTransactionObj *
-pk_transaction_obj_copy (const PkTransactionObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_transaction_obj_new_from_data (obj->tid, obj->timespec,
-						 obj->succeeded, obj->role,
-						 obj->duration, obj->data,
-						 obj->uid, obj->cmdline);
-}
-
-/**
- * pk_transaction_obj_free:
- * @obj: the #PkTransactionObj object
- *
- * Return value: %TRUE if the #PkTransactionObj object was freed.
- **/
-gboolean
-pk_transaction_obj_free (PkTransactionObj *obj)
-{
-	if (obj == NULL) {
-		return FALSE;
-	}
-	g_free (obj->tid);
-	g_free (obj->timespec);
-	g_free (obj->data);
-	g_free (obj->cmdline);
-	g_free (obj);
-	return TRUE;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-egg_test_transaction (EggTest *test)
-{
-	gboolean ret;
-	PkTransactionObj *obj;
-
-	if (!egg_test_start (test, "PkTransactionObj"))
-		return;
-
-	/************************************************************
-	 ****************          IDENT           ******************
-	 ************************************************************/
-
-	/************************************************************/
-	egg_test_title (test, "get an upgrade object");
-	obj = pk_transaction_obj_new ();
-	egg_test_assert (test, obj != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test upgrade");
-	ret = pk_transaction_obj_free (obj);
-	egg_test_assert (test, ret);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-transaction-obj.h b/lib/packagekit-glib/pk-transaction-obj.h
deleted file mode 100644
index 3fae697..0000000
--- a/lib/packagekit-glib/pk-transaction-obj.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_TRANSACTION_OBJ_H
-#define __PK_TRANSACTION_OBJ_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkTransactionObj:
- *
- * Cached object to represent details about the transaction.
- **/
-typedef struct
-{
-	gchar				*tid;
-	gchar				*timespec;
-	gboolean			 succeeded;
-	PkRoleEnum			 role;
-	guint				 duration;
-	gchar				*data;
-	guint				 uid;
-	gchar				*cmdline;
-} PkTransactionObj;
-
-PkTransactionObj	*pk_transaction_obj_new		(void);
-PkTransactionObj	*pk_transaction_obj_copy		(const PkTransactionObj *obj);
-PkTransactionObj	*pk_transaction_obj_new_from_data	(const gchar		*tid,
-								 const gchar		*timespec,
-								 gboolean		 succeeded,
-								 PkRoleEnum		 role,
-								 guint			 duration,
-								 const gchar		*data,
-								 guint			 uid,
-								 const gchar		*cmdline);
-gboolean		 pk_transaction_obj_free		(PkTransactionObj	*obj);
-
-G_END_DECLS
-
-#endif /* __PK_TRANSACTION_OBJ_H */
diff --git a/lib/packagekit-glib/pk-update-detail-obj.c b/lib/packagekit-glib/pk-update-detail-obj.c
deleted file mode 100644
index 982debb..0000000
--- a/lib/packagekit-glib/pk-update-detail-obj.c
+++ /dev/null
@@ -1,178 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-/**
- * SECTION:pk-update-detail-obj
- * @short_description: Functionality to create an update detail struct
- */
-
-#include "config.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/types.h>
-#include <glib/gi18n.h>
-
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-common.h>
-#include <packagekit-glib/pk-update-detail-obj.h>
-
-#include "egg-debug.h"
-
-/**
- * pk_update_detail_obj_new:
- *
- * Creates a new #PkUpdateDetailObj object with default values
- *
- * Return value: a new #PkUpdateDetailObj object
- **/
-PkUpdateDetailObj *
-pk_update_detail_obj_new (void)
-{
-	PkUpdateDetailObj *obj;
-	obj = g_new0 (PkUpdateDetailObj, 1);
-	obj->updates = NULL;
-	obj->obsoletes = NULL;
-	obj->vendor_url = NULL;
-	obj->bugzilla_url = NULL;
-	obj->cve_url = NULL;
-	obj->restart = 0;
-	obj->update_text = NULL;
-	obj->changelog = NULL;
-	obj->state = PK_UPDATE_STATE_ENUM_UNKNOWN;
-	obj->issued = NULL;
-	obj->updated = NULL;
-
-	return obj;
-}
-
-/**
- * pk_update_detail_obj_new_from_data:
- *
- * Creates a new #PkUpdateDetailObj object with values.
- *
- * Return value: a new #PkUpdateDetailObj object
- **/
-PkUpdateDetailObj *
-pk_update_detail_obj_new_from_data (const PkPackageId *id, const gchar *updates, const gchar *obsoletes,
-				    const gchar *vendor_url, const gchar *bugzilla_url, const gchar *cve_url,
-				    PkRestartEnum restart, const gchar *update_text,
-				    const gchar *changelog, PkUpdateStateEnum state, GDate *issued, GDate *updated)
-{
-	PkUpdateDetailObj *obj = NULL;
-
-	/* create new object */
-	obj = pk_update_detail_obj_new ();
-	obj->id = pk_package_id_copy (id);
-	obj->updates = g_strdup (updates);
-	obj->obsoletes = g_strdup (obsoletes);
-	obj->vendor_url = g_strdup (vendor_url);
-	obj->bugzilla_url = g_strdup (bugzilla_url);
-	obj->cve_url = g_strdup (cve_url);
-	obj->restart = restart;
-	obj->update_text = g_strdup (update_text);
-	obj->changelog = g_strdup (changelog);
-	obj->state = state;
-	if (issued != NULL)
-		obj->issued = g_date_new_dmy (issued->day, issued->month, issued->year);
-	if (updated != NULL)
-		obj->updated = g_date_new_dmy (updated->day, updated->month, updated->year);
-
-	return obj;
-}
-
-/**
- * pk_update_detail_obj_copy:
- *
- * Return value: a new #PkUpdateDetailObj object
- **/
-PkUpdateDetailObj *
-pk_update_detail_obj_copy (const PkUpdateDetailObj *obj)
-{
-	g_return_val_if_fail (obj != NULL, NULL);
-	return pk_update_detail_obj_new_from_data (obj->id, obj->updates, obj->obsoletes,
-						   obj->vendor_url, obj->bugzilla_url, obj->cve_url,
-						   obj->restart, obj->update_text,
-						   obj->changelog, obj->state, obj->issued, obj->updated);
-}
-
-/**
- * pk_update_detail_obj_free:
- * @obj: the #PkUpdateDetailObj object
- *
- * Return value: %TRUE if the #PkUpdateDetailObj object was freed.
- **/
-gboolean
-pk_update_detail_obj_free (PkUpdateDetailObj *obj)
-{
-	if (obj == NULL) {
-		return FALSE;
-	}
-	pk_package_id_free (obj->id);
-	g_free (obj->updates);
-	g_free (obj->obsoletes);
-	g_free (obj->vendor_url);
-	g_free (obj->bugzilla_url);
-	g_free (obj->cve_url);
-	g_free (obj->update_text);
-	g_free (obj->changelog);
-	if (obj->issued)
-		g_date_free (obj->issued);
-	if (obj->updated)
-		g_date_free (obj->updated);
-	g_free (obj);
-	return TRUE;
-}
-
-/***************************************************************************
- ***                          MAKE CHECK TESTS                           ***
- ***************************************************************************/
-#ifdef EGG_TEST
-#include "egg-test.h"
-
-void
-pk_update_detail_test (EggTest *test)
-{
-	gboolean ret;
-	PkUpdateDetailObj *obj;
-
-	if (!egg_test_start (test, "PkUpdateDetailObj"))
-		return;
-
-	/************************************************************
-	 ****************          IDENT           ******************
-	 ************************************************************/
-
-	/************************************************************/
-	egg_test_title (test, "get an detail object");
-	obj = pk_update_detail_obj_new ();
-	egg_test_assert (test, obj != NULL);
-
-	/************************************************************/
-	egg_test_title (test, "test detail");
-	ret = pk_update_detail_obj_free (obj);
-	egg_test_assert (test, ret);
-
-	egg_test_end (test);
-}
-#endif
-
diff --git a/lib/packagekit-glib/pk-update-detail-obj.h b/lib/packagekit-glib/pk-update-detail-obj.h
deleted file mode 100644
index 530a123..0000000
--- a/lib/packagekit-glib/pk-update-detail-obj.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
- *
- * Copyright (C) 2007-2008 Richard Hughes <richard at hughsie.com>
- *
- * Licensed under the GNU General Public License Version 2
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- */
-
-#if !defined (__PACKAGEKIT_H_INSIDE__) && !defined (PK_COMPILATION)
-#error "Only <packagekit.h> can be included directly."
-#endif
-
-#ifndef __PK_UPDATE_DETAIL_H
-#define __PK_UPDATE_DETAIL_H
-
-#include <glib-object.h>
-#include <packagekit-glib/pk-enum.h>
-#include <packagekit-glib/pk-package-id.h>
-
-G_BEGIN_DECLS
-
-/**
- * PkUpdateDetailObj:
- *
- * Cached object to represent details about the update.
- **/
-typedef struct
-{
-	PkPackageId			*id;
-	gchar				*updates;
-	gchar				*obsoletes;
-	gchar				*vendor_url;
-	gchar				*bugzilla_url;
-	gchar				*cve_url;
-	PkRestartEnum			 restart;
-	gchar				*update_text;
-	gchar				*changelog;
-	PkUpdateStateEnum		 state;
-	GDate				*issued;
-	GDate				*updated;
-} PkUpdateDetailObj;
-
-PkUpdateDetailObj	*pk_update_detail_obj_new		(void);
-PkUpdateDetailObj	*pk_update_detail_obj_copy		(const PkUpdateDetailObj *obj);
-PkUpdateDetailObj	*pk_update_detail_obj_new_from_data	(const PkPackageId	*id,
-								 const gchar		*updates,
-								 const gchar		*obsoletes,
-								 const gchar		*vendor_url,
-								 const gchar		*bugzilla_url,
-								 const gchar		*cve_url,
-								 PkRestartEnum		 restart,
-								 const gchar		*update_text,
-								 const gchar		*changelog,
-								 PkUpdateStateEnum	 state,
-								 GDate			*issued,
-								 GDate			*updated);
-gboolean		 pk_update_detail_obj_free		(PkUpdateDetailObj	*obj);
-
-G_END_DECLS
-
-#endif /* __PK_UPDATE_DETAIL_H */
-
diff --git a/lib/packagekit-glib/pk-version.h.in b/lib/packagekit-glib/pk-version.h.in
deleted file mode 120000
index 752c5e3..0000000
--- a/lib/packagekit-glib/pk-version.h.in
+++ /dev/null
@@ -1 +0,0 @@
-../packagekit-glib2/pk-version.h.in
\ No newline at end of file
diff --git a/lib/packagekit-glib2/pk-marshal.list b/lib/packagekit-glib2/pk-marshal.list
index dc61df6..e01462d 120000
--- a/lib/packagekit-glib2/pk-marshal.list
+++ b/lib/packagekit-glib2/pk-marshal.list
@@ -1 +1 @@
-../packagekit-glib/pk-marshal.list
\ No newline at end of file
+../../src/pk-marshal.list
\ No newline at end of file
commit 4c0c79ad17a28c0d9d5afd7e0ebf8517fd60969b
Author: Richard Hughes <richard at hughsie.com>
Date:   Mon Dec 7 15:09:26 2009 +0000

    trivial: post release version bump

diff --git a/RELEASE b/RELEASE
index c2ed4a1..8e324de 100644
--- a/RELEASE
+++ b/RELEASE
@@ -2,7 +2,7 @@ PackageKit Release Notes
 
 1. Write NEWS entries for PackageKit in the same format as usual.
 
-git shortlog PACKAGEKIT_0_5_4.. | grep -i -v trivial | grep -v Merge > NEWS.new
+git shortlog PACKAGEKIT_0_5_5.. | grep -i -v trivial | grep -v Merge > NEWS.new
 
 2. Add download date to docs/html/pk-download.html, save file.
 
@@ -10,8 +10,8 @@ git shortlog PACKAGEKIT_0_5_4.. | grep -i -v trivial | grep -v Merge > NEWS.new
 
 4. Commit changes in PackageKit git:
 
-git commit -a -m "Release version 0.5.5"
-git tag -a -f -m "Release 0.5.5" PACKAGEKIT_0_5_5
+git commit -a -m "Release version 0.5.6"
+git tag -a -f -m "Release 0.5.6" PACKAGEKIT_0_5_6
 git push --tags
 git push
 git push git+ssh://hughsient@git.freedesktop.org/git/packagekit
@@ -35,9 +35,9 @@ git push
 10. Send an email to packagekit at lists.freedesktop.org
 
 =================================================
-Subject: PackageKit 0.5.5 released!
+Subject: PackageKit 0.5.6 released!
 
-Today I released PackageKit 0.5.5.
+Today I released PackageKit 0.5.6.
 
 PackageKit release notes: http://cgit.freedesktop.org/packagekit/tree/NEWS
 
diff --git a/configure.ac b/configure.ac
index 3936466..ba2c7cf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@ AC_PREREQ(2.52)
 
 m4_define([pk_major_version], [0])
 m4_define([pk_minor_version], [5])
-m4_define([pk_micro_version], [5])
+m4_define([pk_micro_version], [6])
 m4_define([pk_version],
           [pk_major_version.pk_minor_version.pk_micro_version])
 


More information about the PackageKit-commit mailing list