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
Setting Administrator password for Tails at startup is shown below.
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.
Create new directory utox_install under /home/amnesia/Persistent.
$sudo mkdir utox_install
$sudo chown -R amnesia:amnesia 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
$./configure --prefix=/home/amnesia/Persistent/utox_install/
$make
$make install
Libvpx extraction and installation under /home/amnesia/Persistent/utox_install is shown in the following figures.
$tar -xzf libvpx.tar.gz
$cd libvpx
$./configure --prefix=/home/amnesia/Persistent/utox_install/
$make
$make install
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
$./configure --prefix=/home/amnesia/Persistent/utox_install/
Output of configure script.
$make
$make install
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
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
$make
$make install
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"
Toxcore package extraction and installation under /home/amnesia/Persistent/utox_install/ is shown in the following figures.
$tar -xzf toxcore.tar.gz
$cd toxcore
Run autoreconf command for the generation of configure script in the source code of Toxcore.
$autoreconf -i
./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/
$make
$make install
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
Run 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
$make
$make install
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
Running uTox client application in the Tails.
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.
The post How to Install uTox Client on Tails appeared first on LinOxide.