An overview of the IMAP client Trojitá

Linux is not lacking at all for email programs. The frontrunners include Evolution, Thunderbird, and KMail, all of which are feature-rich PIM suites (see the "PIM" box). Many users just need a simple mail program and nothing else. The stable of slimmer applications that fulfill simpler needs includes the rather ancient Gnome tool Balsa, Claws Mail, and the fairly new Geary.

PIM

PIM stands for personal information manager. This type of software handles tasks like mail, contacts, notes, and scheduling. PIM software, particularly on mobile devices, plays an increasingly important role for private users alongside its traditional role in the business and professional worlds.

Trojitá was built on version 5 of the Qt libraries, and for some time now, it has been trying to enter this product category. Before it can qualify as a viable alternative, this newcomer needs to be evaluated with an eye toward the fact that it only works with the IMAP protocol (see the "IMAP" box). Since almost all of the providers offer access via this protocol, this restriction does not disqualify the software outright. Currently, there are no plans to extend its capabilities to other protocols.

IMAP

IMAP is an Internet access protocol that was developed more than 30 years ago. It lets the user retrieve emails from a server where they continue to be stored. This means that moving, deleting, and copying emails takes place on the server and not on the local computer.

Installation

Trojitá is not in the default Ubuntu repositories, but there are packages made for your distribution. To install them, enter

sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/jkt-gentoo:/trojita/xUbuntu_16.04/ /' > /etc/apt/sources.list.d/trojita.list"

to add the Trojitá repository' and then

wget http://download.opensuse.org/repositories/home:jkt-gentoo:trojita/xUbuntu_16.04/Release.key
sudo apt-key add - < Release.key

to add the repository's key and avoid annoying messages about unsigned repos.

Finally, to install the software, enter:

sudo apt update && sudo apt install trojita

You will find Trojitá in your launcher.

Setup

To set up an email account, open the setup dialog by clicking on the IMAP | Settings menu. Clicking on Add brings up a screen where you can enter your name and email address. A single click on Save stores the data, which however is not quite all that is needed. Established competitors like Thunderbird, KMail, and Evolution refer to the domain in the address line when they search for the correct settings in terms of server and port. Trojitá does not yet do this.

The parameters for receiving messages are entered in the IMAP tab (Figure 1). The online help offered by providers usually tells you what you should enter here. Typically, this includes information like the server's name, its port, and the encryption technology used for transmitting your messages.

Figure 1: This is where you configure the Trojitá mail client for receiving messages.

Similarly, the SMTP tab (Figure 2) is used for entering data for sending messages. In most cases, it is a good idea at this point to remove the check mark from the Save outgoing mail option, since almost all providers automatically save copies of sent messages in the Sent folder. Moreover, sending the first messages in our test failed because the program was unable to find the default Sent folder.

Figure 2: Configure the sending of emails in the SMTP tab.

Last, but not least, you should go to the Offline tab and indicate how the program should handle messages that have already been called. By default, Trojitá saves emails for 30 days. If you do not trust your provider's data security practices, then you should select the Store forever option.

Although the settings might give you the impression that the application is able to administer multiple accounts, this is in fact not the case. The program does permit a user to provide more than one identity, but the parameters for receiving and sending remain the same. You can remedy this situation by collecting emails from various mailboxes on the server into one mailbox.

Trojitá's current version can correctly handle aliases if you enter multiple addresses. Aliases are available from free software communities, which tend to be especially generous in giving them out. However, the aliases actually consist merely of redirects rather than a genuine mailbox. These alternative addresses should nonetheless be properly registered with your email provider; otherwise, you will not be able to successfully send emails since the server software assumes that the address is fake.

Work Processes

Once installed, the client loads messages from the server. The main window's appearance makes it clear that the developers have not reinvented the wheel (Figure 3). There is a tree view of the IMAP folder to the left, the header bar sits at the top, and the text below. This arrangement is familiar from other clients who use it, because it optimizes the use of space on smaller screens.

Figure 3: By default, Trojitá uses a proven layout. Modifications can be made with just a few clicks.

If need be, you can go to View | Layout and change the layout so that the three areas either lie next to one another or are viewable only one at a time. The horizontal view is especially advantageous for a tile screen manager.

There is a small icon at the top right edge of the screen that is particularly interesting for mobile devices. When clicked, it opens a selection of billing methods for the server connection. You can either switch the data connection off entirely, or you can choose between a volume-based connection and a genuine flat rate (Figure 4).

Figure 4: The application has a special function that helps you keep a handle on the costs of connecting to the server.

Making Contact

The contact list is one of the bread-and-butter features for any mail client. Nonetheless, you should not expect too much from Trojitá. While Trojitá does have an address book, this feature has only the most rudimentary of functions. The easiest way to add contacts is to click on the small button with the person icon that sits to the right of the address for a message. This opens an editor window where you can enter additional data, like a postal address or telephone number if needed.

At this point, the address book window still looks like it hasn't been completely implemented yet (Figure 5). Searches for a contact that are performed with part of the name do work, but it is not clear at the outset whether an editing function for the entries on the right side of the window exists.

