Launcher 'Application in Terminal' uses mate-terminal

Creating a panel or desktop launcher of type: “Application in Terminal” has had some strangeness for quite a while. I just found 16.04 (beta 2) has xterm default installed so it gets used. This may be a good solution for many reasons, but can we get mate-terminal to run, instead?

I discovered the problem is a glib interpretation of the .desktop launcher category for the terminal - so a little difficult to fix. It will execute xterm, if present, and others including gnome-terminal but not mate-terminal (yet?).

There’s many solutions, including forgetting the “Application in Terminal” altogether and just run mate-terminal with the -e option but I wanted to have my cake and eat it, too. And it’s a one-time command:

sudo ln /usr/bin/mate-terminal /usr/bin/gnome-terminal

Viola! This creates a gnome-terminal hardlink pointing to mate-terminal. You will, of course, get an error if gnome-terminal happens to be installed but then you’d probably be happy with gnome-terminal already and not doing this. :slight_smile:

All Comments Welcomed. Got a simpler solution?


We’ve (MATE team) raised this issue upstream but the developers are not interested in our suggestions :cry:

Once that bit of code is found, maybe you can have it run x-terminal-emulator instead of mate-terminal so whatever is defined as the preferred terminal for x-terminal-emulator opens instead?

I know that’s a bit much for some people, but it would ensure people choose the terminal they want to use across the entire system.

We actually requested x-terminal-emulator during the discussion. Also rejected because upstream consider it distro specific.

1 Like

I see in 16.04 xterm is now a dependent of both ubuntu-mate-core and ubuntu-mate-desktop. For this exact reason? I’m guessing It’s better than breaking appllcation-in-terminal.

Hi Bill

Ubuntu-mate-core and ubuntu-mate-desktop are meta packages and not really a dependency issue.

Meta packages can be removed



Distro-specific? What absolute bollocks! Doesn’t anybody know their damn history?! xdg-utils was part of the Portland project and is headed by developers for both GNOME and KDE! Excuse my language, but somebody in upstream needs to get their head out of their ass and wipe the feces off their face so they can see a little more clearly!

######If you can’t tell, I’m a little bit incensed. Just a little.


I have just went to this problem, but forgot to use search before asking.

I'll recommend to make symlink to /usr/local as it is not maintained by APT. So the command will be the following:

sudo ln -s /usr/bin/mate-terminal /usr/local/bin/gnome-terminal

Tested on 4 different machines running Ubuntu MATE 16.04 LTS, 18.04 LTS and 19.04.


Uh, mind if I ask why one couldn't uh, just uh, replace every instance of mate-terminal or whatever with x-terminal-emulator as I've written a guide about before?

I do not get the problem you are solving.

But I think that we can set default terminal application for MATE in Preferred Applications ( mate-default-applications-properties), System tab, Terminal Emulator section:


(but it will not work for launchers with Terminal=true in older UM versions)

Or system wide by using

sudo update-alternatives --config x-terminal-emulator

The problem is inconsistent terminal. Especially if using MATE Menu (not Brisk Menu) which opens mate-terminal by default and provides no GUI to change it.

I am not sure about the new Super + T function I've heard about. I presume it will use default provided in MATE's preferred applications. (I hope.)

And what if one chooses to change the terminal in use? It seems way more simple forcing everything to lean on x-terminal-emulator (even though I have to make an application shortcut for MATE Menu Preferred Applications to pick up) then it does to change the hardcoded terminal and the one in Preferred Applications. (Which is exactly what I do, hence why I've written about it.)

I can confirm it, reported bug 1873750.

Not at this time. It is hard-coded, you need to change vi with dconf-editor or gsettings