How to Install uTox Client on Tails

In this tutorial, our focus is persistent installation of  uTox software on the Tails security distribution. uTox is lightweight TOX client for instant messaging. TOX application provides an easy and secure way  to users to connect with friends/family over insecure network. It is available for Windows, Linux, Mac OS and Android platforms. We assume that user gives Passphrase on login screen at startup which is mandatory for encrypted Persistent (permanent) storage of files/folder.

Setting Passphrase for Persistence volume at startup

login

Setting Administrator password for Tails at startup is shown below.

more options

Installation of uTox for Tails can be used for other Linux distribution with little modification (because other distributions already have persistent storage). In this tutorial we will install all required packages for uTox from sources and the installation path will be Persistent directory.

Prerequisite

Following packages required  for uTox client.

Libsodium

Sodium is a modern, easy-to-use software library for crypto operations such as encryption ,decryption, signatures, password hashing.

Libopus  and Libvpx

Above mentioned libraries are required for audio/video (A/V) support in ToxCore.

Toxcore

It is main implementation of TOX project.

Filter audio

It is Lightweight audio filtering library required for the uTox and it must be installed on Tails before  uTox compilation.

Installation

Persistence path under Tails distribution is /home/amnesia/Persistent. It is also shown in the following snapshot.  Every installation on Tails should be under  persistence path for permanent storage of files/folders.

persistence

Create new directory utox_install under /home/amnesia/Persistent.

$sudo mkdir utox_install

$sudo chown -R amnesia:amnesia utox_install

utox_install

amnesia is the default user in the Tails.

Following packages are required before compilation of  sources.

$sudo apt-get update && apt-get install --force-yes -y  build-essential libtool autotools-dev automake checkinstall check git yasm pkg-config

Libsodium extraction and installation under /home/amnesia/Persistent/utox_install is shown in the following figures.

$tar -xzf libsodium-1.0.0.tar.gz

$cd libsodium-1.0.0

libsodium-extraction

$./configure --prefix=/home/amnesia/Persistent/utox_install/

configure

$make

make-libsodiu

$make install

make install libsodium

Libvpx extraction and installation under /home/amnesia/Persistent/utox_install is shown in the following figures.

$tar -xzf  libvpx.tar.gz

$cd libvpx

extraction of libvpx

$./configure --prefix=/home/amnesia/Persistent/utox_install/

configure of libvpx

$make

make libvpx

$make install

make install libvpx

Libopus extraction and installation under /home/amnesia/Persistent/utox_install/ is shown in the following figures.

$tar -xzf opus-1.0.3.tar.gz

$cd opus-1.0.3

extraction of libopux

$./configure --prefix=/home/amnesia/Persistent/utox_install/

configure of libopus

Output of configure script.

configure of libopus output

$make

make libopus

$make install

make install libopus

By default installation path of Filter Audio tool is  /usr/local/, however we need to install it under persistent path. Therefore we have to change prefix line in Makefile of Filter Audio package.

#PREFIX ?= /usr/local
PREFIX ?= /home/amnesia/Persistent/utox_install

Filter Audio extraction and installation under /home/amnesia/Persistent/utox_install/ is shown in the following figures.

$tar -xzf  filter_audio-master.tar.gz

$cd filter_audio-master

extraction of filter audio

Run following sed command in the Filter Audio code to change the Prefix path.

$sed -i 's|PREFIX ?= /usr/local|PREFIX ?= /home/amnesia/Persistent/utox_install|g' Makefile

sed

$make

make filter audio

$make install

make install filter audio

Run following export command in the terminal for the detection of Audio/Video Packages using pkgconfig tool. These are required for toxcore package compilation.

$export PKG_CONFIG_PATH="/home/amnesia/Persistent/utox_install/lib/pkgconfig"

pkgconfig export

Toxcore package  extraction and installation under /home/amnesia/Persistent/utox_install/ is shown in the following figures.

$tar -xzf  toxcore.tar.gz

$cd toxcore

extraction of toxcore

Run autoreconf command for the generation of configure script in the source code of Toxcore.

$autoreconf -i

autoreconig

./configure --prefix=/home/amnesia/Persistent/utox_install/ --with-libsodium-headers=/home/amnesia/Persistent/utox_install/include   --with-libsodium-libs=/home/amnesia/Persistent/utox_install/lib/

configure toxcore

$make

make toxcore

$make install

make install toxocre

Now at this stage , we will install  uTox client . Following dependencies are required for uTox compilation on the Tails.

sudo apt-get install --force-yes -y libx11-dev libv4l-dev libopenal-dev libfreetype6-dev libdbus-1-dev libxrender-dev libfontconfig1-dev libxext-dev

By default installation path of uTox client is  /usr/local/, however we need to install it under persistent path. Therefore we have to change prefix line in Makefile of uTox package.

#PREFIX ?= /usr/local
PREFIX ?= /home/amnesia/Persistent/utox_install

uTox package extraction and installation under /home/amnesia/Persistent/utox_install/ is shown in the following figures.

$tar -xzf  uTox.tar.gz

$cd uTox

extraction of uToxRun following sed command in the uTox client code to change the Prefix path.

$sed -i 's|PREFIX ?= /usr/local|PREFIX ?= /home/amnesia/Persistent/utox_install|g' Makefile

sed utox

$make

make utox

$make install

make install utox

After successful installation of uTox from source, now run it from the bin directory under persistent path of installation.

$ cd /home/amnesia/Persistent/utox_install/bin

$./utox

utox run

Running uTox client application in the Tails.

utox app

Conclusion

In this article we compiled uTox latest release on the Tails security distribution. Tails loses setting after reboots therefore we installed every thing related to uTox at Persistent path. uTox is the lightweight client for the open source instant messaging tool Toxcore. It is used in the community due to open source and security feature.

About shah

I have basic level experience in Open source tools.

Author Archive Page

Have anything to say?

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

All comments are subject to moderation.

4 Comments