darkirc_config.toml 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  1. ## This is the darkirc configuration file.
  2. ## Review it carefully.
  3. ## IRC listen URL
  4. #irc_listen = "tcp://127.0.0.1:6667"
  5. ## TLS certificate path if IRC acceptor uses TLS (optional)
  6. #irc_tls_cert = "/etc/letsencrypt/darkirc/fullchain.pem"
  7. ## TLS secret key path if IRC acceptor uses TLS (optional)
  8. #irc_tls_secret = "/etc/letsencrypt/darkirc/privkey.pem"
  9. ## How many DAGs to be synced (each DAG represents a 1hr msg history),
  10. ## increasing this number means you get/sync previous hours msg history
  11. ## as well (max. 24)
  12. #dags_count = 8
  13. ## Sets Datastore Path
  14. #datastore = "~/.local/share/darkfi/darkirc/darkirc_db"
  15. ## Sets DB logs replay datastore path
  16. #replay_datastore = "~/.local/share/darkfi/darkirc/replayed_darkirc_db"
  17. ## Run in replay mode to store Sled DB instructions
  18. ## (for eventgraph debugging tool)
  19. #replay_mode = false
  20. ## List of channels to autojoin for new client connections
  21. autojoin = [
  22. "#dev",
  23. "#media",
  24. "#hackers",
  25. "#memes",
  26. "#philosophy",
  27. "#markets",
  28. "#math",
  29. "#random",
  30. "#lunardao",
  31. ]
  32. ## IRC server specific password
  33. ## (optional, but once configured, it is required from the IRC client side)
  34. #password = "CHANGE_ME"
  35. # Log to file. Off by default.
  36. #log = "/tmp/darkirc.log"
  37. # Set log level. 1 is info (default), 2 is debug, 3 is trace
  38. #verbose = 2
  39. ## Running darkirc in header-only mode
  40. ## history won't be fetched but DAG sync fast
  41. #fast_mod = false
  42. ## JSON-RPC settings
  43. [rpc]
  44. ## JSON-RPC listen URL
  45. rpc_listen = "tcp://127.0.0.1:26660"
  46. ## Disabled RPC methods
  47. rpc_disabled_methods = ["p2p.get_info"]
  48. # P2P network settings
  49. [net]
  50. # Magic Bytes to distinguish the p2p network
  51. magic_bytes = [251, 229, 199, 181]
  52. # Path to the P2P datastore
  53. p2p_datastore = "~/.local/share/darkfi/darkirc"
  54. # Path to a configured hostlist for saving known peers
  55. hostlist = "~/.local/share/darkfi/darkirc/p2p_hostlist.tsv"
  56. ## Outbound connection slots
  57. # outbound_connections = 8
  58. ## Inbound connection slots
  59. #inbound_connections = 8
  60. ## White connection percent
  61. # gold_connect_count = 2
  62. ## White connection percent
  63. # white_connect_percent = 70
  64. # Nodes to avoid interacting with for the duration of the program, in the
  65. # format ["host", ["scheme", "scheme"], [port, port]].
  66. # If scheme is left empty it will default to "tcp+tls".
  67. # If ports are left empty all ports from this peer will be blocked.
  68. #blacklist = [["example.com", ["tcp"], [8551, 23331]]]
  69. # Whitelisted transports for outbound connections
  70. active_profiles = ["tor"]
  71. #active_profiles = ["tcp+tls"]
  72. #active_profiles = ["tor", "tor+tls"]
  73. # Transports you want to be mixed (e.g. Tor would be allowed to connect to `tcp://`
  74. # if tcp is added to mixed_profiles and tor is added to active_profiles)
  75. #mixed_profiles = []
  76. # Tor Socks5 proxy
  77. #tor_socks5_proxy = "socks5://127.0.0.1:9050"
  78. # Nym Socks5 proxy
  79. #nym_socks5_proxy = "socks5://127.0.0.1:1080"
  80. # I2p Socks5 proxy
  81. #i2p_socks5_proxy = "socks5://127.0.0.1:4447"
  82. [net.profiles."tcp+tls"]
  83. ## Seed nodes to connect to
  84. seeds = ["tcp+tls://lilith0.dark.fi:25551", "tcp+tls://lilith1.dark.fi:25551"]
  85. ## Manual peers to connect to
  86. #peers = []
  87. ## P2P accept addresses
  88. #inbound = ["tcp+tls://0.0.0.0:26661", "tcp+tls://[::]:26661"]
  89. ## Addresses we want to advertise to peers (optional)
  90. ## These should be reachable externally
  91. #external_addrs = ["tcp+tls://my.resolveable.address:26661"]
  92. [net.profiles."tor"]
  93. ## Seed nodes to connect to
  94. seeds = [
  95. "tor://g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:25552",
  96. "tor://yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:25552",
  97. ]
  98. ## Manual peers to connect to
  99. #peers = []
  100. ## P2P accept addresses
  101. #inbound = ["tor://127.0.0.1:26661"]
  102. [net.profiles."i2p"]
  103. ## Seed nodes to connect to
  104. seeds = [
  105. ##TODO: replace with an official seed address
  106. "i2p://6l2rdfriixo2nh5pr5bt555lyz56qox2ikzia4kuzm4okje7gtmq.b32.i2p:5262"
  107. ]
  108. ## Manual peers to connect to
  109. #peers = []
  110. ## P2P accept addresses
  111. #inbound = ["tcp://127.0.0.1:25551"]
  112. ## Addresses we want to advertise to peers (optional)
  113. ## These should be reachable externally
  114. #external_addrs = ["i2p://youraddress.b32.i2p:25551"]
  115. [net.profiles."socks5"]
  116. ## Seed nodes to connect to
  117. seeds = [
  118. "socks5://127.0.0.1:9050/g7fxelebievvpr27w7gt24lflptpw3jeeuvafovgliq5utdst6xyruyd.onion:25552",
  119. "socks5://127.0.0.1:9050/yvklzjnfmwxhyodhrkpomawjcdvcaushsj6torjz2gyd7e25f3gfunyd.onion:25552",
  120. ]
  121. ## Manual peers to connect to
  122. #peers = []
  123. [net.profiles."socks5+tls"]
  124. ## Seed nodes to connect to
  125. seeds = [
  126. #"socks5+tls://127.0.0.1:9050/lilith0.dark.fi:25551",
  127. #"socks5+tls://127.0.0.1:1080/lilith1.dark.fi:25551"
  128. ]
  129. ## Manual peers to connect to
  130. #peers = []
  131. [net.profiles."tor+tls"]
  132. ## Seed nodes to connect to
  133. seeds = [
  134. "tor+tls://lilith0.dark.fi:25551",
  135. "tor+tls://lilith1.dark.fi:25551"
  136. ]
  137. ## Manual peers to connect to
  138. #peers = []
  139. [net.profiles."tcp"]
  140. ## Seed nodes to connect to
  141. #seeds = ["tcp://127.0.0.1:25551"]
  142. ## Manual peers to connect to
  143. #peers = []
  144. ## P2P accept addresses
  145. #inbound = ["tcp://127.0.0.1:26661"]
  146. ## Addresses we want to advertise to peers
  147. #external_addrs = ["tcp://127.0.0.1:26661"]
  148. ## ====================
  149. ## IRC channel settings
  150. ## ====================
  151. ##
  152. ## You can create a shared secret with `darkirc --gen-secret`.
  153. ## Never share this secret over unencrypted channels or with someone
  154. ## who you do not want to be able to read all the channel messages.
  155. ## Use it like this example:
  156. #[channel."#foo"]
  157. #secret = "7CkVuFgwTUpJn5Sv67Q3fyEDpa28yrSeL5Hg2GqQ4jfM"
  158. #topic = "My secret channel"
  159. [channel."#dev"]
  160. topic = "DarkFi Development HQ"
  161. [channel."#media"]
  162. topic = "DarkFi Art, Fashion, Video, Memetics"
  163. [channel."#markets"]
  164. topic = "Crypto Market Talk"
  165. [channel."#math"]
  166. topic = "Math Talk"
  167. [channel."#memes"]
  168. topic = "DarkFi Meme Reality"
  169. [channel."#philosophy"]
  170. topic = "Philosophy Discussions"
  171. [channel."#random"]
  172. topic = "/b/"
  173. [channel."#lunardao"]
  174. topic = "LunarDAO talk"
  175. ## ================
  176. ## Contact settings
  177. ## ================
  178. ##
  179. ## In this section we configure our contacts and people we want to
  180. ## have encrypted DMs with. Whenever something in the configuration
  181. ## is changed, you can send a SIGHUP signal to the running darkirc
  182. ## instance to reload these.
  183. ##
  184. ## The format is:
  185. ## [contact."nickname"]
  186. ## dm_chacha_public = "{the_contact_public_key}"
  187. ## my_dm_chacha_secret = "{your_secret_key_for_this_contact}"
  188. ##
  189. ## "nickname" can be anything you want. This is how they will appear
  190. ## in your IRC client when they send you a DM.
  191. ##
  192. ## "dm_chacha_public" is the contacts' public key, which should be
  193. ## retrieved manually.
  194. ##
  195. ## "my_dm_chacha_secret" is the secret key used to decrypt direct
  196. ## messages sent to the public key (the counterpart to this secret key)
  197. ## you set for this contact. It is recommended to paste the public key
  198. ## here as a comment in order to be able to easily reference it for
  199. ## sharing. You can generate a keypair to use for a contact with:
  200. ## ./darkirc --gen-chacha-keypair
  201. ## Replace the secret key in the contact configuration with the
  202. ## generated one. You can generate and set a separate secret key for
  203. ## each contact, or reuse the same one in multiple contacts.
  204. ## **You should never share secret keys with anyone**
  205. ##
  206. ## Examples (set as many as you want):
  207. #[contact."satoshi"]
  208. #dm_chacha_public = "C9vC6HNDfGQofWCapZfQK5MkV1JR8Cct839RDUCqbDGK"
  209. #my_dm_chacha_secret = "A3mLrq4aW9UkFVY4zCfR2aLdEEWVUdH4u8v4o2dgi4kC"
  210. #
  211. #[contact."anon"]
  212. #dm_chacha_public = "7iTddcopP2pkvszFjbFUr7MwTcMSKZkYP6zUan22pxfX"
  213. #my_dm_chacha_secret = "E229CzXev335cxhHiJyuzSapz7HMfNzf6ipbginFTvtr"