DomTerm – A terminal Emulator and Console for Linux

DomTerm is a free open-source feature-rich, modern terminal emulator and screen multiplexer (like tmux or GNU screen), which is based on web technologies and a rich-text console written mostly in JavaScript.

It uses libwebsockets as a backend and a byte-protocol to communicate with the back-end, this implies that you can invoke it in a browser using web sockets; embed it in a third-party application; or simply run it as a generic terminal emulator program.

DomTerm Terminal Emulator for Linux

DomTerm Terminal Emulator for Linux

DomTerm Features:

  • It is xterm-compatible and supports multiple sub-commands.
  • It comes with multiple applications which include a: xterm-compatible terminal emulator, command console, chat/talk window and a read-eval-print-loop for an interactive scripting language.
  • Supports multiplexing and sessions.
  • Its back-end allows for printing images, graphics as well as rich text.
  • Supports controlling of user preferences via a CSS file.
  • Supports keyboard shortcuts with smart line-wrapping.<./li>
  • Optionally allows for input editing and movement of cursor using mouse.
  • Supports preserving of TAB characters with automatic pagination.
  • Support draggable tabs and panes.
  • Automatically turn URLs and mail addresses in output into links and much more.
  • An experimental package atom-domterm for the Atom editor.

How to Install DomTerm Terminal Emulator in Linux

There are no pre-built DomTerm packages available, therefore you need to install it from source, but before downloading the source code and compiling it. First you need to install following dependencies on your respective Linux distributions using package manager as shown.

On Debian/Ubuntu

$ sudo apt-get update
$ sudo apt-get install git gcc make cmake automake libjson-c-dev pkg-config asciidoctor libmagic-dev zlib1g-dev qt5-qmake qt5-default libqt5webengine5 libqt5webchannel5-dev qtwebengine5-dev

On RHEL/CentOS

$ sudo yum update
$ sudo yum install gcc make automake autoconf texinfo patch libwebsockets libwebsockets-devel json-c json-c-devel openssl-devel file-devel libcap-devel asciidoctor

On Fedora

$ sudo dnf update
$ sudo dnf install gcc make automake autoconf texinfo patch libwebsockets libwebsockets-devel json-c json-c-devel openssl-devel file-devel libcap-devel asciidoctor

DomTerm also requires libwebsockets version 2.2 or later. Therefore, you need to build and install the latest version from source as shown.

$ cd ~/Downloads
$ git clone https://github.com/warmcat/libwebsockets
$ cd libwebsockets
$ mkdir build
$ cd build
$ cmake -DLWS_WITH_SSL=0 -DLWS_WITH_ZIP_FOPS=1 . .
$ make

Next clone the DomTerm source repository, build and install it using the following commands.

$ cd ~/Downloads/
$ git clone https://github.com/PerBothner/DomTerm
$ cd DomTerm
$ autoreconf
$ ./configure --with-qtwebengine --with-libwebsockets=$HOME/Downloads/libwebsockets/build
$ make
$ sudo make install

Once you have successfully installed DomTerm on your Linux distribution, you can search for it from your system menu or run the following command to launch it.

$ domterm

DomTerm Homepage: https://domterm.org/

That’s all! DomTerm is a full-featured terminal emulator and a rich-text console, it also comes with several other useful applications. Share your thoughts about it via the feedback form below.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

Aaron Kili

Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Your name can also be listed here. Got a tip? Submit it here to become an TecMint author.

RedHat RHCE and RHCSA Certification Book
Linux Foundation LFCS and LFCE Certification Preparation Guide

You may also like...

2 Responses

  1. QWQ says:

    What does this terminal emulator do that many of the scores of terminal emulators already available for Linux don’t? Why would one want to use it, in preference to any of those? What’s the point of this me-too effort? An exercise by somebody to prove that they have the chops to develop a terminal emulator?

    • dragonmouth says:

      How really different from each other are the 70+ desktop environments and window managers? How really different from each other are the countless respins of Ubuntu? What’s the point of this me-too effort? An exercise by somebody to prove that they have the chops to develop a desktop environment, window manager or a distro?

      DomTerm just gives the terminal a little different look than other terminal emulators. The developer only carried on the Linux principle of freedom of expression; the Linux attitude that if it is good to have 5 versions of some software, having 20 or 50 is that much better. All this development of slightly different versions of software is not really making Linux better, only more balkanized.

Got something to say? Join the discussion.

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.