Bringing the Cursor Back to Terminator

Terminator Screenshot Picture

In my switch from Fedora to Red Hat Enterprise Linux (RHEL) one of the things I lost was Terminator.  Even though it was in EPEL and installed without issue, the cursor wasn’t visible, making it hard to use.  For a while I put up with it.  After a while it drove me crazy so I fell back to Gnome Terminal.  And that was fine for a while until I started doing more command line things again and missed a working in Terminator so badly that I asked Google how to fix it.

It’s a bug in VTE

Wouldn’t you know, other people had the same problem as noted in bug 658774.   It turns out the problem is not with Terminator, but in the VTE package.

I’ve seen the problem on RHEL 6.0 and 6.1 and it looks to be fixed in RHEL 6.2.  It is presently available in the RHEL 6 Fastrack channel (if you have a RHEL subscription) as an update (login required to view).  I’d assume, but haven’t verified, that the same problem exists on CentOS 6.

If you are running CentOS and have the same problem or if you’d like to build a fixed package on RHEL yourself, here’s how.

Building a new VTE package with the fix

To build a new rpm with the fix you’ll need:

  • a non-privileged rpm build environment
  • the updated source rpm for VTE
  • required build tools and libraries

Set up a non-privileged rpm build environment

If you don’t have a local rpm build environment specified, these commands will create it for you in your home directory.  There are several ways to do this, I found this somewhere long ago (maybe it was an RHCE class?) and like it because it is simple. You should always build the rpms as a non-privileged user–not as root.

$ mkdir -p ~/rpmbuild/{BUILD,RPMS,S{OURCE,PEC,RPM}S}
$ echo "%_topdir $HOME/rpmbuild" > ~/.rpmmacros

Get the latest vte source rpm

$ wget http://ftp.redhat.com/pub/redhat/linux/enterprise/6Workstation/en/os/SRPMS/vte-0.25.1-7.el6.src.rpm

Install the tools and libraries you need to build

$ su -c 'yum install rpm-build yum-utils gcc'
$ su -c 'yum-builddep ./vte-0.25.1-7.el6.src.rpm'

Build the new package

$ rpmbuild --rebuild ./vte-0.25.1-7.el6.src.rpm

Install your new vte rpm from ~/rpmbuild/RPMS

$ su -c 'yum localinstall /home/nopriv/rpmbuild/RPMS/x86_64/vte-0.25.1-7.el6.x86_64.rpm'

Run Terminator and you should be back in business.

6 Responses to Bringing the Cursor Back to Terminator

  1. As the maintainer of terminator in EPEL6 I should point out that I put an option in terminator to turn off custom colors which works around this bug.

  2. Had the same problem since I switched to RHEL6 on my workstation but had no time and knowledge to fix it.

    Thanks John!

    There is a small typo in your instruction. Should be ‘yum-builddep’ instead of ‘yum-builddeps’.

  3. Pingback: Booting a Virtual Guest That Will Not Resume | John Poelstra

  4. Thank you SO MUCH for posting this. I had spent hours and hours looking for a real fix to this issue. I love Terminator, but on one of my systems I couldn’t get the cursor to show up, and that caused me not to be able to do anything, like use vim.

    This is the best article I’ve read in weeks!

    Thanks for being so concise and helpful.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>