Documentation

Quick Setup

When running Xeres, you definitely need to connect to some friends. Either try with someone online, but if you want, you can also use an automated ChatServer.

The main concept is to exchange IDs. You give your ID to your friend and your friend gives his ID to you. Only if you do this exchange, you can connect.

There are 2 menus which are useful for this. The first one is Peers / Copy own ID to Clipboard which will make your ID ready to paste to your friend. The other menu is Peers / Add Peer… where you can paste your friend”s ID.

Once those 2 steps are done, the software will connect directly and securely, without using any 3rd party or server.

FAQ

Will something else than Chat be supported?

Yes. It is planned to support most of the Retroshare feature set, eventually.

Which Retroshare services are implemented?

Currently:

  • ServiceInfo
  • RTT
  • Discovery
  • Heartbeat
  • Chat
  • Status
  • GxsID

Why this project, if Retroshare exists?

Xeres is not meant to compete against Retroshare but to advance the P2P platform. Focusing on the following points:

  • Java is a managed language, unlike C++, which should make it more stable. I dare you to crash Xeres by sending some crafted packets. The worst you will get is a disconnection.
  • Xeres is designed as a client/server model because I believe effective P2P requires an instance that is always running yet easily accessible from anywhere. Mobile devices and their limited battery are ill advised for running a full node.
  • The UI should be lean, non blocking and easy to use. It should also make content creation a breeze because there’s no corporation to “curate” (and censor) anything.

Is Xeres compatible with Retroshare?

Yes. You just need Retroshare 0.6.6 or higher.

Are there other projects compatible with the Retroshare protocol?

There’s Rustyshare by sehraf, written in Rust.

Is it a good idea to add as much random users as possible to improve connectivity?

No.

First, although Xeres was designed to scale well, having many friends won’t necessarily improve the experience because of the way the protocol works (simply put: streamed and smart). It’s better to have a few reliable and fast connections than many spotty ones.

Second, the security model of the RS protocol is based around being connected to “trusted nodes”. For example it is very easy to crash a connected Retroshare node by sending in crafted packets. Xeres won’t crash but will log some error or disconnect the peer, though no attempt will be made to notify of any hacking attempt.

And lastly, a friend can roughly discover your areas of interests and activities like subscribed chat rooms, time online and so on. Recent versions of Xeres allow to set a trust level to connected profiles and while this is not being put to use now, it might be used for a few improvements in that area later on.