Figure 5: It takes awhile before you figure out that the address book editor is exactly that.

However, once you click between the square brackets, a cursor appears. Once you have made changes, the question becomes how to save them. You will look in vain for a save button. Luckily, Trojitá is clever enough to prompt you upon closing the window whether the edited contacts should be saved.

The software does not let you automatically put addresses from emails you have received into the contact list or even a separate list. This would do away with the necessity of having to explicitly save an address. At least the editor has an auto-complete function, which works if it finds a relevant contact entry (Figure 6).

Figure 6: Trojitá automatically completes addresses from the address book as you type them in the "To" field.

In this age of data that is synchronized on stationary, portable, and mobile hardware, It no longer seems possible to do without consistent contact data. The success enjoyed by smartphones and cloud storage has made data alignment under Linux much easier. Current email clients are easily adapted to operate interfaces like LDAP, the Google and Facebook address books, and even Microsoft user accounts.

Trojitá's address book is not yet this advanced. There are no onboard tools for aligning data with lists from the email provider. Internally, the program uses the data format and the storage location from the address book Abook [2]. This is often used in combination with the email client Mutt. The address book usually resides in the home directory in .abook/addressbook . This makes for various possibilities that generally do not integrate into the email program. Instead, they require additional software.

For instance, you can import to the vCard format using the Python script vcf2addressbook [3]. This script is available for export from the provider's web interface or from local applications. The best way to save the script is to do so with the vCard file exported beforehand in the relevant ~/.abook/ folder and then assign corresponding rights using:

chmod +x vcf2addressbook

The output saves the call together with the name of the VCF file as an argument in the addressbook file. The script saves the existing file in a new one that includes a .bak extension. You can keep the list up-to-date by regularly backing up your contacts and executing the script. However, the update process overwrites the contacts saved directly in Trojitá. In order to prevent the loss of data, it is a good idea to combine the file saved in the vcf2addressbook with the backup. The Awk script in Listing 1 takes care of this.

Listing 1

addressbookmerger.awk

BEGIN {
  FS = "="
  print "# abook addressbook file"
  print "[format]"
  print "program=abook"
  print "version=0.5.6"
  print
  print
  count=0
}
/name/ {
  i=$2
  name[i]++
  getline
  email[i] = $2
}
END {
  for ( i in name ) {
    print "[" count "]"
    print "name=" i
    print "email=" email[i]
    print ""
    count++
  }
}

Save the script, and call it with the command

$ awk -f addressbookmerger.awk <Adressbook_1> <Adressbook_2> > <Adressbook_new>

in the folder that contains both the old and the new address book. After renaming the merged lists as addressbook , it is ready to use. The process gives the impression of being a creaky ladder rather than a stable bidirectional gateway, but it does actually work. In reverse, there is still no way to export any contacts for the more common formats that are suitable to other programs.

Encryption

GnuPG and S/MIME play an increasingly important role in the encryption of private communications. Trojitá cannot handle S/MIME, but it does work with PGP. Nonetheless, you will not find any pertinent button that lets you protect the text of an email you have written from people who want to snoop.

The technology is used for the first time in the current version and is played up in the release notes as an important advancement. Even so, as the notes themselves point out, the function is only available for received messages. Provided you have already installed GnuPG, then the encryption process works smoothly. Handling messages that carry digital signatures also works without a hitch. To date, only external tools are available for administering the key.

In some ways, the Trojitá's current behavior is reminiscent of the first SMS-capable mobile phones from more than 20 years ago. These phones could receive and display short messages but were not able to send them. It took the next generation of devices to solve that problem. Therefore, there is room for hope that the Trojitá developers will likewise add to the existing functions in the future.

The software also offers a spam filter, which in actuality consists of an option for manually marking emails as spam. However, the function merely marks the corresponding messages. The application does not move these messages to the appropriate folder. It also does not have a filter that applies a spam filter to the view.

It became clear during testing that the software is incompatible with various desktop themes. This is particularly true when Gtk widgets were used to help Qt create the interfaces. Problems occurred in displaying colors under these conditions.

The information about encrypted email appeared in white print and was barely legible against a light yellow background. It seems that the developers made a mistake when modifying the KDE theme Breeze. There are express references to the innovation that these modifications are intended to represent in the release notes for the latest version 0.7.

Conclusion

Given its austere functionality, we have reservations about recommending Trojitá for everyday use. But if you are a user who wants to avoid the stress of Thunderbird or KMail, then this program can give you a reprieve. The interface has a lean and logical design with the caveat that the software cuts corners when it comes to convenience. However, its speed more than compensates for the lacking features.

The mail client landscape in the Qt ecosystem is sparse. Trojitá already integrates well into desktops like LXQt and KDE. There is cause for optimism now that the application source code is in the KDE Git repository and project presentations are found in Bugzilla and the KDE UserBase wiki. Perhaps Trojitá, especially under KDE, will become a more viable alternative with the connection to Akonadi and its potential successor [4].

At this time, the incomplete implementation of GnuPG is a drawback. You can choose to either do without this tool or wait for future development. While it is possible to encrypt a message before sending it, actually doing so turns out to be more cumbersome than convenient.