You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
matrix-spec/supporting-docs/projects/2017-05-02-circle.md

1.6 KiB

layout title description categories thumbnail author maturity
project Circle A thin client and server for group chat, supporting IRC & Matrix projects client /docs/projects/images/circle-fe-term+matrix-small.png LeoNerd Beta

{{ page.title }}

Circle is an IRC & Matrix client which merges the best attributes of a local client and the common screen+irssi recipe.

  • Keep IRC connects and state on a backend server, allowing disconnections from local UI.
  • Interact with a real local GUI for the frontend, instead of incurring SSH roundtrips for every keypress.
  • Supports IRC, Matrix,

image image

First, get the code from CPAN:

$ cpan Circle
$ cpan Circle::Net::Matrix

$ cpan Circle::FE::Term

Now you can run the backend. Personally I keep UNIX sockets in $HOME/var/run but of course feel free to use whatever path you like.

$ mkdir -p ~/var/run
$ cd circle-be
$ ./circle-be --socket ~/var/run/circle.sock

Now you can run the frontend, which connects to the backend server via ssh and connects to that UNIX socket.

$ cd circle-fe-term
$ ./circle-fe-term sshunix://server/var/run/circle.sock

Then in the Global tab, create a new Matrix network:

/networks add -type matrix Matrix

Then in the new MyNet tab for that network, configure it and connect:

/set homeserver example.org
/set user_id @me:example.org
/set access_token MDAxABCDE...

/connect

(for now, you'll have to steal the access token from another Matrix client, such as Riot or App::MatrixTool)