EOS: Distributed Networking Module
Table of Contents
(provide 'eos-distributed)
This module provides hooks for various distributed services.
EOS Matrix communication and synchronization module
Matrix is a decentralized way to "join" different communication platforms. Kind of like XMPP, but sane.
I recently set up a Synapse (Matrix's homeserver) server on writequit so that I could join my own things. Thankfully, @real_rrix wrote an elisp client for matrix, so I can join from my Emacs instance.
(use-package matrix-client :disabled t :init (setq matrix-homeserver-base-url "https://writequit.org" matrix-client-render-html nil) (defun eos/matrix-jack-in () (interactive) (matrix-client "dakrone")))
Add Matrix sauron support (for notifications)
(use-package matrix-client :disabled t :config (require 'matrix-sauron) (add-to-list 'sauron-modules 'matrix-sauron) (when (and sr-running-p (and (boundp 'sauron-matrix-running) (not sauron-matrix-running))) (matrix-sauron-start)))
IPFS - Distributed file-system
Running the IPFS daemon
I'd like the run the IPFS daemon as my local user, after installing and
initializing it. Notice that this requires installing IPFS, and then already
running ipfs init
as your user, before running this service
[Unit] Description=IPFS Daemon [Service] Type=simple ExecStart=/usr/local/bin/ipfs daemon ExecStop=/usr/bin/pkill ipfs Restart=always [Install] WantedBy=default.target
cp -fv $PWD/out/ipfs.service ~/.config/systemd/user/ipfs.service
systemctl --user daemon-reload
systemctl --user enable ipfs
systemctl --user start ipfs