``` mermaid classDiagram %% TODO: replace classDiagram Hardware --|> Storage Hardware --|> Virtualization Virtualization --|> Nixos Virtualization --|> LinuxOS Core_Services <|-- Services Core_Services <|-- FediServices Storage <|-- Services Storage <|-- FediServices Nixos --|> Services Nixos --|> FediServices Management_UI --|> NixOps Management_UI --|> Administration class Core_Services{ DNS EMail identity_management secret_management authentication() SASL() } class Services { NextCloud secure_document_collaboration Forgejo webmail HedgeDoc project_planning } class FediServices { Matrix Pixelfed Peertube Mastadon %%GotoSocial activityPub() } class Administration { monitoring alerting graphing restore_backups } class Management_UI { human-oriented administration replication() migration() } class Storage { exclusive_filesystem shared_blob zfs() } class Hardware { Storage Networking Operating-system Virtualization } class Virtualization { Proxmox } class Nixos { Application } class LinuxOS { Application } class NixOps { orchestration } ``` * human-centric * easy, automated, replication and migration to different datacenter provider * blob storage replicated generically * files on the exclusive filesystems replicated via application-aware process, e.g.: * asynchronous, but "live" database replication * shutdown app then rsync directories * ZFS replication and snapshot-ing * Strengths, Weaknesses, Opportunities, and Threats awareness for all apps * Not everything needs to start on Nix, NixOs, or with NixOps * Do not use "Open Core" * GitLab * Dovcot * Zimbra * LXC containers (not Docker-style)