Telodendria: Difference between revisions

From IM Wiki
Jump to navigation Jump to search
Matrix>Admin
m Fixed minor spelling mistakes
Matrix>LDA
Add install "instructions" (i suck at this lol)
Line 1: Line 1:
'''[https://telodendria.io Telodendria]''' is a Matrix [[Homeserver|homeserver]] implementation currently in alpha, written in C99 (previously C89)<ref>Cytoplasm, which Telodendria depends on [https://git.telodendria.io/Telodendria/Cytoplasm/issues/28 has switched to using C99 features]</ref>, that aims to be extremely powerful yet lightweight, while being as POSIX-compliant as possible.
'''[https://telodendria.io Telodendria]''' is a Matrix [[Homeserver|homeserver]] in alpha written in C99(previously C89)<ref>Cytoplasm, which Telodendria depends on [https://git.telodendria.io/Telodendria/Cytoplasm/issues/28 has switched to using C99 features]</ref>, that aims to extremely powerful yet lightweight, while all being as POSIX-compliant as possible.


Telodendria is still in heavy development and isn't excepting a non-federating release until January 2025<ref>[https://git.telodendria.io/Telodendria/Telodendria Telodendria README]</ref>.
Telodendria is still in heavy development and isn't excepting a non-federating release until January 2025<ref>[https://git.telodendria.io/Telodendria/Telodendria Telodendria README]</ref>.


== Compiling Telodendria from Git ==
Telodendria only needs a few dependencies: Cytoplasm (which can be built at the same time), a POSIX-compliant <code>libc</code> (with pthread support), and an optional TLS library(OpenSSL/LibreSSL).
To build it, you can first install Cytoplasm if your distribution supports it.
On Arch, you can use the AUR to install <code>cytoplasm-git</code>.
Then, clone and setup Telodendria with the following<syntaxhighlight lang="shell-session">
$ git clone https://git.telodendria.io/Telodendria/Telodendria # use --recurse-submodules if Cytoplasm wasn't already installed
$ cd Telodendria
# If Cytoplasm wasn't already installed
$ cd Cytoplasm
$ ./configure # --disable-tls if you do not have OpenSSL or LibreSSL
$ make # You can use -j[jobs] there
$ cd ..
</syntaxhighlight>
Now, build it with<syntaxhighlight lang="shell-session">
$ ./configure # in the Telodendria directory
$ make # You can use -j[jobs] here
</syntaxhighlight>
If you didn't already install Cytoplasm, make sure to either move the generated shared library (<code>Cytoplasm/out/lib/libCytoplasm.so</code>) to a standard search path by using <code>make install</code>, or add its directory to <code>LD_LIBRARY_PATH</code> for testing.
Then, to test that Telodendria works, one can run on its directory
<syntaxhighlight lang="shell-session">
$ ./out/bin/telodendria
</syntaxhighlight>
It should log <code>No database directory specified.</code> before shutting down.
== References ==
== References ==
<references />
<references />

Revision as of 17:47, 16 January 2024

Telodendria is a Matrix homeserver in alpha written in C99(previously C89)[1], that aims to extremely powerful yet lightweight, while all being as POSIX-compliant as possible.

Telodendria is still in heavy development and isn't excepting a non-federating release until January 2025[2].

Compiling Telodendria from Git

Telodendria only needs a few dependencies: Cytoplasm (which can be built at the same time), a POSIX-compliant libc (with pthread support), and an optional TLS library(OpenSSL/LibreSSL).

To build it, you can first install Cytoplasm if your distribution supports it. On Arch, you can use the AUR to install cytoplasm-git.

Then, clone and setup Telodendria with the following

$ git clone https://git.telodendria.io/Telodendria/Telodendria # use --recurse-submodules if Cytoplasm wasn't already installed
$ cd Telodendria

# If Cytoplasm wasn't already installed
$ cd Cytoplasm
$ ./configure # --disable-tls if you do not have OpenSSL or LibreSSL
$ make # You can use -j[jobs] there
$ cd ..

Now, build it with

$ ./configure # in the Telodendria directory
$ make # You can use -j[jobs] here

If you didn't already install Cytoplasm, make sure to either move the generated shared library (Cytoplasm/out/lib/libCytoplasm.so) to a standard search path by using make install, or add its directory to LD_LIBRARY_PATH for testing.

Then, to test that Telodendria works, one can run on its directory

$ ./out/bin/telodendria

It should log No database directory specified. before shutting down.

References

  1. Cytoplasm, which Telodendria depends on has switched to using C99 features
  2. Telodendria README