[Pkg-xfce-commits] r4658 - in desktop/branches/experimental/xfce4-utils/debian: . patches
Yves-Alexis Perez
corsac at alioth.debian.org
Thu Dec 9 12:35:45 UTC 2010
Author: corsac
Date: 2010-12-09 12:35:44 +0000 (Thu, 09 Dec 2010)
New Revision: 4658
Added:
desktop/branches/experimental/xfce4-utils/debian/patches/02_pass-env-to-xfrun-daemon-through-dbus.patch
Modified:
desktop/branches/experimental/xfce4-utils/debian/changelog
desktop/branches/experimental/xfce4-utils/debian/control
desktop/branches/experimental/xfce4-utils/debian/patches/series
desktop/branches/experimental/xfce4-utils/debian/rules
Log:
- add build-dep on xfce4-dev-tools and libtool
- 02_pass-env-to-xfrun-daemon-through-dbus added, pass the environment of
the calling process to the xfrun daemon when starting it.
- run xdt-autogen after applying patch touching configure.in.
Modified: desktop/branches/experimental/xfce4-utils/debian/changelog
===================================================================
--- desktop/branches/experimental/xfce4-utils/debian/changelog 2010-12-09 10:59:03 UTC (rev 4657)
+++ desktop/branches/experimental/xfce4-utils/debian/changelog 2010-12-09 12:35:44 UTC (rev 4658)
@@ -10,21 +10,25 @@
- add build-dep on hardening-includes
- add back build-dep on libdbus-glib-1-dev for xfrun dbus support which
was dropped in 4.6 for no good reason.
+ - add build-dep on xfce4-dev-tools and libtool
* debian/patches:
- 01_xflock4-test-running-screensaver refreshed.
- 02_use-Xsessions.options-for-ssh-agent-handling dropped, Xfce has an
internal parameter so it can now be disabled there.
+ - 02_pass-env-to-xfrun-daemon-through-dbus added, pass the environment of
+ the calling process to the xfrun daemon when starting it.
* debian/rules:
- pick {C,LD}FLAGS from dpkg-buildflags.
- add hardening flags to {C,LD}FLAGS
- create /usr/share/xfce4 folder before installing vendor info.
+ - run xdt-autogen after applying patch touching configure.in.
[ Lionel Le Folgoc ]
* debian/rules: force $docdir to /usr/share/doc/xfce4-utils, and drop
$libexecdir, unneeded.
* debian/control: add myself to Uploaders.
- -- Yves-Alexis Perez <corsac at debian.org> Tue, 07 Dec 2010 12:05:17 +0100
+ -- Yves-Alexis Perez <corsac at debian.org> Thu, 09 Dec 2010 13:32:50 +0100
xfce4-utils (4.6.2-1) unstable; urgency=low
Modified: desktop/branches/experimental/xfce4-utils/debian/control
===================================================================
--- desktop/branches/experimental/xfce4-utils/debian/control 2010-12-09 10:59:03 UTC (rev 4657)
+++ desktop/branches/experimental/xfce4-utils/debian/control 2010-12-09 12:35:44 UTC (rev 4658)
@@ -6,7 +6,8 @@
Yves-Alexis Perez <corsac at debian.org>, Lionel Le Folgoc <mrpouit at gmail.com>
Build-Depends: debhelper (>= 7.0.50~), libxfce4util-dev (>= 4.7.0),
libxfce4ui-1-dev (>= 4.7.0), chrpath, intltool,
- libgtk2.0-dev (>= 2.10.0), hardening-includes, libdbus-glib-1-dev (>= 0.33)
+ libgtk2.0-dev (>= 2.10.0), hardening-includes, libdbus-glib-1-dev (>= 0.33),
+ xfce4-dev-tools, libtool
Standards-Version: 3.9.1
Homepage: http://www.xfce.org/
Vcs-Svn: svn://svn.debian.org/pkg-xfce/desktop/trunk/xfce4-utils/
Added: desktop/branches/experimental/xfce4-utils/debian/patches/02_pass-env-to-xfrun-daemon-through-dbus.patch
===================================================================
--- desktop/branches/experimental/xfce4-utils/debian/patches/02_pass-env-to-xfrun-daemon-through-dbus.patch (rev 0)
+++ desktop/branches/experimental/xfce4-utils/debian/patches/02_pass-env-to-xfrun-daemon-through-dbus.patch 2010-12-09 12:35:44 UTC (rev 4658)
@@ -0,0 +1,155 @@
+Description: pass environment to xfrun daemon when starting it through dbus
+Author: Nick Schermer <nick at xfce.org>
+Bug: http://bugzilla.xfce.org/show_bug.cgi?id=6927
+diff --git a/configure.in b/configure.in
+index 022cd39..84b89e0 100644
+--- a/configure.in
++++ b/configure.in
+@@ -44,8 +44,9 @@ AC_C_INLINE
+
+ dnl Check for standard header files
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS([errno.h unistd.h string.h stdlib.h])
+-AC_CHECK_FUNCS([daemon setsid])
++AC_CHECK_HEADERS([errno.h unistd.h string.h stdlib.h crt_externs.h])
++AC_CHECK_FUNCS([daemon setsid _NSGetEnviron])
++AC_CHECK_DECLS([environ])
+
+ dnl Check for X11 installed
+ XDT_CHECK_LIBX11_REQUIRE
+diff --git a/xfrun/xfrun-dbus.c b/xfrun/xfrun-dbus.c
+index 2aa751c..4557f4f 100644
+--- a/xfrun/xfrun-dbus.c
++++ b/xfrun/xfrun-dbus.c
+@@ -35,6 +35,9 @@
+ #ifdef HAVE_STDLIB_H
+ #include <stdlib.h>
+ #endif
++#ifdef HAVE_CRT_EXTERNS_H
++#include <crt_externs.h> /* for _NSGetEnviron */
++#endif
+
+ #ifdef HAVE_ERRNO_H
+ #include <errno.h>
+@@ -51,6 +54,14 @@
+
+ #include "xfrun-dialog.h"
+
++#ifdef HAVE__NSGETENVIRON
++/* for support under apple/darwin */
++#define environ (*_NSGetEnviron())
++#elif !HAVE_DECL_ENVIRON
++/* try extern if environ is not defined in unistd.h */
++extern gchar **environ;
++#endif
++
+ /**
+ * method: org.xfce.RunDialog.OpenDialog
+ * param: display_name (DBUS_TYPE_STRING)
+@@ -123,12 +134,15 @@ xfrun_handle_dbus_message(DBusConnection *connection,
+ DBusMessage *reply = NULL;
+ DBusError derror;
+ gchar *display_name = NULL, *cwd = NULL;
++ gchar **envp = NULL;
++ gint n_envp;
+
+ dbus_error_init(&derror);
+
+ if(!dbus_message_get_args(message, &derror,
+ DBUS_TYPE_STRING, &display_name,
+ DBUS_TYPE_STRING, &cwd,
++ DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &envp, &n_envp,
+ DBUS_TYPE_INVALID))
+ {
+ reply = dbus_message_new_error(message, RUNDIALOG_DBUS_ERROR_GENERAL,
+@@ -154,10 +168,13 @@ xfrun_handle_dbus_message(DBusConnection *connection,
+ TRUE);
+ xfrun_dialog_set_working_directory(XFRUN_DIALOG(dialog),
+ cwd);
++ xfrun_dialog_set_enviroment(XFRUN_DIALOG(dialog), envp);
+ } else {
+ dialog = static_dialog;
+ xfrun_dialog_set_working_directory(XFRUN_DIALOG(dialog),
+ cwd);
++ xfrun_dialog_set_enviroment(XFRUN_DIALOG(dialog), envp);
++
+ if(GTK_WIDGET_REALIZED(dialog)) {
+ gdk_x11_window_set_user_time(dialog->window,
+ gdk_x11_get_server_time(dialog->window));
+@@ -243,6 +260,7 @@ xfrun_show_dialog(void)
+ DBusMessage *result;
+ DBusError derror;
+ gchar *cwd, *display_name;
++ gchar **envp = (gchar **) environ;
+
+ dbus_error_init(&derror);
+ connection = dbus_bus_get(DBUS_BUS_SESSION, &derror);
+@@ -263,6 +281,8 @@ xfrun_show_dialog(void)
+ dbus_message_append_args(method,
+ DBUS_TYPE_STRING, &display_name,
+ DBUS_TYPE_STRING, &cwd,
++ DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &envp,
++ envp ? g_strv_length(envp) : 0,
+ DBUS_TYPE_INVALID);
+
+ g_free(display_name);
+diff --git a/xfrun/xfrun-dialog.c b/xfrun/xfrun-dialog.c
+index 30af751..96666e6 100644
+--- a/xfrun/xfrun-dialog.c
++++ b/xfrun/xfrun-dialog.c
+@@ -53,6 +53,7 @@ struct _XfrunDialogPrivate
+
+ gboolean destroy_on_close;
+ gchar *working_directory;
++ gchar **envp;
+
+ gchar *entry_val_tmp;
+ };
+@@ -257,6 +258,7 @@ xfrun_dialog_finalize(GObject *object)
+
+ g_free(dialog->priv->working_directory);
+ g_free(dialog->priv->entry_val_tmp);
++ g_strfreev(dialog->priv->envp);
+
+ if(dialog->priv->completion_model)
+ g_object_unref(G_OBJECT(dialog->priv->completion_model));
+@@ -524,7 +526,7 @@ xfrun_run_clicked(GtkWidget *widget,
+
+ result = (argv && gdk_spawn_on_screen(gscreen,
+ dialog->priv->working_directory,
+- argv, NULL, G_SPAWN_SEARCH_PATH,
++ argv, dialog->priv->envp, G_SPAWN_SEARCH_PATH,
+ xfrun_spawn_child_setup, NULL, NULL,
+ &error));
+
+@@ -690,6 +692,16 @@ xfrun_dialog_get_working_directory(XfrunDialog *dialog)
+ }
+
+ void
++xfrun_dialog_set_enviroment(XfrunDialog *dialog,
++ gchar **envp)
++{
++ g_return_if_fail(XFRUN_IS_DIALOG(dialog));
++
++ g_strfreev(dialog->priv->envp);
++ dialog->priv->envp = g_strdupv(envp);
++}
++
++void
+ xfrun_dialog_select_text(XfrunDialog *dialog)
+ {
+ gtk_editable_select_region(GTK_EDITABLE(XFRUN_DIALOG(dialog)->priv->entry),
+diff --git a/xfrun/xfrun-dialog.h b/xfrun/xfrun-dialog.h
+index 160234c..068253e 100644
+--- a/xfrun/xfrun-dialog.h
++++ b/xfrun/xfrun-dialog.h
+@@ -62,6 +62,9 @@ gboolean xfrun_dialog_get_destroy_on_close (XfrunDialog *dialog);
+ void xfrun_dialog_set_working_directory (XfrunDialog *dialog,
+ const gchar *working_directory);
+
++void xfrun_dialog_set_enviroment (XfrunDialog *dialog,
++ gchar **envp);
++
+ void xfrun_dialog_select_text (XfrunDialog *dialog);
+
+ G_CONST_RETURN gchar *xfrun_dialog_get_working_directory
Modified: desktop/branches/experimental/xfce4-utils/debian/patches/series
===================================================================
--- desktop/branches/experimental/xfce4-utils/debian/patches/series 2010-12-09 10:59:03 UTC (rev 4657)
+++ desktop/branches/experimental/xfce4-utils/debian/patches/series 2010-12-09 12:35:44 UTC (rev 4658)
@@ -1,3 +1,4 @@
01_xflock4-test-running-screensaver.patch
+02_pass-env-to-xfrun-daemon-through-dbus.patch
03_xfterm4-bug.patch
04_debianize-scripts.patch
Modified: desktop/branches/experimental/xfce4-utils/debian/rules
===================================================================
--- desktop/branches/experimental/xfce4-utils/debian/rules 2010-12-09 10:59:03 UTC (rev 4657)
+++ desktop/branches/experimental/xfce4-utils/debian/rules 2010-12-09 12:35:44 UTC (rev 4658)
@@ -10,6 +10,8 @@
CFLAGS+=$(HARDENING_CFLAGS)
override_dh_auto_configure:
+ find .pc -type f -name '*.c' -exec echo '{}' \; >> po/POTFILES.skip
+ NOCONFIGURE=1 xdt-autogen
dh_auto_configure -- --with-vendor-info=Debian --with-x \
--with-browser=midori --docdir=\$${prefix}/share/doc/xfce4-utils
@@ -24,5 +26,8 @@
`pwd`/debian/xfce4-utils/usr/bin/xfce4-about
chmod +x `pwd`/debian/xfce4-utils/etc/xdg/xfce4/xinitrc
+override_dh_clean:
+ rm -f po/POTFILES.skip
+
%:
dh $@
More information about the Pkg-xfce-commits
mailing list