__TOC__
== Overview ==
Unlike most operating systems, [https://tails.boum.org/about/ Tails runs ''entirely'' in memory.] When Tails shuts down, memory contents are deleted, restoring the OS to its original state. Only files saved to the [https://tails.boum.org/doc/persistent_storage/ Persistent Storage] survive a reboot.
Therefore, Bisq must be reinstalled (and configured) after every boot. More importantly, Bisq's [[data directory|default data directory]] must be relocated to the '''Persistent Storage''' so that your wallet, keys, etc. are not lost every time Tails shuts down.
This is easy to automate with an installation script.
== Preparations ==
=== Configure Tails ===
On the Tails [https://tails.boum.org/doc/first_steps/welcome_screen/ Welcome Screen:]
* [https://tails.boum.org/doc/first_steps/welcome_screen/administration_password/ Set up an administration password.]
* [https://tails.boum.org/doc/persistent_storage/create/ Create Persistent Storage.]
Once Persistent Storage has been created, a settings window will open automatically. You can also open it from the desktop menu: Applications > Tails > Persistent Storage.
* Enable the '''Persistent Folder''' in the above settings.
=== Configure the Persistent Folder ===
* Create a directory to store the Bisq installer (and installation script):
:mkdir /home/amnesia/Persistent/bisq/
* Create a '''persistent data directory''' for your Bisq user data:
:mkdir /home/amnesia/Persistent/bisq/Bisq/
==== Import user data from backup ====
{{Admonition_Warn|'''WARNING:''' Ensure that the [[#Configure_the_Persistent_Folder|persistent data directory]] is EMPTY before importing. Do NOT mix user data from different sessions.}}
If you wish to import user data from a previous Bisq installation or backup, copy it into the [[#Configure_the_Persistent_Folder|persistent data directory]]:
*cp -ra /[backupdirectory]/bisq_backup_version001/. /home/amnesia/Persistent/bisq/Bisq/
'''N.B.''' The correct path to your btc_mainnet directory should now be:
:/home/amnesia/Persistent/bisq/Bisq/btc_mainnet
=== Download Bisq ===
* [https://bisq.network/downloads/ Download] and [[Downloading_and_installing#Verify_installer_file|verify]] the Debian (.deb) version of the Bisq installer.
* Move the installer file to the [[#Configure_the_Persistent_Folder|Bisq installer directory]]:
:mv /path/to/[yourdownload.deb] /home/amnesia/Persistent/bisq/
=== Create installation script ===
'''NOTE:''' The script below will install Bisq, configure Tor, and redirect user data to the [[#Configure_the_Persistent_Folder|persistent data directory]] (by creating a 'symbolic link'). Every step in the script is explained via 'echo' commands.
* Create a new script file:
:touch /home/amnesia/Persistent/bisq/install-bisq.sh
* Make the file executable:
:chmod +x /home/amnesia/Persistent/bisq/install-bisq.sh
* Edit the file, and save the script below.
* On the second line, replace [yourdownload.deb] with the filename of the [[#Download_Bisq|Bisq installer you downloaded]].
#!/bin/bash
BisqInstaller=/home/amnesia/Persistent/bisq/[yourdownload.deb]
DataDirectory=/home/amnesia/Persistent/bisq/Bisq
echo "Install Bisq ..."
dpkg -i $BisqInstaller
echo "Change access rights of /var/run/tor/control.authcookie ..."
chmod o+r /var/run/tor/control.authcookie
echo "Create /etc/onion-grater.d/bisq.yml ..."
echo "---
- apparmor-profiles:
- '/opt/bisq/bin/Bisq'
users:
- 'amnesia'
commands:
AUTHCHALLENGE:
- 'SAFECOOKIE .*'
SETEVENTS:
- 'CIRC ORCONN INFO NOTICE WARN ERR HS_DESC HS_DESC_CONTENT'
GETINFO:
- pattern: 'status/bootstrap-phase'
response:
- pattern: '250-status/bootstrap-phase=*'
replacement: '250-status/bootstrap-phase=NOTICE BOOTSTRAP PROGRESS=100 TAG=done SUMMARY="Done"'
- 'net/listeners/socks'
ADD_ONION:
- pattern: 'NEW:(\S+) Port=9999,(\S+)'
replacement: 'NEW:{} Port=9999,{client-address}:{}'
- pattern: '(\S+):(\S+) Port=9999,(\S+)'
replacement: '{}:{} Port=9999,{client-address}:{}'
DEL_ONION:
- '.+'
HSFETCH:
- '.+'
events:
CIRC:
suppress: true
ORCONN:
suppress: true
INFO:
suppress: true
NOTICE:
suppress: true
WARN:
suppress: true
ERR:
suppress: true
HS_DESC:
response:
- pattern: '650 HS_DESC CREATED (\S+) (\S+) (\S+) \S+ (.+)'
replacement: '650 HS_DESC CREATED {} {} {} redacted {}'
- pattern: '650 HS_DESC UPLOAD (\S+) (\S+) .*'
replacement: '650 HS_DESC UPLOAD {} {} redacted redacted'
- pattern: '650 HS_DESC UPLOADED (\S+) (\S+) .+'
replacement: '650 HS_DESC UPLOADED {} {} redacted'
- pattern: '650 HS_DESC REQUESTED (\S+) NO_AUTH'
replacement: '650 HS_DESC REQUESTED {} NO_AUTH'
- pattern: '650 HS_DESC REQUESTED (\S+) NO_AUTH \S+ \S+'
replacement: '650 HS_DESC REQUESTED {} NO_AUTH redacted redacted'
- pattern: '650 HS_DESC RECEIVED (\S+) NO_AUTH \S+ \S+'
replacement: '650 HS_DESC RECEIVED {} NO_AUTH redacted redacted'
- pattern: '.*'
replacement: ''
HS_DESC_CONTENT:
suppress: true" > /etc/onion-grater.d/bisq.yml
echo "Restart onion-grater service ..."
systemctl restart onion-grater.service
echo "Edit Bisq executable file ..."
sed -i 's+Exec=/opt/bisq/bin/Bisq+Exec=/opt/bisq/bin/Bisq --torControlPort 951 --torControlCookieFile=/var/run/tor/control.authcookie --torControlUseSafeCookieAuth+' /usr/share/applications/bisq-Bisq.desktop
echo "Redirect user data to Tails Persistent Storage ..."
ln -s $DataDirectory /home/amnesia/.local/share/Bisq
echo "Installation complete."
== Run Bisq ==
'''NOTE:''' Your user data is safely stored in the [[#Configure_the_Persistent_Folder|persistent data directory]]. However, the Bisq application is 'uninstalled' every time Tails shuts down.
To install Bisq:
* Connect to the Tor network, via the desktop menu:
:Applications > Internet > Tor Connection
* Run the [[#Create_installation_script|installation script]]:
:sudo sh /home/amnesia/Persistent/bisq/install-bisq.sh
Once Bisq has been installed, you can either start it from the desktop menu:
*Applications > Internet > Bisq
Or via terminal:
*/opt/bisq/bin/Bisq --torControlPort 951 --torControlCookieFile=/var/run/tor/control.authcookie --torControlUseSafeCookieAuth
== Maintenance ==
=== Backup user data ===
==== While Bisq is running ====
You can [[Backing_up_application_data#While_Bisq_is_running|backup while Bisq is running]], as normal.
==== While Bisq is closed ====
You can also backup while Bisq is closed, by copying your user data to a backup location. However:
{{Admonition_Warn|'''REMEMBER:''' Your user data is stored in the [[#Configure_the_Persistent_Folder|persistent data directory]], and '''NOT''' Bisq's [[data directory|default data directory]].
'''WARNING:''' Only backup data into an EMPTY directory. Do NOT mix user data from different sessions.}}
To backup, first create a new (empty) directory for the backup, then copy the [[#Configure_the_Persistent_Folder|persistent data directory]]. For example:
*mkdir /[backupdirectory]/bisq_backup_version001
*cp -ra /home/amnesia/Persistent/bisq/Bisq/. /[backupdirectory]/bisq_backup_version001
=== Upgrade Bisq to the latest version ===
{{Admonition_Warn|'''WARNING:''' Do not downgrade Bisq. Installing an older version could cause irreversible damage to Bisq data.
'''NOTE''': Before upgrading, it is recommended to [[#Backup_user_data|backup your user data]].}}
To upgrade Bisq:
* [[#Download_Bisq|Download Bisq]] to /home/amnesia/Persistent/bisq/
* Update the BisqInstaller= line of the [[#Create_installation_script|installation script]] with the filename of the new version.
[[Category:Guides]]