## This is the tau daemon configuration file.
## Review it carefully.

## Datastore Path
#datastore = "~/.local/share/darkfi/taud_db"

## Sets DB logs replay datastore path
#replay_datastore = "~/.local/share/darkfi/replayed_taud_db"

## Run in replay mode to store Sled DB instructions
## (for eventgraph debugging tool)
#replay_mode = false

## Named pipe path
#pipe_path = "/tmp/tau_pipe"

## Whether to pipe notifications or not
#piped = false

## Current display name
#nickname = "NICKNAME"

## ====================
## Workspace settings
## ====================
##
## You can create a shared secret (read_key) with `taud --generate`.
## Never share this secret over unencrypted channels or with someone
## who you do not want to be able to read all the workspace's tasks.
## The write_public_key is used to verify task's authenticity the admin 
## of workspace should generate and share it, while write_key is the 
## private part and responsible for signing tasks and gaining write 
## access, this, too, should not be shared with someone you don't 
## want to add/edit tasks.
## Use it like this example:
#[workspace."foo"]
#read_key = "2bCqQTd8BJgeUzH7JQELZxjQuWS8aCmXZ9C6w7ktNS1v"
#write_public_key = "Fgsc8tep4KX3Rb2drq8RxMyrHFWQ7wZaZPpF9F3GQYFG"
#write_key = ""

[workspace."darkfi-dev"]
read_key = "F63KzWGXgUdEfHcjQ2o4C54qbD4vDik7zjY5pSHQMxv2"
write_public_key = "7iHFdGxe1DYyBtPLVFb7fXL3Kk495WtwRWaNxhYQTU9x"
# write_key = ""

# JSON-RPC settings
[rpc]
# JSON-RPC listen URL
rpc_listen = "tcp://127.0.0.1:23330"

# Disabled RPC methods
rpc_disabled_methods = ["p2p.get_info"]

# P2P network settings
[net]
# Magic Bytes to distinguish the p2p network
magic_bytes = [157, 137, 109, 97]

# Path to the P2P datastore
p2p_datastore = "~/.local/share/darkfi/taud"

# Path to a configured hostlist for saving known peers
hostlist = "~/.local/share/darkfi/taud/hostlist.tsv"

## Outbound connection slots
#outbound_connections = 8

## Inbound connection slots
#inbound_connections = 8

## White connection percent
#gold_connect_count = 2

## White connection percent
#white_connect_percent = 70

# Nodes to avoid interacting with for the duration of the program, in the
# format ["host", ["scheme", "scheme"], [port, port]].
# If scheme is left empty it will default to "tcp+tls".
# If ports are left empty all ports from this peer will be blocked.
#blacklist = [["example.com", ["tcp"], [8551, 23331]]]

# Whitelisted transports for outbound connections
active_profiles = ["tor"]
#active_profiles = ["tcp+tls"]
#active_profiles = ["tor", "tor+tls"]

# Transports you want to be mixed (e.g. Tor would be allowed to connect to `tcp://`
# if tcp is added to mixed_profiles and tor is added to active_profiles)
#mixed_profiles = []

# Tor Socks5 proxy
#tor_socks5_proxy = "socks5://127.0.0.1:9050"

# Nym Socks5 proxy
#nym_socks5_proxy = "socks5://127.0.0.1:1080"

# I2p Socks5 proxy
#i2p_socks5_proxy = "socks5://127.0.0.1:4447"

[net.profiles."tcp+tls"]
## Seed nodes to connect to
seeds = [
    "tcp+tls://lilith0.dark.fi:23331",
    "tcp+tls://lilith1.dark.fi:23331",
]

## Manual peers to connect to
#peers = []

## P2P accept addresses
#inbound = ["tcp+tls://0.0.0.0:23331", "tcp+tls://[::]:23331"]

## Addresses we want to advertise to peers (optional)
## These should be reachable externally
#external_addrs = ["tcp+tls://my.resolveable.address:23331"]

[net.profiles."tor"]
## Seed nodes to connect to
seeds = [
    "tor://g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:23332",
    "tor://yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:23332",
]

## Manual peers to connect to
#peers = []

## P2P accept addresses
#inbound = ["tor://127.0.0.1:23331"]

[net.profiles."i2p"]
## Seed nodes to connect to
#seeds = []

## Manual peers to connect to
#peers = []

## P2P accept addresses
#inbound = ["tcp://127.0.0.1:23331"]

## Addresses we want to advertise to peers
#external_addrs = ["i2p://youraddress.b32.i2p:23331"]

[net.profiles."socks5"]
## Seed nodes to connect to
seeds = [
    "socks5://127.0.0.1:9050/g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:23332",
    "socks5://127.0.0.1:9050/yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:23332",
]

## Manual peers to connect to
#peers = []

[net.profiles."socks5+tls"]
## Seed nodes to connect to
seeds = [
    #"socks5+tls://127.0.0.1:9050/lilith0.dark.fi:23331",
    #"socks5+tls://127.0.0.1:1080/lilith1.dark.fi:23331"
]

## Manual peers to connect to
#peers = []

[net.profiles."tor+tls"]
## Seed nodes to connect to
seeds = [
    "tor+tls://lilith0.dark.fi:23331",
    "tor+tls://lilith1.dark.fi:23331"
]

## Manual peers to connect to
#peers = []

[net.profiles."tcp"]
## Seed nodes to connect to
#seeds = ["tcp://127.0.0.1:23332"]

## Manual peers to connect to
#peers = []

## P2P accept addresses
#inbound = ["tcp://127.0.0.1:23331"]

## Addresses we want to advertise to peers
#external_addrs = ["tcp://127.0.0.1:23331"]
