dendrite/cmd/dendrite-demo-pinecone-i2p/README.md
2023-01-18 21:29:44 +01:00

3.2 KiB

Pinecone Demo I2P

This is the Dendrite Pinecone over i2p demo! It's easy to get started.

First of all, make sure the "SAM application bridge" is enabled and started in your I2P Router Config

To run the homeserver, start at the root of the Dendrite repository and run:

mkdir -p serverstorage
go run ./cmd/dendrite-demo-pinecone -dir serverstorage

Specifying the dir is not required, but i highly recommend it if you dont like files being scattered around.

To connect to the static Pinecone peer on the i2p network run:

mkdir -p serverstorage
go run ./cmd/dendrite-demo-pinecone -dir serverstorage -peer 3do33c5purkmidtcdxkqindjplcm3l6uv6qysc5a3pfa7fd7lv6q.b32.i2p

This is my personal instance and the only one as of writing this. You can expand it with others later. Also you can share your address as the static peer with others, it will be printed on start, or in the keys subdirectory.

Then point your favourite Matrix client to the homeserver URLhttp://localhost:8008 (or whichever -port you specified), create an account and log in. If your peering connection is operational then you should see a Connected TCP: line in the log output. If not then try a different peer. Once logged in, you should be able to open the room directory or join a room by its ID. You can try to open a DM with me @biehdc:3f885e3f09ddc058c033deb3d51050373ec8cae52db0274a13e16ae5acf5f9a2 or join the main room: The URL you need depends on your client, try them in this sequence:

  • https://matrix.to/#/%23i2p-pinecone%3A3f885e3f09ddc058c033deb3d51050373ec8cae52db0274a13e16ae5acf5f9a2?via=3f885e3f09ddc058c033deb3d51050373ec8cae52db0274a13e16ae5acf5f9a2
  • https://matrix.to/#/!Ebnmc0k7OORcQhVT:3f885e3f09ddc058c033deb3d51050373ec8cae52db0274a13e16ae5acf5f9a2?via=3f885e3f09ddc058c033deb3d51050373ec8cae52db0274a13e16ae5acf5f9a2
  • #i2p-pinecone:3f885e3f09ddc058c033deb3d51050373ec8cae52db0274a13e16ae5acf5f9a2

You can connect to multiple static peers like this:

go run ./cmd/dendrite-demo-pinecone -peer xxxsnipxxx.b32.i2p,yyysnipyyy.b32.i2p,zzzsnipzzz.b32.i2p

Certainly a good idea to add a few.

The following command line arguments are accepted:

  • -peer full.b32.i2p to specify a static Pinecone peer to connect to - you will need to supply this if you do not have another Pinecone node on your network and if multicast is disabled.
  • -port 12345, default 8008, to specify a port to listen on for connections from the client interface http://localhost:8008.
  • -name MyAwesomePineconePeerOnI2P to change the instances name. If you run multiple instances against the same I2P router you must specify different names, otherwise you get an error. ALSO chaging this will change your static .b32.i2p address!
  • -dir serverfiles where to store pinecone and dendrite data, like media cache. Highly recommended to set and the directory must exist before starting the instance.
  • -multicast true is set to off by default, you can turn it on if you want your instance to communicate with other instances in the same lan. Keep untouched unless you really want it.
  • -sam ip:port is set to default, but can be overridden if sam is not at 127.0.0.1:7656.
  • -help prints the help text and exits.