Merge lp:~darkxst/ubuntu/saucy/nautilus/lp1184812 into lp:ubuntu/saucy/nautilus

Proposed by Tim Lunn
Status: Merged
Merge reported by: Luke Yelavich
Merged at revision: not available
Proposed branch: lp:~darkxst/ubuntu/saucy/nautilus/lp1184812
Merge into: lp:ubuntu/saucy/nautilus
Diff against target: 203 lines (+183/-0)
3 files modified
debian/changelog (+7/-0)
debian/patches/git_eel_needs_terminal.patch (+175/-0)
debian/patches/series (+1/-0)
To merge this branch: bzr merge lp:~darkxst/ubuntu/saucy/nautilus/lp1184812
Reviewer Review Type Date Requested Status
Sebastien Bacher Needs Fixing
Ubuntu branches Pending
Review via email: mp+166002@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Sebastien Bacher (seb128) wrote :

Thanks for your work, please look at the debian/control (or apt-get source output), the packaging Vcs is lp:~ubuntu-desktop/nautilus/ubuntu and is debian/ dir only (not full source)

review: Needs Fixing

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2013-04-16 12:17:18 +0000
3+++ debian/changelog 2013-05-28 10:15:31 +0000
4@@ -1,3 +1,10 @@
5+nautilus (1:3.6.3-0ubuntu17) saucy; urgency=low
6+
7+ * Rebuild for gnome-desktop 3.8 transition (LP: #1184812)
8+ - debian/patches/git_eel_needs_terminal.patch
9+
10+ -- Tim Lunn <tim@feathertop.org> Tue, 28 May 2013 10:59:40 +1000
11+
12 nautilus (1:3.6.3-0ubuntu16) raring; urgency=low
13
14 * debian/patches/git_rank_exact_matches_higher.patch,
15
16=== added file 'debian/patches/git_eel_needs_terminal.patch'
17--- debian/patches/git_eel_needs_terminal.patch 1970-01-01 00:00:00 +0000
18+++ debian/patches/git_eel_needs_terminal.patch 2013-05-28 10:15:31 +0000
19@@ -0,0 +1,175 @@
20+From 447d2ad6944afd94434a774b28f8c6e8274955fe Mon Sep 17 00:00:00 2001
21+From: William Jon McCann <jmccann@redhat.com>
22+Date: Fri, 15 Feb 2013 18:30:39 +0000
23+Subject: eel: use G_APP_INFO_CREATE_NEEDS_TERMINAL to run command in terminal
24+
25+---
26+diff --git a/eel/eel-gnome-extensions.c b/eel/eel-gnome-extensions.c
27+index eaddfe5..e7b8ecb 100644
28+--- a/eel/eel-gnome-extensions.c
29++++ b/eel/eel-gnome-extensions.c
30+@@ -31,153 +31,19 @@
31+ #include "eel-gnome-extensions.h"
32+
33+ #include <gtk/gtk.h>
34+-#include <libgnome-desktop/gnome-desktop-utils.h>
35+
36+ /* Return a command string containing the path to a terminal on this system. */
37+
38+-static char *
39+-try_terminal_command (const char *program,
40+- const char *args)
41+-{
42+- char *program_in_path, *quoted, *result;
43+-
44+- if (program == NULL) {
45+- return NULL;
46+- }
47+-
48+- program_in_path = g_find_program_in_path (program);
49+- if (program_in_path == NULL) {
50+- return NULL;
51+- }
52+-
53+- quoted = g_shell_quote (program_in_path);
54+- g_free (program_in_path);
55+- if (args == NULL || args[0] == '\0') {
56+- return quoted;
57+- }
58+- result = g_strconcat (quoted, " ", args, NULL);
59+- g_free (quoted);
60+- return result;
61+-}
62+-
63+-static char *
64+-try_terminal_command_argv (int argc,
65+- char **argv)
66+-{
67+- GString *string;
68+- int i;
69+- char *quoted, *result;
70+-
71+- if (argc == 0) {
72+- return NULL;
73+- }
74+-
75+- if (argc == 1) {
76+- return try_terminal_command (argv[0], NULL);
77+- }
78+-
79+- string = g_string_new (argv[1]);
80+- for (i = 2; i < argc; i++) {
81+- quoted = g_shell_quote (argv[i]);
82+- g_string_append_c (string, ' ');
83+- g_string_append (string, quoted);
84+- g_free (quoted);
85+- }
86+- result = try_terminal_command (argv[0], string->str);
87+- g_string_free (string, TRUE);
88+-
89+- return result;
90+-}
91+-
92+-static char *
93+-get_terminal_command_prefix (gboolean for_command)
94+-{
95+- int argc;
96+- char **argv;
97+- char *command;
98+- guint i;
99+- static const char *const commands[][3] = {
100+- { "gnome-terminal", "-x", "" },
101+- { "dtterm", "-e", "-ls" },
102+- { "nxterm", "-e", "-ls" },
103+- { "color-xterm", "-e", "-ls" },
104+- { "rxvt", "-e", "-ls" },
105+- { "xterm", "-e", "-ls" },
106+- };
107+-
108+- /* Try the terminal from preferences. Use without any
109+- * arguments if we are just doing a standalone terminal.
110+- */
111+- argc = 0;
112+- argv = g_new0 (char *, 1);
113+- gnome_desktop_prepend_terminal_to_vector (&argc, &argv);
114+-
115+- command = NULL;
116+- if (argc != 0) {
117+- if (for_command) {
118+- command = try_terminal_command_argv (argc, argv);
119+- } else {
120+- /* Strip off the arguments in a lame attempt
121+- * to make it be an interactive shell.
122+- */
123+- command = try_terminal_command (argv[0], NULL);
124+- }
125+- }
126+-
127+- while (argc != 0) {
128+- g_free (argv[--argc]);
129+- }
130+- g_free (argv);
131+-
132+- if (command != NULL) {
133+- return command;
134+- }
135+-
136+- /* Try well-known terminal applications in same order that gmc did. */
137+- for (i = 0; i < G_N_ELEMENTS (commands); i++) {
138+- command = try_terminal_command (commands[i][0],
139+- commands[i][for_command ? 1 : 2]);
140+- if (command != NULL) {
141+- break;
142+- }
143+- }
144+-
145+- return command;
146+-}
147+-
148+-static char *
149+-eel_gnome_make_terminal_command (const char *command)
150+-{
151+- char *prefix, *quoted, *terminal_command;
152+-
153+- if (command == NULL) {
154+- return get_terminal_command_prefix (FALSE);
155+- }
156+- prefix = get_terminal_command_prefix (TRUE);
157+- quoted = g_shell_quote (command);
158+- terminal_command = g_strconcat (prefix, " /bin/sh -c ", quoted, NULL);
159+- g_free (prefix);
160+- g_free (quoted);
161+- return terminal_command;
162+-}
163+-
164+ void
165+ eel_gnome_open_terminal_on_screen (const char *command,
166+ GdkScreen *screen)
167+ {
168+- char *command_line;
169+ GAppInfo *app;
170+ GdkAppLaunchContext *ctx;
171+ GError *error = NULL;
172+ GdkDisplay *display;
173+
174+- command_line = eel_gnome_make_terminal_command (command);
175+- if (command_line == NULL) {
176+- g_message ("Could not start a terminal");
177+- return;
178+- }
179+-
180+- app = g_app_info_create_from_commandline (command_line, NULL, 0, &error);
181++ app = g_app_info_create_from_commandline (command, NULL, G_APP_INFO_CREATE_NEEDS_TERMINAL, &error);
182+
183+ if (app != NULL && screen != NULL) {
184+ display = gdk_screen_get_display (screen);
185+@@ -195,6 +61,4 @@ eel_gnome_open_terminal_on_screen (const char *command,
186+
187+ g_error_free (error);
188+ }
189+-
190+- g_free (command_line);
191+ }
192+--
193+cgit v0.9.1
194+
195
196=== modified file 'debian/patches/series'
197--- debian/patches/series 2013-04-16 12:17:18 +0000
198+++ debian/patches/series 2013-05-28 10:15:31 +0000
199@@ -34,3 +34,4 @@
200 git_rank_exact_matches_higher.patch
201 git_rank_reversed.patch
202 git_search_dont_follow_symlinks.patch
203+git_eel_needs_terminal.patch

Subscribers

People subscribed via source and target branches

to all changes: