Matrix Options

cells/options/matrix.nix defines the small service-specific schema used by the Matrix server branch.

Up: options

Down: Matrix server leaf | matrix branch

What this node does

The Matrix options decide whether to enable the service, which public domain the service should use, and whether bridge services should be enabled.

options.my.matrix = {
  enable = mkOption {
    type = types.bool;
    default = false;
  };
 
  domain = mkOption {
    type = types.str;
    default = "matrix.example.com";
  };
};

Why it exists

The server module should describe how to run Matrix. The host should decide whether this server actually runs it and which domain it serves.

This is a useful split: service implementation goes in a leaf, deployment decisions go in host configuration.

Privacy note

Public docs should use matrix.example.com or another placeholder. Real production domains, bridge credentials, registration tokens, and deployment paths belong in private configuration or secrets.