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

48 lines
3.2 KiB
Markdown

# 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](http://127.0.0.1:7657/configclients)
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 URL`http://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.