{
  pkgs,
  config,
  flake,
  lib,
  ...
}:
{
  imports = [
    ./nix.nix
    ./networking.nix
    ./terminal-tooling.nix
    ./users.nix
    ./email-smtp.nix
    ./systemd.nix
  ];

  options.momo-cloud =
    let
      inherit (lib) mkOption types;
    in
    {
      adminEmail = mkOption {
        description = "Email address to use for administrative stuff like ACME";
        type = types.str;
        default = "admins@momo.koeln";
      };

      privacyPolicyUrl = mkOption {
        description = "URL of the privacy policy. Used to link there from applications";
        type = types.str;
        default = "https://momo.koeln/privacy";
      };

      imprintUrl = mkOption {
        description = "URL of the imprint. Used to link there from applications";
        type = types.str;
        default = "https://momo.koeln/about";
      };
    };

  config = {
    environment = {
      # Just a couple of global packages to make our lives easier
      systemPackages = with pkgs; [
        git
        vim
        wget
      ];
    };

    # Select internationalization properties
    console = {
      font = "Lat2-Terminus16";
      keyMap = "us";
    };

    time.timeZone = "Etc/UTC";
  };
}