{"id":9547,"date":"2019-02-10T23:58:35","date_gmt":"2019-02-10T23:58:35","guid":{"rendered":"http:\/\/www.appservgrid.com\/paw92\/?p=9547"},"modified":"2019-02-10T23:58:35","modified_gmt":"2019-02-10T23:58:35","slug":"domterm-a-terminal-emulator-and-console-for-linux","status":"publish","type":"post","link":"https:\/\/www.appservgrid.com\/paw92\/index.php\/2019\/02\/10\/domterm-a-terminal-emulator-and-console-for-linux\/","title":{"rendered":"DomTerm \u2013 A terminal Emulator and Console for Linux"},"content":{"rendered":"<p><strong>DomTerm<\/strong>\u00a0is a free open-source feature-rich, modern terminal emulator and screen multiplexer (like\u00a0<a href=\"https:\/\/www.tecmint.com\/tmux-to-access-multiple-linux-terminals-inside-a-single-console\/\" target=\"_blank\" rel=\"noopener\">tmux<\/a>\u00a0or\u00a0<a href=\"https:\/\/www.tecmint.com\/screen-command-examples-to-manage-linux-terminals\/\" target=\"_blank\" rel=\"noopener\">GNU screen<\/a>), which is based on web technologies and a rich-text console written mostly in JavaScript.<\/p>\n<p>It uses\u00a0<strong>libwebsockets<\/strong>\u00a0as 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.<\/p>\n<div id=\"attachment_29940\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.tecmint.com\/wp-content\/uploads\/2018\/07\/DomTerm-Terminal-Emulator-for-Linux.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-29940\" src=\"https:\/\/www.tecmint.com\/wp-content\/uploads\/2018\/07\/DomTerm-Terminal-Emulator-for-Linux.png\" sizes=\"auto, (max-width: 981px) 100vw, 981px\" srcset=\"https:\/\/www.tecmint.com\/wp-content\/uploads\/2018\/07\/DomTerm-Terminal-Emulator-for-Linux.png 981w, https:\/\/www.tecmint.com\/wp-content\/uploads\/2018\/07\/DomTerm-Terminal-Emulator-for-Linux-768x526.png 768w\" alt=\"DomTerm Terminal Emulator for Linux\" width=\"981\" height=\"672\" data-lazy-loaded=\"true\" \/><\/a><\/p>\n<p class=\"wp-caption-text\">DomTerm Terminal Emulator for Linux<\/p>\n<\/div>\n<h4>DomTerm Features:<\/h4>\n<ul>\n<li>It is xterm-compatible and supports multiple sub-commands.<\/li>\n<li>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.<\/li>\n<li>Supports multiplexing and sessions.<\/li>\n<li>Its back-end allows for printing images, graphics as well as rich text.<\/li>\n<li>Supports controlling of user preferences via a CSS file.<\/li>\n<li>Supports keyboard shortcuts with smart line-wrapping.&lt;.\/li&gt;<\/li>\n<li>Optionally allows for input editing and movement of cursor using mouse.<\/li>\n<li>Supports preserving of TAB characters with automatic pagination.<\/li>\n<li>Support draggable tabs and panes.<\/li>\n<li>Automatically turn URLs and mail addresses in output into links and much more.<\/li>\n<li>An experimental package atom-domterm for the\u00a0<a href=\"https:\/\/www.tecmint.com\/atom-text-and-source-code-editor-for-linux\/\" target=\"_blank\" rel=\"noopener\">Atom editor<\/a>.<\/li>\n<\/ul>\n<h3>How to Install DomTerm Terminal Emulator in Linux<\/h3>\n<p>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.<\/p>\n<h4>On Debian\/Ubuntu<\/h4>\n<pre>$ sudo apt-get update\r\n$ 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\r\n<\/pre>\n<h4>On RHEL\/CentOS<\/h4>\n<pre>$ sudo yum update\r\n$ sudo yum install gcc make automake autoconf texinfo patch libwebsockets libwebsockets-devel json-c json-c-devel openssl-devel file-devel libcap-devel asciidoctor\r\n<\/pre>\n<h4>On Fedora<\/h4>\n<pre>$ sudo dnf update\r\n$ sudo dnf install gcc make automake autoconf texinfo patch libwebsockets libwebsockets-devel json-c json-c-devel openssl-devel file-devel libcap-devel asciidoctor\r\n<\/pre>\n<p><strong>DomTerm<\/strong>\u00a0also requires\u00a0<strong>libwebsockets<\/strong>\u00a0version 2.2 or later. Therefore, you need to build and install the latest version from source as shown.<\/p>\n<pre>$ cd ~\/Downloads\r\n$ git clone https:\/\/github.com\/warmcat\/libwebsockets\r\n$ cd libwebsockets\r\n$ mkdir build\r\n$ cd build\r\n$ cmake -DLWS_WITH_SSL=0 -DLWS_WITH_ZIP_FOPS=1 . .\r\n$ make\r\n<\/pre>\n<p><center>Next clone the DomTerm source repository, build and install it using the following commands.<\/p>\n<pre>$ cd ~\/Downloads\/\r\n$ git clone https:\/\/github.com\/PerBothner\/DomTerm\r\n$ cd DomTerm\r\n$ autoreconf\r\n$ .\/configure --with-qtwebengine --with-libwebsockets=$HOME\/Downloads\/libwebsockets\/build\r\n$ make\r\n$ sudo make install\r\n<\/pre>\n<p>Once you have successfully installed\u00a0<strong>DomTerm<\/strong>\u00a0on your Linux distribution, you can search for it from your system menu or run the following command to launch it.<\/p>\n<pre>$ domterm\r\n<\/pre>\n<p><strong>DomTerm Homepage<\/strong>:\u00a0<a href=\"https:\/\/domterm.org\/\" target=\"_blank\" rel=\"nofollow noopener\">https:\/\/domterm.org\/<\/a><\/p>\n<p>That\u2019s all!\u00a0<strong>DomTerm<\/strong>\u00a0is a full-featured terminal emulator and a rich-text console, it also comes with several other useful applications.<\/p>\n<p><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>DomTerm\u00a0is a free open-source feature-rich, modern terminal emulator and screen multiplexer (like\u00a0tmux\u00a0or\u00a0GNU screen), which is based on web technologies and a rich-text console written mostly in JavaScript. It uses\u00a0libwebsockets\u00a0as 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 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.appservgrid.com\/paw92\/index.php\/2019\/02\/10\/domterm-a-terminal-emulator-and-console-for-linux\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;DomTerm \u2013 A terminal Emulator and Console for Linux&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-9547","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts\/9547","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/comments?post=9547"}],"version-history":[{"count":1,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts\/9547\/revisions"}],"predecessor-version":[{"id":9548,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/posts\/9547\/revisions\/9548"}],"wp:attachment":[{"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/media?parent=9547"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/categories?post=9547"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.appservgrid.com\/paw92\/index.php\/wp-json\/wp\/v2\/tags?post=9547"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}