I have some panel applications that launch terminals, but when I click on them, they say xterm failed. Well yeah, xterm isn't installed, nor do I want it.

I want mate-terminal to come up instead. How do I configure that to happen?

This is Ubuntu server 12.04 with a mate desktop. I have MATE Terminal 1.6.1 installed.

Here is the error:

enter image description here


$ echo $TERM

I tried :

export TERM=mate-terminal

But the change was not lasting, nor did it effect the panel launcher.


~$ sudo update-alternatives --config x-terminal-emulator  
There is only one alternative in link group x-terminal-emulator: /usr/bin/mate-terminal
Nothing to configure.

Not sure what list it is, but this doesn't seem to work. Ok, so Ill try this command:

$ sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator mate-terminal /usr/bin/mate-terminal 50
update-alternatives: priority must be an integer

Usage: update-alternatives [<option> ...] <command>

  --install <link> <name> <path> <priority>
    [--slave <link> <name> <path>] ...
                           add a group of alternatives to the system.
  --remove <name> <path>   remove <path> from the <name> group alternative.
  --remove-all <name>      remove <name> group from the alternatives system.
  --auto <name>            switch the master link <name> to automatic mode.
  --display <name>         display information about the <name> group.
  --query <name>           machine parseable version of --display <name>.
  --list <name>            display all targets of the <name> group.
  --get-selections         list master alternative names and their status.
  --set-selections         read alternative status from standard input.
  --config <name>          show alternatives for the <name> group and ask the
                           user to select which one to use.
  --set <name> <path>      set <path> as alternative for <name>.
  --all                    call --config on all alternatives.

<link> is the symlink pointing to /etc/alternatives/<name>.
  (e.g. /usr/bin/pager)
<name> is the master name for this link group.
  (e.g. pager)
<path> is the location of one of the alternative target files.
  (e.g. /usr/bin/less)
<priority> is an integer; options with higher numbers have higher priority in
  automatic mode.

  --altdir <directory>     change the alternatives directory.
  --admindir <directory>   change the administrative directory.
  --log <file>             change the log file.
  --force                  allow replacing files with alternative links.
  --skip-auto              skip prompt for alternatives correctly configured
                           in automatic mode (relevant for --config only)
  --verbose                verbose operation, more output.
  --quiet                  quiet operation, minimal output.
  --help                   show this help message.
  --version                show the version.
~$ sudo update-alternatives --set /usr/bin/x-terminal-emulator x-terminal-emulator mate-terminal /usr/bin/mate-terminal 50

So then, "--install" doesnt seem to be an option. ok, maybe "--set" is what was meant... but that doesnt work right.

I also looked in system>preferences>preferred applications where mate terminal is listed as the default terminal.

here is uname -a to confirm my Ubuntu usage:

Linux X 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:42:40 UTC 2014 i686 i686 i386 GNU/Linux
  • it depends on the panel applications you use... maybe you can set it in the preferences.... but i think they usually try to start the default terminal - have you tried to update this? sudo update-alternatives --config x-terminal-emulator – Wolfgang Feb 11 '14 at 20:55
  • it says $ sudo update-alternatives --config x-terminal-emulator There is only one alternative in link group x-terminal-emulator: /usr/bin/mate-terminal Nothing to configure. – j0h Feb 11 '14 at 21:39
  • are you running Mint or ubuntu + Mate. According to this - this is a very specific Mint issue: github.com/mate-desktop/mate-panel/issues/57 – fossfreedom Feb 13 '14 at 21:36
  • I am running ubuntu, though i just observed the same problem on a friends computer, where he is running Mint. – j0h Feb 13 '14 at 21:40
  • 2
    @j0h, Seth's answer seems the correct one. But I would like to ask you if you can test my answer first, see if it works. Run sudo rm /usr/bin/xterm to remove it. Then use Seth's solution. I just want to see, if my thinking was in place. – user.dz Feb 14 '14 at 13:17

