[nemo] Rebuilt for libgnome-desktop soname bump
leigh123linux
leigh123linux at fedoraproject.org
Sun Feb 24 15:18:11 UTC 2013
commit d48b8ecc75deecf0d48a38a369fb7387baecebad
Author: leigh123linux <leigh123linux at googlemail.com>
Date: Sun Feb 24 15:18:04 2013 +0000
Rebuilt for libgnome-desktop soname bump
- Patch for gnome-desktop changes
447d2ad6944afd94434a774b28f8c6e8274955fe.patch | 174 ++++++++++++++++++++++++
nemo.spec | 5 +
2 files changed, 179 insertions(+), 0 deletions(-)
---
diff --git a/447d2ad6944afd94434a774b28f8c6e8274955fe.patch b/447d2ad6944afd94434a774b28f8c6e8274955fe.patch
new file mode 100644
index 0000000..0c58ddc
--- /dev/null
+++ b/447d2ad6944afd94434a774b28f8c6e8274955fe.patch
@@ -0,0 +1,174 @@
+From 447d2ad6944afd94434a774b28f8c6e8274955fe Mon Sep 17 00:00:00 2001
+From: William Jon McCann <jmccann at redhat.com>
+Date: Fri, 15 Feb 2013 18:30:39 +0000
+Subject: eel: use G_APP_INFO_CREATE_NEEDS_TERMINAL to run command in terminal
+
+---
+diff --git a/eel/eel-gnome-extensions.c b/eel/eel-gnome-extensions.c
+index eaddfe5..e7b8ecb 100644
+--- a/eel/eel-gnome-extensions.c
++++ b/eel/eel-gnome-extensions.c
+@@ -31,153 +31,19 @@
+ #include "eel-gnome-extensions.h"
+
+ #include <gtk/gtk.h>
+-#include <libgnome-desktop/gnome-desktop-utils.h>
+
+ /* Return a command string containing the path to a terminal on this system. */
+
+-static char *
+-try_terminal_command (const char *program,
+- const char *args)
+-{
+- char *program_in_path, *quoted, *result;
+-
+- if (program == NULL) {
+- return NULL;
+- }
+-
+- program_in_path = g_find_program_in_path (program);
+- if (program_in_path == NULL) {
+- return NULL;
+- }
+-
+- quoted = g_shell_quote (program_in_path);
+- g_free (program_in_path);
+- if (args == NULL || args[0] == '\0') {
+- return quoted;
+- }
+- result = g_strconcat (quoted, " ", args, NULL);
+- g_free (quoted);
+- return result;
+-}
+-
+-static char *
+-try_terminal_command_argv (int argc,
+- char **argv)
+-{
+- GString *string;
+- int i;
+- char *quoted, *result;
+-
+- if (argc == 0) {
+- return NULL;
+- }
+-
+- if (argc == 1) {
+- return try_terminal_command (argv[0], NULL);
+- }
+-
+- string = g_string_new (argv[1]);
+- for (i = 2; i < argc; i++) {
+- quoted = g_shell_quote (argv[i]);
+- g_string_append_c (string, ' ');
+- g_string_append (string, quoted);
+- g_free (quoted);
+- }
+- result = try_terminal_command (argv[0], string->str);
+- g_string_free (string, TRUE);
+-
+- return result;
+-}
+-
+-static char *
+-get_terminal_command_prefix (gboolean for_command)
+-{
+- int argc;
+- char **argv;
+- char *command;
+- guint i;
+- static const char *const commands[][3] = {
+- { "gnome-terminal", "-x", "" },
+- { "dtterm", "-e", "-ls" },
+- { "nxterm", "-e", "-ls" },
+- { "color-xterm", "-e", "-ls" },
+- { "rxvt", "-e", "-ls" },
+- { "xterm", "-e", "-ls" },
+- };
+-
+- /* Try the terminal from preferences. Use without any
+- * arguments if we are just doing a standalone terminal.
+- */
+- argc = 0;
+- argv = g_new0 (char *, 1);
+- gnome_desktop_prepend_terminal_to_vector (&argc, &argv);
+-
+- command = NULL;
+- if (argc != 0) {
+- if (for_command) {
+- command = try_terminal_command_argv (argc, argv);
+- } else {
+- /* Strip off the arguments in a lame attempt
+- * to make it be an interactive shell.
+- */
+- command = try_terminal_command (argv[0], NULL);
+- }
+- }
+-
+- while (argc != 0) {
+- g_free (argv[--argc]);
+- }
+- g_free (argv);
+-
+- if (command != NULL) {
+- return command;
+- }
+-
+- /* Try well-known terminal applications in same order that gmc did. */
+- for (i = 0; i < G_N_ELEMENTS (commands); i++) {
+- command = try_terminal_command (commands[i][0],
+- commands[i][for_command ? 1 : 2]);
+- if (command != NULL) {
+- break;
+- }
+- }
+-
+- return command;
+-}
+-
+-static char *
+-eel_gnome_make_terminal_command (const char *command)
+-{
+- char *prefix, *quoted, *terminal_command;
+-
+- if (command == NULL) {
+- return get_terminal_command_prefix (FALSE);
+- }
+- prefix = get_terminal_command_prefix (TRUE);
+- quoted = g_shell_quote (command);
+- terminal_command = g_strconcat (prefix, " /bin/sh -c ", quoted, NULL);
+- g_free (prefix);
+- g_free (quoted);
+- return terminal_command;
+-}
+-
+ void
+ eel_gnome_open_terminal_on_screen (const char *command,
+ GdkScreen *screen)
+ {
+- char *command_line;
+ GAppInfo *app;
+ GdkAppLaunchContext *ctx;
+ GError *error = NULL;
+ GdkDisplay *display;
+
+- command_line = eel_gnome_make_terminal_command (command);
+- if (command_line == NULL) {
+- g_message ("Could not start a terminal");
+- return;
+- }
+-
+- app = g_app_info_create_from_commandline (command_line, NULL, 0, &error);
++ app = g_app_info_create_from_commandline (command, NULL, G_APP_INFO_CREATE_NEEDS_TERMINAL, &error);
+
+ if (app != NULL && screen != NULL) {
+ display = gdk_screen_get_display (screen);
+@@ -195,6 +61,4 @@ eel_gnome_open_terminal_on_screen (const char *command,
+
+ g_error_free (error);
+ }
+-
+- g_free (command_line);
+ }
+--
+cgit v0.9.1
diff --git a/nemo.spec b/nemo.spec
index 617a5c9..4ee3919 100644
--- a/nemo.spec
+++ b/nemo.spec
@@ -47,6 +47,9 @@ BuildRequires: gnome-themes-standard
Requires: nemo-extensions%{?_isa} = %{version}-%{release}
Patch0: remove_open_terminal.patch
+# nautilus upstream commit
+# http://git.gnome.org/browse/nautilus/commit/?id=447d2ad6944afd94434a774b28f8c6e8274955fe
+Patch1: 447d2ad6944afd94434a774b28f8c6e8274955fe.patch
%description
@@ -88,6 +91,7 @@ Nemo theme fix for Adwaita
%prep
%setup -q -n linuxmint-%{name}-%{_internal_version}
%patch0 -p1
+%patch1 -p1
NOCONFIGURE=1 ./autogen.sh
%build
@@ -188,6 +192,7 @@ fi
%changelog
* Sun Feb 24 2013 Leigh Scott <leigh123linux at googlemail.com> - 1.1.2-4
- Rebuilt for libgnome-desktop soname bump
+- Patch for gnome-desktop changes
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.1.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
More information about the scm-commits
mailing list