Forked repo to test stuff on
  • Nix 84.8%
  • Python 14.9%
  • Sieve 0.3%
Find a file
Brendan Golden f054e863b3
All checks were successful
Build / deploy (push) Successful in 7s
test: Checking if virtual aliases are functional.
Relates to Skynet/nixos#22

test: Remove the account type limiatation

ci: deploy upstream on changes

(cherry picked from commit ec9440d1f9)
2026-06-03 20:37:42 +01:00
.forgejo/workflows test: Checking if virtual aliases are functional. 2026-06-03 20:37:42 +01:00
.hydra hydra: create nixos-26.05 jobset 2026-05-24 21:03:47 +02:00
docs Drop the mailserver.monitoring module 2026-05-27 03:35:55 +02:00
mail-server Merge branch 'sieve-cache' into 'main' 2026-06-02 21:07:25 +00:00
migrations sieve: add migration story for cfg.sieveDirectory removal 2026-05-24 05:02:23 +02:00
scripts Drop the mailserver.monitoring module 2026-05-27 03:35:55 +02:00
tests sieve: fix potential Sieve script cache overlap 2026-06-02 19:37:01 +02:00
.editorconfig Remove makefile section from editorconfig 2017-11-11 09:47:25 +00:00
.envrc Provide direnv integration for flake devshell 2025-05-15 16:29:03 +02:00
.git-blame-ignore-revs git-blame-ignore-revs: init 2026-03-12 13:43:09 +01:00
.gitignore Provide direnv integration for flake devshell 2025-05-15 16:29:03 +02:00
.gitlab-ci.yml ci: run on main branch 2026-04-12 03:59:39 +02:00
.readthedocs.yaml docs: fail build on warnings 2026-03-11 17:01:39 +01:00
.rstcheck.cfg docs: rewrite 26.05 release notes 2026-05-24 21:03:47 +02:00
.typos.toml Check for obvious typos in pre-commit 2026-03-23 01:35:27 +01:00
default.nix test: Checking if virtual aliases are functional. 2026-06-03 20:37:42 +01:00
flake.lock Start 26.11 developmenty cycle 2026-05-24 21:46:35 +02:00
flake.nix pre-commit: migrate to prek 2026-05-23 19:35:32 +02:00
LICENSE Initial commit 2016-07-21 18:09:04 +02:00
pyproject.toml ruff: reject implicit string concat 2025-07-09 03:59:54 +02:00
README.md README: add 26.05 release info 2026-05-24 21:03:47 +02:00
shell.nix treewide: reformat with nixfmt-rfc-style 2025-06-15 03:39:44 +02:00

Simple Nixos MailServer

license pipeline status

Release branches

We publish a branch for each NixOS release. Only matching branch versions are supported.

Features

  • Continuous Integration Testing
  • Multiple Domains
  • Postfix
    • SMTP on port 25
    • Submission TLS on port 465
    • Submission StartTLS on port 587
    • LMTP with Dovecot
    • DANE and MTA-STS validation
    • SMTP TLS Reports (RFC 8460)
  • Dovecot
    • Maildir folders
    • IMAP with TLS on port 993
    • POP3 with TLS on port 995
    • IMAP with StartTLS on port 143
    • POP3 with StartTLS on port 110
  • Certificates
    • ACME
    • Custom certificates
  • Spam Filtering
    • Via Rspamd
  • Virus Scanning
    • Via ClamAV
  • DKIM Signing
    • Via Rspamd
    • Automatic key generation
    • Multiple selectors per Domain
  • User Management
    • Declarative user management
    • Declarative password management
    • LDAP users
  • Sieve
    • Allow user defined sieve scripts
    • Moving mails from/to junk trains the Bayes filter
    • ManageSieve support
  • User Aliases
    • Regular aliases
    • Catch all aliases
  • Improve the Forwarding Experience

In the future

Get in touch

How to Set Up a 10/10 Mail Server Guide

Check out the Setup Guide in the project's documentation.

For a complete list of options, see in readthedocs.

Development

See the How to Develop SNM documentation page.

Contributors

See the contributor tab

Alternative Implementations

Credits