You are not logged in.
I'm running gnome and have had working for some time now nautilus-open-terminal, with it set to open terminator instead of gnome-terminal. Yesterday I upgrade nautilus-open-terminal.
[2013-03-03 10:40] upgraded nautilus-open-terminal (0.19-3 -> 0.20-1)
Now it is opening gnome-terminal instead of terminator. I've tried a few things to fix this. The first was how I initially set terminator to open, by opening dconf-editor and navigating to org.gnome.desktop.applications.terminal and setting exec to terminator. This was already set, so I tried setting it to default and resetting it. No luck.
I also tried setting it via gsettings with:
gsettings set org.gnome.desktop.default-applications.terminal exec /usr/bin/terminator
I still get gnome-terminal and not terminator. Is there some way in which the newer version looks for which terminal to open that is now different than before? I suppose I could roll back that upgrade and see if that fixes things, but I was curious if anyone knew what was happening here.
Thanks,
-Koopa
Last edited by Koopa (2013-03-05 00:17:29)
Offline
Hi Koopa.
Unfortunately, there's not much you can do about that. Only solution now would be to patch GLib itself.
The "guilties" here are the commit below in nautilus-open-terminal and glib itself.
commit ce56165ed58b225804f50a01dc101097b7892efd
Author: Kalev Lember <kalevlember@gmail.com>
Date: Wed Feb 27 21:05:47 2013 +0100
Port the terminal launching to GAppInfo
... dropping the use of eel-gnome-extensions and libgnome-desktop.
This fixes the build with libgnome-desktop 3.7.90 where the terminal
launching functionality was dropped. Instead, we use GAppInfo with the
G_APP_INFO_CREATE_NEEDS_TERMINAL flag as a replacement.
In Glib, the code that prepends the terminal command line is in function prepend_terminal_to_vector on file gio/gdesktopappinfo.c. And as you can see, there is no terminator there.
check = g_find_program_in_path ("gnome-terminal");
if (check != NULL)
{
term_argv[0] = check;
/* Note that gnome-terminal takes -x and
* as -e in gnome-terminal is broken we use that. */
term_argv[1] = g_strdup ("-x");
}
else
{
if (check == NULL)
check = g_find_program_in_path ("nxterm");
if (check == NULL)
check = g_find_program_in_path ("color-xterm");
if (check == NULL)
check = g_find_program_in_path ("rxvt");
if (check == NULL)
check = g_find_program_in_path ("xterm");
if (check == NULL)
check = g_find_program_in_path ("dtterm");
if (check == NULL)
{
check = g_strdup ("xterm");
g_warning ("couldn't find a terminal, falling back to xterm");
}
term_argv[0] = check;
term_argv[1] = g_strdup ("-e");
}
Me too, this bugs me a lot.
If I wasn't too busy with another project, I would try to submit a proposal to freedesktop.org to "standardize" a way to find the default terminal, hoping that gnome devs would consider to implement it.
Offline