Tilix brings powerful terminal emulation to Fedora
A couple of days after Fedora 26 was released on July 11, I began installing it on my herd of computers. Many of the improvements that Fedora 26 brings to the table are under the covers, such as improvements to the kernel and glibc. However, I noticed two updates right away.
The first is a nice little addition to the dnf command. When removing packages, dnf also removes unneeded dependencies now. This is not earth-shaking, but it is a nice, practical addition to a powerful command.
The real news in Fedora 26, at least for me, is the addition of another terminal emulator, Tilix. Some time ago, I read that Tilix was a very powerful and feature-rich terminal emulator that would be available in Fedora 26. I looked for it in my Fedora 25 installation, but it wasn’t there, so I waited until I installed Fedora 26 on my main workstation.
Before I go further, a word about spelling. I have seen Tilix spelled with both one and two l’s. Because the name of the executable has one l, that’s the spelling I’ve chosen.
While Tilix is another terminal emulation application, it is not just another terminal emulator. Tilix is perhaps the pinnacle of emulation software development.
What I’m looking for in a terminal emulator
As a Linux sysadmin with many systems to manage in multiple locations, my life is all about simplification and making it easy and flexible to access and monitor those systems. I have used many different terminal emulators in the past, all the way from the venerable Xterm to Terminator and Konsole.
With as many as 25 or 30 terminal sessions open simultaneously much of the time, having a single window in which to manage those sessions avoids having large numbers of windows open on my desktop. As a person who generally keeps a messy physical desktop—they do say that is the sign of high intelligence, cough, cough—and lots of open windows on my Linux desktop, wrangling all my terminal sessions into a single window is a great step forward in terms of decluttering.
Tilix helps me organize them by letting me keep all my terminal sessions in one very flexible window. I can organize my terminal sessions in many different ways due to the extreme power and flexibility of Tilix.
I installed Tilix on my Fedora 26 hosts using the dnf -y install tilix command, because it wasn’t installed by default either with an upgrade from Fedora 25 or a new installation.
Tilix’s user interface
Figure 1 shows a typical (at least for me) Tilix window with one of the three active sessions containing four terminals. Each terminal in this session (session 3 of 3) is connected to a different host using SSH. Note that the title bar in each terminal displays the user, hostname, and current directory for that terminal.
Let’s ensure that we keep our terminology straight, because it can be confusing. In Tilix, a “session” is a page in a Tilix window that contains one or more terminals. Opening a new session opens a new page with a single terminal emulation session. Each Tilix session can be subdivided horizontally and vertically into multiple terminal emulation sessions.
Tilix sessions can be created or subdivided, and general configuration can be performed using the tools in the Tilix title bar. Placing the window and session controls in the window title bar saves the space typically used for separate menu and icon bars.
The leftmost icon on the Tilix title bar is normally the Window menu, which contains the window management tools such as minimize, restore, maximize, move, and more. Access to that menu for Tilix is through a right-click on an empty space on the title bar.
Tilix uses the Window menu icon for its own management and configuration. From this menu, you can launch a new Tilix window, add a new session to the active Tilix window, and manage shortcuts and preferences. The Preferences menu choice provides access to global behavior and appearance settings, bookmarks, shortcuts, and profiles.
The next icon to the right shows the number of sessions, which session is active—the one you are looking at, obviously—and it allows you to switch between sessions. Clicking on this icon opens a sidebar with images of the open sessions. Just click on the desired session to make it the active one.
There are also three shortcut icons immediately to the right of that. The + icon will create a new session or a new terminal, depending upon how you have it configured. The vertical rectangle with a + sign opens a new terminal to the right of the active terminal in the current session. The horizontal rectangle with a + sign opens a new terminal below the active terminal in the current session. In all cases, the active terminal is resized to make room for the new one. The menu icon on the right side of the title bar provides functions to save and restore a session and terminal layouts.
Tilix looks good on the desktop and has its own color themes and window style. It also uses its own icon set.
There is one default profile, and other profiles can be added as needed. Each profile sets alternate values for Tilix’s functions and appearance. Existing profiles can be cloned to provide a starting place for new ones.
To select from a list of profiles for an already open window, click on the name of the terminal window, select Profiles, and then choose the profile you want to change to. You can also select one profile to use whenever a new Tilix session or terminal is launched.
One thing I really like about Tilix is that it maintains consistency of colors. The background, text, and various application colors, such as syntax highlighting, are always consistent from host to host and easy to read. Other terminal emulators, even my previous favorite, Konsole, seem to interact with the local user shell and application color schemes, and some of those schemes make them hard to read.
Tilix requires a graphical user interface (GUI) and can’t be used in an environment like a text-only console. It was written using GTK3, with some effort to conform with the GNOME Human Interface Guidelines (HIG). It can be launched from your distribution’s application launcher. It could also be launched from the command line of an already running terminal session such as Xterm or Konsole.
I found Tilix to be easy to use and configure. There are a few configuration items that I either have not figured out or don’t work as I would expect. None of these is critical to my use of Tilix, such as the “Theme variant” and “Background image” items. Changing those options made no visible changes to the Tilix window on my primary workstation, although they do seem to work fine on another Fedora 26 workstation. Someday I might try to figure out why.
After I boot or log into my systems, I always start a terminal emulator so I can have immediate access to all the command line tools I have come to depend on. I also open terminals into several remote hosts that I like to monitor or on which I intend to perform some maintenance activities.
Switching between terminals is smooth and easy and can be done using the mouse or the keyboard. I use whichever feels most comfortable for whatever I am doing at that moment.
For me, using a terminal emulator on a GUI desktop adds the power of a GUI to that of the command line. When using a terminal emulator like Tilix, Terminator, or Konsole that allow multiple pages and split screens, my ability to work efficiently is increased exponentially.
Although there are other powerful terminal emulators out there that allow multiple terminal sessions in a single window, I have found that Tilix meets my needs better than any I have tried so far.
I have been using Krusader for years and will probably continue to do so, but Tilix is now my favorite. It’s not that Tilix offers features not available in Krusader, Terminator, or other terminal emulation software, rather it’s because Tilix implements those same features in a classy interface that is easy to learn, configure, and navigate, and it maximizes the use of onscreen real estate.
I find that Tilix fits my desktop working style very nicely. After all, that’s what it’s all about, isn’t it?