Running Bisq on Tails

From Bisq Wiki
Revision as of 18:54, 22 September 2020 by Plebeian9000 (talk | contribs) (add warning about amnesic operating system)
Jump to navigation Jump to search

To run Bisq on the Tails OS, a few manual steps are required.

Preparations

Install

Warn
Tails does not persist data by default, so while following these directions will allow you to run Bisq on Tails, all data will be erased as soon as you reboot. This means you will lose your Bisq keys, wallet data, and everything else in the data directory.

Make sure to set up persistent storage to have your Bisq data persisted across sessions.

Go to https://github.com/bisq-network/bisq/releases using your Tor Browser and download the Bisq-64bit-[version].deb and .asc files.

You may have to use wget, because curl may not use Tor and could be blocked from using the internet.

Verify your download

  • wget https://bisq.network/pubkey/[keyid].asc should result in a file [keyid].asc in your working directory
  • Import the key to gpg by gpg --import [keyid].asc
  • Check the signature with gpg --digest-algo SHA256 --verify [yourbinaryhere]{.asc*,} which should give you something like this
[snip]
gpg: Good signature from "Christoph Atteneder...
[snip]

Install Bisq

Do a simple sudo dpkg -i [yourbinaryhere].

Configure

  • Make authcookie readable:
sudo chmod o+r /var/run/tor/control.authcookie
  • Configure onion-grater.

Create a file /etc/onion-grater.d/bisq.yml with contents:

---
- apparmor-profiles:
    - '/opt/Bisq/Bisq'
  users:
    - 'amnesia'
  commands:
    AUTHCHALLENGE:
      - 'SAFECOOKIE .*'
    SETEVENTS:
      - 'CIRC WARN ERR'
      - 'CIRC ORCONN INFO NOTICE WARN ERR HS_DESC HS_DESC_CONTENT'
    GETINFO:
      - '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

Then restart the onion-grater service with service onion-grater restart.

  • In /usr/share/applications/Bisq.desktop, replace:
Exec=/opt/Bisq/Bisq

with:

Exec=/opt/Bisq/Bisq --torControlPort 9051 --torControlCookieFile=/var/run/tor/control.authcookie --torControlUseSafeCookieAuth

Run Bisq

Click Applications > Other > Bisq.

Or via terminal:

/opt/Bisq/Bisq --torControlPort 9051 --torControlCookieFile=/var/run/tor/control.authcookie --torControlUseSafeCookieAuth