====== 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''