Hello! We are running our annual fundraising. Please consider making a donation if you value this freely available service or want to support people around the world working towards liberatory social change - https://riseup.net/donate
_This guide has been tested with Tails OS versions **5.9**, **5.10** and **5.11**_
_This guide has been tested with Tails OS version **5.14**_
## Persistent Storage
If you want to keep Element Desktop persistent, we need to set up the Persisent storage accordingly: (if you want to use Element Desktop only once and lose everything after shutdown/reboot skip to section [Install](#Install))
If you want to keep Element Desktop persistent, we need to set up the Persistent storage accordingly: (if you want to use Element Desktop only once and lose everything after shutdown/reboot skip to section [Install](#Install))
0. Make sure you are using an up to date Tails OS, check out https://tails.boum.org/doc/upgrade/.
1. Create persistent storage, follow the steps on https://tails.boum.org/doc/persistent_storage/create/, skip to step 2 if you already have a persistent storage
2. Configure persistent storage with _[Additonal software](https://tails.boum.org/doc/persistent_storage/configure/#index12h2)_ enabled and features according to your other needs (mail, pgp, additional software) follow the steps on https://tails.boum.org/doc/persistent_storage/configure/, skip to step 3 if you already have configured your persistent storage with _additional software_ enabled.
3. (Re)start your Tails and setup an administration password, follow section _Set up an administration password_ at https://tails.boum.org/doc/first_steps/welcome_screen/administration_password/.
4. Choose Applications ▸ System Tools ▸ Terminal
5. Get root privileges with executing `sudo -i` use the password set in step 3.
4. Choose Applications ▸ System Tools ▸ Root Terminal and use the password set in step 3.
6. In order to create persistent storage for [Flatpak](https://flatpak.org), a package manager we're going to use for installing Element Desktop and keeping the software, settings, keys, messages etc. persistent, execute
~~~
sed -i '$ a /home/amnesia/.local/share/flatpak source=flatpak\n/home/amnesia/.var/app source=var_app' /live/persistence/TailsData_unlocked/persistence.conf
Ignore _WARNING torsocks[33952]: [syscall] Unsupported syscall number 315._
### Element-Desktop
1. Using the Terminal install element-desktop, executing `torify flatpak install flathub im.riot.Riot` and confirm with `Y`.
2. For running element-desktop on Tails via Tor and access to audio devices, we need to set parameters running element-desktop. <details><summary>Further details</summary> Outside the unsafe browser, Tails is configured to limit network use to the Tor network only. Therefore we need to tell element-desktop using Tor's SOCKS proxy by exporting `export HTTP_PROXY=socks://127.0.0.1:9050` and `export HTTPS_PROXY=socks://127.0.0.1:9050`.</details> This can be achieved using an executable shell script, create it executing
1. Using the Terminal install element-desktop, executing
~~~
echo -e '#!/bin/sh\nflatpak run im.riot.Riot --proxy-server=socks5://127.0.0.1:9050' | sudo tee -a /home/amnesia/Persistent/element-desktop.sh && chmod +x /home/amnesia/Persistent/element-desktop.sh
torify flatpak install flathub im.riot.Riot
~~~
and confirm with
~~~
Y
~~~
2. For running element-desktop on Tails via Tor and access to audio devices, we need to set parameters running element-desktop. <details><summary>Further details</summary> Outside the unsafe browser, Tails is configured to limit network use to the Tor network only. Therefore we need to tell element-desktop using Tor's SOCKS proxy by exporting `export HTTP_PROXY=socks://127.0.0.1:9050` and `export HTTPS_PROXY=socks://127.0.0.1:9050`.</details> This can be achieved using an executable shell script + creating a desktop file for a more convenient launch of Element, executing:
~~~
echo -e '#!/bin/sh\nflatpak run im.riot.Riot --proxy-server=socks5://127.0.0.1:9050' | sudo tee -a /home/amnesia/Persistent/element-desktop.sh && chmod +x /home/amnesia/Persistent/element-desktop.sh && echo -e '[Desktop Entry]\nType=Application\nName=Element\nIcon=/home/amnesia/.local/share/flatpak/app/im.riot.Riot/current/active/files/share/icons/hicolor/128x128/apps/im.riot.Riot.png\nExec=bash -c '\''/home/amnesia/Persistent/element-desktop.sh'\''\nTerminal=true\nCategories=Network\nMimeType=x-scheme-handler/element;\nStartupWMClass=element\nKeywords=Matrix;Element;' | tee -a ~/.local/share/applications/Element.desktop
~~~
4. If you haven't done it already while after installing another Flatpak from this HowTo, create an update script and Desktop shortcut for conveniently updating Flatpak managed Applications, executing:
2. Wait until additional software is installed successfully.
3. Go to [Activities Overview](https://tails.boum.org/doc/first_steps/desktop/index.en.html#activities), type 'Element' and click on it to start.
<details><summary>Alternatively via commandline:</summary>
1. Start Tails with persistent storage unlocked.
2. Wait until additional software is installed successfully.
3. Choose Applications ▸ System Tools ▸ Terminal
4. Execute:
~~~
Persistent/element-desktop.sh
~~~
</details>
### Update Applications installed via Flatpak
Regularly you should update your Applications installed via Flatpak
1. Start Tails with persistent storage unlocked.
2. Wait until additional software is installed successfully.
3. Go to [Activities Overview](https://tails.boum.org/doc/first_steps/desktop/index.en.html#activities), type `Flatpak` and click on `Flatpak-Update` to start.
4. When queried for in the terminal, confirm updates with