File nm-applet-migration-tool.patch of Package NetworkManager-gnome
Index: network-manager-applet-1.0.10/nm-applet-migration-tool.desktop.in
===================================================================
--- /dev/null
+++ network-manager-applet-1.0.10/nm-applet-migration-tool.desktop.in
@@ -0,0 +1,7 @@
+[Desktop Entry]
+_Name=VPN Migration Tool
+_Comment=Tool to migration VPN configurations
+Type=Application
+Exec=@LIBEXECDIR@/nm-applet-migration-tool
+OnlyShowIn=GNOME;
+NoDisplay=true
Index: network-manager-applet-1.0.10/Makefile.am
===================================================================
--- network-manager-applet-1.0.10.orig/Makefile.am
+++ network-manager-applet-1.0.10/Makefile.am
@@ -4,6 +4,12 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
SUBDIRS = src icons po man
+edit = $(AM_V_GEN) sed \
+ -e 's|@LIBEXECDIR[@]|$(libexecdir)|g'
+
+%.desktop: %.desktop.in Makefile
+ $(edit) $< >$@
+
EXTRA_DIST = \
CONTRIBUTING \
intltool-extract.in \
@@ -13,11 +19,13 @@ EXTRA_DIST = \
autogen.sh
autostartdir = $(sysconfdir)/xdg/autostart
-autostart_in_files = nm-applet.desktop.in
+autostart_in_files = nm-applet.desktop.in \
+ nm-applet-migration-tool.desktop.in
autostart_DATA = $(autostart_in_files:.desktop.in=.desktop)
applicationsdir = $(datadir)/applications
-applications_DATA = $(autostart_DATA)
+applications_in_files = nm-applet.desktop.in
+applications_DATA = $(applications_in_files:.desktop.in=.desktop)
desktopdir = $(datadir)/applications
desktop_in_files = nm-connection-editor.desktop.in
Index: network-manager-applet-1.0.10/src/migration-tool.c
===================================================================
--- network-manager-applet-1.0.10.orig/src/migration-tool.c
+++ network-manager-applet-1.0.10/src/migration-tool.c
@@ -31,6 +31,9 @@
#include "gconf-helpers.h"
gboolean success = TRUE;
+gint connection_count = 0;
+gint add_cb_count = 0;
+GMainLoop *loop = NULL;
static void
add_cb (NMRemoteSettings *settings,
@@ -46,6 +49,12 @@ add_cb (NMRemoteSettings *settings,
error->message);
success = FALSE;
}
+
+ add_cb_count++;
+ if (add_cb_count == connection_count) {
+ g_main_loop_quit (loop);
+ }
+
g_object_unref (c);
}
@@ -60,6 +69,8 @@ import_cb (NMConnection *connection, gpo
g_object_unref (connection);
success = FALSE;
}
+
+ connection_count++;
}
int
@@ -90,6 +101,14 @@ main (int argc, char **argv)
settings = nm_remote_settings_new (bus);
nm_gconf_move_connections_to_system (import_cb, settings);
+ loop = g_main_loop_new (NULL, FALSE);
+
+ if (connection_count != 0)
+ {
+ g_main_loop_run (loop);
+ }
+
+ g_main_loop_unref (loop);
g_object_unref (settings);
dbus_g_connection_unref (bus);