cliffmccarthy 0a2ade038c refactor: Reorder deploy_chatmail()
- The previous commits that added Deployer classes mostly kept
  deployment operations in the same order that they were in before.
  To organize the process into separate stages for install, configure,
  and activate, we need to reorder the method calls.  This is the
  commit that does that, and thus this is the commit that has the
  largest effect on the order of operations.
- The calls for the deployer objects are all reordered here so that
  the methods are called in the same sequence for each stage.  This
  will allow us to collect the calls into loops in the next commit.
  This commit provides a way to see a diff showing exactly how the
  sequence changed.
- The sequence of deployers was largely based on preserving the order
  of the "activate" stage, as this seems like the place order might be
  the most likely to matter.  Installation of packages and
  configuration of files should generally be able to run in any order.
  (ChatmailDeployer handles updating the apt data, and therefore needs
  to be first, however.)
2025-11-12 19:16:51 -06:00
2023-12-11 15:52:12 +01:00

Chatmail relays for end-to-end encrypted email

Chatmail relay servers are interoperable Mail Transport Agents (MTAs) designed for:

  • Zero State: no private data or metadata collected, messages are auto-deleted, low disk usage

  • Instant/Realtime: sub-second message delivery, realtime P2P streaming, privacy-preserving Push Notifications for Apple, Google, and Huawei;

  • Security Enforcement: only strict TLS, DKIM and OpenPGP with minimized metadata accepted

  • Reliable Federation and Decentralization: No spam or IP reputation checks, federating depends on established IETF standards and protocols.

This repository contains everything needed to setup a ready-to-use chatmail relay on an ssh-reachable host. For getting started and more information please refer to the web version of this repositories' documentation at

https://chatmail.at/doc/relay

Description
Languages
Python 86%
Jinja 10%
Filebench WML 1.3%
Shell 1%
Forth 0.6%
Other 1.1%