====== HOWTO: INSTALLING AND RUNNING SIGNAL ON TAILS ======
//A more modern howto is available [[https://0xacab.org/about.privacy/messengers-on-tails-os/-/wikis/Signal/Install-Signal-desktop|here]] ([[http://wmj5kiic7b6kjplpbvwadnht2nh2qnkbnqtcv3dyvpqtz7ssbssftxid.onion/about.privacy/messengers-on-tails-os/-/wikis/Signal/Install-Signal-desktop|via Tor Onion Service here]])//
(heavily based on: [[https://bisco.org/notes/installing-and-running-signal-on-tails/|bisco.org]] )
Tested with:
* Tails versions 4, 5 and 6
* Signal version 7.4.0
===== 1.) Install Tails on USB-Stick =====
See howto: [[https://tails.boum.org/|Tails]] and run it.
===== 2.) Configure Tails =====
[[https://tails.boum.org/install/expert?back=1|Tails configuration]]
* Create a Persistent Storage: https://tails.net/doc/persistent_storage/
* Enable the Additional Software feature of Tails persistence: https://tails.net/doc/persistent_storage/additional_software/
* Enable Dotfiles feature: https://tails.net/doc/persistent_storage/configure/
Reboot
When logging in after the reboot, unlock persistence volume and set an Administration Password.
===== 3.) Install Flatpak =====
The approach used to run Signal on Tails is using flatpak. Flatpak is a utility for software deployment and package management for Linux (Tails is a Linux).
**WARNING**: since you download (and update) Signal from flatpak source you now depend on Flatpaks integrity!!!
Open Terminal:
''sudo apt update && sudo apt install flatpak''
Tails then asks if you want to add flatpak to your additional software. Choose: "Install every Time".
===== 4.) Configure Flatpak =====
Put these commands into a script (a simple text file) in persistent folder i.e. ''/home/amnesia/Persistent/flatpak-setup.sh''. You can do so by opening it from the Terminal with a text editor:
gnome-text-editor /home/amnesia/Persistent/flatpak-setup.sh
Content of the file:
#!/bin/sh
mkdir -p /home/amnesia/Persistent/flatpak
mkdir -p /home/amnesia/.local/share
if ! file /home/amnesia/.local/share/flatpak | grep -q 'symbolic link'; then
rm -rf --one-file-system /home/amnesia/.local/share/flatpak
ln -s /home/amnesia/Persistent/flatpak /home/amnesia/.local/share/flatpak
fi
mkdir -p /home/amnesia/Persistent/app
mkdir -p /home/amnesia/.var
ln -s /home/amnesia/Persistent/app /home/amnesia/.var/app
* Make script executable
''chmod +x /home/amnesia/Persistent/flatpak-setup.sh''
* Add script to autostart
Create a file: ''/live/persistence/TailsData_unlocked/dotfiles/.config/autostart/FlatpakSetup.desktop''. To do so, first create the directory, then open the file with a text editor:
mkdir -p /live/persistence/TailsData_unlocked/dotfiles/.config/autostart/
gnome-text-editor /live/persistence/TailsData_unlocked/dotfiles/.config/autostart/FlatpakSetup.desktop
Content of the file:
[Desktop Entry]
Name=FlatpakSetup
GenericName=Setup Flatpak on Tails
Comment=This script runs the flatpak-setup.sh script on start of the user session
Exec=/live/persistence/TailsData_unlocked/Persistent/flatpak-setup.sh
Terminal=false
Type=Application
Reboot
When logging in after the reboot, unlock persistence volume and set an Administration Password.
===== 5.) Install Signal with Flatpak =====
Open Terminal:
torify flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
torify flatpak install flathub org.signal.Signal
(This will take quite a couple of minutes.)
===== 6.) Configure Signal =====
Put these commands into a script (a simple text file) in ''/home/amnesia/Persistent/signal.sh''. To do so, open the file in a text editor:
gnome-text-editor /home/amnesia/Persistent/signal.sh
Content of the file:
#!/bin/sh
export HTTP_PROXY=socks://127.0.0.1:9050
export HTTPS_PROXY=socks://127.0.0.1:9050
flatpak run org.signal.Signal
* Make script executable
''chmod +x /home/amnesia/Persistent/signal.sh''
* Add script to applications
Create a file: ''/live/persistence/TailsData_unlocked/dotfiles/.local/share/applications/Signal.desktop''.
To do so, first create the directory, then open the file with a text editor:
mkdir -p /live/persistence/TailsData_unlocked/dotfiles/.local/share/applications
gnome-text-editor /live/persistence/TailsData_unlocked/dotfiles/.local/share/applications/Signal.desktop
Content of the file:
[Desktop Entry]
Name=Signal
GenericName=Signal Desktop Messenger
Exec=/home/amnesia/Persistent/signal.sh
Terminal=false
Type=Application
Icon=/home/amnesia/.local/share/flatpak/app/org.signal.Signal/current/active/files/share/icons/hicolor/128x128/apps/org.signal.Signal.png
Reboot and unlock persistence volume. (You need to unlock persistence volume every time you want to use Signal)
Signal now shows as part of the Gnome applications with a nice Signal icon (hit "windows" button and search for "Signal").
It's possible to start Signal like this as well:
''cd /home/amnesia/Persistent && ./signal.sh''
===== 7.) Update of Signal =====
**IMPORTANT**: to check for updates and update Signal you have to manually run:
''torify flatpak update''