en	[[!meta title="Installing additional software"]]

en	[[!toc levels=2]]

en	Which additional software can I install in Tails?

en	Tails includes a [[limited set of applications|doc/about/features]] but you can install more software.

en	This software is distributed in packages that are made available from the Debian repositories, which are similar to an app store.

en	To know which packages are available in Debian:

en	Browse locally with the *Synaptic Package Manager*:

en	When starting Tails, [[set up an administration password|doc/first_steps/welcome_screen/administration_password]].

en	Choose **Applications&nbsp;▸ System Tools&nbsp;▸ Synaptic Package Manager**.

en	Wait until *Synaptic* finishes downloading new package information from the Debian servers.

en	You can:

en	Browse the packages by sections from the left sidebar.

en	Search on titles and descriptions of packages with the **Search** button.

en	Search the Internet for alternatives to other software.

en	For example: "*debian alternatives to photoshop*".

en	Ask a friend who is knowledgeable about Linux.

en	Search the [Debian website](https://www.debian.org/distrib/packages#search_packages).

en	Be careful about what you install

en	<div class="caution">

en	The packages included in Tails are carefully tested for security. Installing additional packages might break the security built in Tails. For example, installing OpenVPN might modify the firewall rules that Tails uses to force network traffic to go through Tor. So, be careful with what you install.

en	</div>

en	If you are unsure:

en	Packages that use the network need to be configured to go through Tor. They are otherwise blocked from accessing the network.

en	Some software might, for example, modify the firewall and break the security built in Tails. But other software like games or office tools are probably fine.

en	Software not [[officially included in Tails|doc/about/features]] might have not been tested for security. We also cannot provide support or documentation for it.

en	Only applications that are packaged for Debian can be installed and they are under [[public scrutiny|doc/about/trust#trust_debian]].

en	Examples of additional useful software

en	[*VLC*](https://www.videolan.org/vlc/), a multimedia player with advanced features.

en	[*Pitivi*](https://www.pitivi.org/), a video editor.

en	[*Scribus*](https://www.scribus.net/), a page layout application.

en	[*Cheese*](https://wiki.gnome.org/Apps/Cheese), an application to take pictures and videos from your webcam.

en	[*Mumble*](https://www.mumble.info/), a voice chat application.

en	[*Calibre*](https://calibre-ebook.com/), an EPUB reader and library manager.

en	[*GtkHash*](https://gtkhash.org/), a utility to calculate the checksum of files.

en	Language packages and dictionaries

en	Replace lang with the code for your language. For example, `vi` for Vietnamese.

en	Tails already includes language packages and dictionaries for Arabic, German, Spanish, Farsi, French, Hindi, Bahasa Indonesia, Italian, Portuguese, Russian, Turkish, and Simplified Chinese.

en	*LibreOffice* language package: libreoffice-l10n-lang

en	[List of available *LibreOffice* language packages](https://packages.debian.org/search?keywords=libreoffice-l10n&searchon=names&suite=stable&section=all)

en	*Thunderbird* language package: thunderbird-l10n-lang

en	[List of available *Thunderbird* language packages](https://packages.debian.org/search?keywords=thunderbird-l10n&searchon=names&suite=stable&section=all)

en	*Hunspell* dictionary: hunspell-lang

en	The *Hunspell* dictionaries are used for spell-checking by *Tor Browser*, *LibreOffice*, *Thunderbird*, and many other applications.

en	[List of available *Hunspell* dictionaries](https://packages.debian.org/search?keywords=hunspell&searchon=names&suite=stable&section=all)

en	Installing additional software

en	To install a package using *Synaptic*:

en	Click **Search** and search for the name of the package.

en	Right-click (on Mac, click with two fingers) on the name of the package in the search results and choose **Mark for Installation**.

en	*Synaptic* calculates the additional changes for your package to work. Click **Mark** to confirm those changes.

en	Click **Apply** to download, install, and configure the package.

en	<div class="tip">

en	If you are comfortable with the command line, you can use apt instead.

en	Installing additional software automatically when starting Tails

en	To install an additional package automatically when starting Tails:

en	Turn on the [[Additional Software|persistent_storage/configure#additional_software]] feature of the Persistent Storage.

en	Install the package using *Synaptic* or the `apt` command.

en	After the package is installed, a notification appears to ask if you want to install this package every time you start Tails in the future.

en	[[!img add.png link="no" class="screenshot" alt=""]]

en	If you choose **Install Every Time**, the package is saved in the Persistent Storage and will be reinstalled automatically every time you start Tails.

en	The package will also be updated automatically when you connect to the Internet.

en	If you choose **Install Only Once**, the package is also saved in the Persistent Storage but won't be reinstalled automatically every time you start Tails.

en	The same package can be reinstalled faster for some time because you won't have to download it again.

en	Using additional software

en	Once installed, applications that don't use the network usually work out of the box. However, Tails has some differences in terms of additional configuration and network access.

en	Additional configuration

en	To save the configuration of additional software across different Tails sessions, you can use the [[Dotfiles|persistent_storage/configure#dotfiles]] feature of the Persistent Storage.

en	Each application handles its configuration very differently, so we cannot give general instructions on which files have to be saved using the Dotfiles features.

en	Network access

en	Tails only allows connections to the Tor network. Additional software that uses the Internet must be configured to go through the Tor network otherwise, their connections are blocked by default for security.

en	To make an application use the Tor network, you can either:

en	A. Configure the application to use Tor as a proxy with the following parameters:

en	Type: SOCKS5

en	Host: 127.0.0.1

en	Port: 9050

en	For example, to use *Mumble* in Tails, you can configure Tor as proxy in the network configuration of *Mumble*:

en	[[!img mumble.png link="no" alt="Network configuration of Mumble with proxy settings"]]

en	B. Run the application using `torsocks` on the command line.

en	Execute the following command in a *Terminal*. Replace application with the command line of the application that you want to run:

en	torsocks application

en	For example, to use *Mumble* in Tails, you can also execute the following command:

en	torsocks mumble

en	Technical networking considerations

en	Only TCP connections can go through the Tor network.

en	UDP connections, for example in many VoIP applications, and ICMP connections, for example in the `ping` utility, cannot go through the Tor network and are blocked in Tails.

en	DNS requests go through the Tor network if the application uses the system configuration otherwise, DNS requests will fail to resolve.

en	IPv6 connections are blocked in Tails.

en	The default Tor port in Tails (9050) forces the use of different Tor circuits for each different destination IP and port, also called "*stream isolation*".

en	Checking your list of additional software

en	To see which packages are installed automatically every time you start Tails, choose **Applications&nbsp;▸ System Tools&nbsp;▸ Additional Software**.

en	Click the **[[!img lib/window-close.png class="symbolic" link="no" alt=""]]** button to remove a package from the list.

en	The same list is also available from the Persistent Storage settings, by clicking on the [[!img lib/emblem-system.png class="symbolic" link="no"]] button of the **Additional Software** feature.

en	Removing additional software

en	When you installed the package, if you chose:

en	**Install Only Once**, you can remove it by restarting Tails.

en	**Install Every Time**, you can remove it:

en	Using *Additional Software*:

en	Choose **Applications&nbsp;▸ System Tools&nbsp;▸ Additional Software**.

en	Click the **[[!img lib/window-close.png class="symbolic" link="no" alt=""]]** to the right of the name of the package.

en	Using *Synaptic*:

en	Right-click (on Mac, click with two fingers) on the name of the package in the search results and choose **Mark for Removal**.

en	Click **Apply** to remove the package.

en	From the command line using `apt`.

en	After the package is removed, a notification appears to ask if you want to remove this package from your list of additional software.

en	[[!img remove.png link="no" class="screenshot" alt=""]]

en	Freeing space in your Persistent Storage

en	After you installed many packages that you are not using anymore, you can free some space in your Persistent Storage:

en	Choose **Applications&nbsp;▸ System Tools&nbsp;▸ Root Terminal** to open a *Root Terminal*.

en	Execute the following command:

en	apt clean

en	Configuring additional APT repositories (for advanced users)

en	The packages available in Debian are submitted to public scrutiny.

en	Configuring additional APT repositories might break the security built in Tails and might install software that has not even been approved by Debian. Be even more careful with what you install.

en	This step is usually not needed to install additional software and might be necessary only in very rare occasions.

en	Sometimes, you might need to configure additional APT repositories. For example, to install packages from the `non-free` section of Debian. To do so:

en	Create an *apt-sources.list.d* folder in your Persistent Storage:

en	sudo install -d -m 755 /live/persistence/TailsData_unlocked/apt-sources.list.d

en	As root, edit */live/persistence/TailsData_unlocked/persistence.conf*, the configuration of the Persistent Storage, and add the *apt-sources.list.d* folder as a feature of type `link`:

en	/etc/apt/sources.list.d source=apt-sources.list.d,link

en	Write your additional `sources.list` files in the *apt-sources.list.d* folder.

en	For example, to add the `non-free` sections of Debian 11 (Bullseye), backports, and security updates, you can create a file named */live/persistence/TailsData_unlocked/apt-sources.list.d/non-free.list* with the following content:

en	deb tor+http://ftp.us.debian.org/debian/ bullseye non-free deb tor+http://ftp.us.debian.org/debian/ bullseye-backports non-free deb tor+http://security.debian.org/ bullseye/updates non-free

en	File names must end with *.list* and must only contain the following characters: letters, digits, underscore, hyphen, and period.

en	Correct the ownership and permissions of your additional `sources.list` files to be owned by `root` and only readable by others. For example:

en	chown root:root /live/persistence/TailsData_unlocked/apt-sources.list.d/non-free.list chmod 644 /live/persistence/TailsData_unlocked/apt-sources.list.d/non-free.list

en	Restart Tails to apply the changes.