Raspberry Pi 4 - Terminal Emulators

Raspberry Pi 4: Chronicling the Desktop Experience – Terminal Emulators – Week 35

Last Updated on December 29, 2021

This is a weekly blog about the Raspberry Pi 4 (“RPI4”), the latest product in the popular Raspberry Pi range of computers.

For this week’s blog, I decided to survey terminal emulators. A terminal emulator is computer software which emulates a dumb video terminal within some other display architecture.

My favourite terminal emulator is Hyper. Even though it’s built with web technologies (read Electron and TypeScript), it’s really fast. But that’s only my personal preference.

If you spend any time at the command line, a good terminal emulator helps make it a better experience. I traversed through all of the 22 programs highlighted in this Group Test and investigated the position from an RPI4 perspective.

I’ve summarized my findings in the table below.

TerminalPackageComments
AlacrittyNOFails to compile when building with cargo. There is a snap package available, but this doesn't run.
TerminusNOFails to compile as peer dependencies aren't satisfied.
HyperNOFails to compile.
urxvtYES
Version 9.22 (released Jan 2016). This is the latest version.
TilixYESVersion 1.8.9 (released Jan 2019). Latest version is 1.9.3.
KittyYESFails to run, as Kitty requires working OpenGL 3.3 drivers.
GuakeYESVersion 3.4.0 (released Oct 2018). Latest version is 3.7.0.
TermiteNOSuccess in compiling. The steps are detailed at the end.
TerminatorYES
Version 1.91 (released Feb 2017). This is the latest version.
stNOVery straightforward to compile
xtermYES
Version 344 (released May 2019). Latest version is 356.
TildaYESVersion: 1.4.1 (released Feb 2018). Latest version is 1.5.0.
ExtratermNOFails to compile.
GNOME TerminalYES
Version 3.30.2 (released Oct 2018). Latest version is 3.36.2.
DomTermNORepository only has version 2.0.3 of libwebsockets. Compiled the latest version successfully. But DomTerm itself fails to compile.
Xfce TerminalYESVersion 0.8.7.4 (released May 2018). Latest release is 0.8.9.2.
TerminologyYESVersion 1.3.2 (released Dec 2018). Latest release is 1.7.0.
KonsoleYESVersion 18.04.0 (released April 2018). Latest release is 20.04.2.
YakuakeYESVersion: 3.0.5 (released March 2018). Latest release is 20.04.2.
SakuraYESVersion 3.6.0 (released May 2018). Latest release is 3.7.1.
ROXTermYESVersion: 3.3.2 (released Jan 2016). This is the latest version.
LXTerminalYESVersion 0.3.2 (released Sep 2018). This is the latest version.

As the table shows, the vast majority of the programs have a package in the Raspberry Pi OS’s repositories. Disappointingly, there are no packages for 3 of the highest rated terminal emulators (Alacritty, Terminus, and Hyper). Despite a package present for Kitty, it doesn’t run on the RPI4. Kitty requires working OpenGL 3.3 drivers, which the RPI4 doesn’t have. And trying to fool Kitty that it does (MESA_GL_VERSION_OVERRIDE=3.3) was never going to work.

For all the terminal emulators without a package, I tried to compile the source. I’m definitely not an expert at compiling software. And I acknowledge that a few of the programs probably won’t ever work on the RPI4.

Despite a fair amount of effort, I wasn’t successful in compiling Alacritty, Terminus, Hyper, Extraterm, or DomTerm. I got close with a few of them, but it was a frustrating experience. If you’ve managed to compile any of these programs, I’d be delighted to learn how. There’s a comments facility at the bottom of this article.

I compiled st and termite, the former was a trivial exercise. Compiling termite was a little more involved (the steps taken are listed at the end of this article). I didn’t have time to try compiling programs which are supported in the repositories even though many of the packages are old versions.

Here’s a chart showing the memory footprint of the terminal emulators. All of the terminal emulators have tiny memory footprints. There’ll be no problem having multiple terminals running whatever the model of the RPI4.

RPI4 - Terminal-Emulators - Memory footprint


Compiling Termite

First, we need to install yarn, the gperf package, clone libvte’s GitHub repository, and compile the source code, with the commands:

$ npm install -g yarn
$ sudo apt install gperf
$ git clone https://github.com/thestinger/vte-ng
$ cd vte-ng && ./autogen.sh
$ make -j4
$ sudo make install

Then we can clone Termite’s GitHub repository, and compile the source code, with the commands:

$ git clone --recursive https://github.com/thestinger/termite.git
$ cd termite && make -j4


Summary

I had a poor success rate in compiling terminal emulators for the RPI4. If you’ve managed to compile any of the programs I couldn’t get working, please share your findings in the Comments box below.

If I have to choose one terminal emulator, my preference is Hyper. Alas, despite my best endeavours, I wasn’t able to compile it for the RPI4.


Read all my blog posts about the RPI4.

Raspberry Pi 4 Blog
Week 36Manage your personal collections on the RPI4
Week 35Survey of terminal emulators
Week 34Search the desktop with the latest version of Recoll
Week 33Personal Information Managers on the RPI4
Week 32Keep a diary with the RPI4
Week 31Process complex mathematical functions, plot 2D and 3D graphs with calculators
Week 30Internet radio on this tiny computer. A detailed survey of open source software
Week 29Professionally manage your photo collection with digiKam
Week 28Typeset beautifully with LyX
Week 27Software that teaches young people how to learn basic computing skills and beyond
Week 26Firefox revisited - Raspbian now offers a real alternative to Chromium
Week 25Turn the Raspberry Pi 4 into a low power writing machine
Week 24Keep the kids learning and having fun
Week 23Lots of choices to view images
Week 22Listening to podcasts on the RPI4
Week 21File management on the RPI4
Week 20Open Broadcaster Software (OBS Studio) on the RPI4
Week 19Keep up-to-date with these news aggregators
Week 18Web Browsers Again: Firefox
Week 17Retro gaming on the RPI4
Week 16Screen capturing with the RPI4
Week 15Emulate the Amiga, ZX Spectrum, and the Atari ST on the RPI4
Week 14Choose the right model of the RPI4 for your desktop needs
Week 13Using the RPI4 as a screencaster
Week 12Have fun reading comics on the RPI4 with YACReader, MComix, and more
Week 11Turn the RPI4 into a complete home theater
Week 10Watching locally stored video with VLC, OMXPlayer, and others
Week 9PDF viewing on the RPI4
Week 8Access the RPI4 remotely running GUI apps
Week 7e-book tools are put under the microscope
Week 6The office suite is the archetypal business software. LibreOffice is tested
Week 5Managing your email box with the RPI4
Week 4Web surfing on the RPI4 looking at Chromium, Vivaldi, Firefox, and Midori
Week 3Video streaming with Chromium & omxplayerGUI as well as streamlink
Week 2A survey of open source music players on the RPI4 including Tauon Music Box
Week 1An introduction to the world of the RPI4 looking at musikcube and PiPackages

This blog is written on the RPI4.

Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Please read our FAQ before making a comment.

2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
TJ
TJ
4 years ago

Looking at your info on Roxterm, new versions are available on Github. Not sure if it was moved there or it’s just a fork.