How to configure gnome-terminal to use xterm-256color by default?

Solution 1:

Copying my answer from the same question @javabrett pointed out:

You were well advised not to change your startup scripts, specially ~/.bashrc. Any "terminal detection" using current $TERM or $COLORTERM in ~/.profile is merely a guess, and may, as you said, cause trouble when using other terminals (say, Putty or xterm). The terminal emulator is supposed to set $TERM, and this should not be changed from within the shell.

Gnome terminal, AFAIK, does not offer a configuration to change its TERM, but it does allow you to change your startup command, and that's all you need. Here is the trick:

Profile Preferences => Title and Command => Run a custom command instead of my shell

Then use the following command:

env TERM=xterm-256color /bin/bash

Just replace /bin/bash with your preferred shell if it's different. And no, you can't use "$SHELL" in that line for shell auto-detection ;) You have to hard-code it

Solution 2:

Beginning with gnome-terminal version 3.16, it defaults to TERM=xterm-256color.

Solution 3:

There's a good answer explaining how gnome-terminal doesn't allow TERM to be defaulted via its settings over at askubuntu.

It suggests that this is a compile-time option, so it appears that setting TERM in a shell profile or startup script is the best and only option. You might create a wrapper script or alias if you prefer.