I was tooling around in synaptic, which I installed later to help me figure this out.

I noticed GNOME-terminal wasn't installed, so I installed it. Suddenly my links work properly now.

To be certain, I uninstalled it, and deleted the link I made recommended by Sneetsher

Once uninstalled I was getting the same errors. When I install GNOME-terminal again, it works as expected.

enter image description here

  • 2
    You are right, mate-terminal does not have a wrapper. I have checked a fresh install it uses gnome-terminal.wrapper provided by gnome-terminal package. Also x-terminal-emulator is pointing to that wrapper. – user.dz Feb 17 '14 at 21:12

Try running:

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

Find mate-terminal in the list and enter the number beside it.

If mate-terminal is not in the list you can add it with:

sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator mate-terminal /path/to/executable 50

Where /path/to/executable is the path where mate-terminal resides.

The $TERM variable doesn't tell you what terminal emulator you're using, it just tells you what type of emulator you are using. Most emulators are xterm type.

  • sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator mate-terminal /usr/bin/mate-terminal 50 This doesnt seem to have worked, or rather it seems to have caused other problems? (commands like clear, arent working now??). My shell is behaving oddly now though. How might I undo this change? – j0h Feb 15 '14 at 15:08
  • @j0h That is strange. Did my first command not work for you? Please confirm that you are indeed on Ubuntu and not Mint. I'll test this out myself (I'll have to use a different terminal though). Can you be more specific about the problem? – Seth Feb 16 '14 at 20:24
  • I am on Ubuntu 12.04 server kernel with mate installed. @Seth – j0h Feb 17 '14 at 3:15
  • @j0h Was something wrong with my first command? Did you replace /path/to/executable with the appropriate file? – Seth Feb 17 '14 at 3:22
  • yes, i replaced that with the output of "$which mate-terminal" /usr/bin/mate-terminal. Hay, what is the "50"? – j0h Feb 17 '14 at 19:35

Old Non Working answer, Make a link:

sudo ln -s /usr/bin/mate-terminal /usr/bin/xterm

It didn't work because mate-terminal is not a drop-in replacement for xterm it needs an xterm wrapper. I think is the same problem with x-terminal-emulator solution, which should point to xterm replacement terminal (or an xterm wrapper).

What it seems happening here, if x-terminal-emulator is not set, windows manager look for xterm which is the standard terminal for Xorg (in this case, not installed).

A bug report report was already filled against Mint 14 for missing wrapper, lp-bug#1238964 . Also upstream bug report Mint 13 github-issue#9, stated as fixed.

I could confirm that Mint 16 contains mate-terminal.wrapper.

For earlier releases:

  • mate-terminal.wrapper could be downloaded from source repository of mate-terminal, set it up using update-alternatives as mentioned in Seth's solution

  • Or just install other alternative desktops terminal which have a wrapper like gnome-terminal, xfce4-terminal,.. as j0h's answer. Any of them will configure the x-terminal-emulator to its own wrapper.

  • /usr/bin/xterm doesn't exist, so will this still work? – Seth Feb 14 '14 at 1:35
  • @Seth ,Failed to execute child process, If the application calls xterm as sub process, this will work. What confirm this is No such file or directory, the application does call xterm command as sub/child process. This what I'm thinking of. – user.dz Feb 14 '14 at 8:27
  • 1
    That is interesting. I was more referring to creating a link to a non existent location, but maybe I don't understand how links work. – Seth Feb 14 '14 at 17:59
  • 1
    Well, the bounty needs to go someplace, and I see you made a post on launchpad for a fix to the bug, so Ill award bounty for that. bugs.launchpad.net/linuxmint/+bug/1238964 – j0h Feb 19 '14 at 14:58
  • 1
    @j0h, I will update my answer. To be more relevant to the question problem and the mentioned bug. Thank you – user.dz Feb 19 '14 at 15:07

This fixed it for me in Mate 15.05:

sudo apt-get install GNOME-terminal

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.