Skip to content

Getting started

Requirements

  • Drupal 11.4 or later, including Drupal 12.
  • PHP 8.3 or later.
  • Drush 13 or later for applying the Recipe.
  • Postfix Admin 1.x. Composer installs the declared module dependency.

Install the Recipe

From the directory containing the Drupal site's composer.json, run:

composer require 'drush/drush:^13' 'drupal/postfix_admin_console:^1.0@beta'

Drupal's recommended project template unpacks contributed Recipes into the project's recipes directory. From the Drupal web root, apply the base Recipe:

../vendor/bin/drush recipe ../recipes/postfix_admin_console
../vendor/bin/drush cache:rebuild

Projects with a custom Composer layout should use the equivalent path where the Recipe was installed.

Assign the operator role

The Recipe creates a postfix_administrator role but does not create users or assign the role. Review the generated role at /admin/people/roles, then assign it to the intended operator through the site's normal user administration workflow.

The role grants the Postfix Admin settings permission and the create, administer, edit, delete, and published/unpublished view permissions for domains, mailboxes, aliases, and alias domains. It does not grant Drupal's general site-administration permissions.

Verify the result

  1. Confirm that Postfix Admin is enabled on the Extend page.
  2. Confirm that the Postfix administrator role exists with the expected permissions.
  3. Open Configuration → Web services → Postfix Admin.
  4. Create a domain before creating mailboxes, aliases, or alias domains.

The base Recipe is safe for an existing site: it does not change the default or administration theme, front page, users, content, or existing role settings.

Test a source checkout

Run the disposable SQLite installation test from the Recipe repository:

tests/install-recipe.sh
tests/install-recipe.sh --existing

The test creates a temporary Drupal 11.4 site and removes it when complete.