MAKEPERCENTRELAY(8)

πŸ“¦
version 2.0.6 Β· 3 versions
, in ubuntu stonking

🌸 makepercentrelay(8) 🌸

okay so this is makepercentrelay(8), and it's literally the tool that gives your percent-hack domain list its glow-up. no cap. πŸ’…


✨ NAME ✨

makepercentrelay β€” build a list of %-relayed domains πŸŽ€

πŸ¦‹ SYNOPSIS πŸ¦‹

makepercentrelay

πŸ’œ DESCRIPTION πŸ’œ

okay so bestie, here's the whole vibe. makepercentrelay reads /etc/courier/esmtppercentrelay.dir and creates /etc/courier/esmtppercentrelay.dat, which is a binary database file. that's it, that's the job. ✨

so the files /etc/courier/esmtppercentrelay and /etc/courier/esmtppercentrelay.dat together specify a list of "percent-hack" domains. /etc/courier/esmtppercentrelay is a plain text file, and it holds one domain per line β€” so simple, so clean, we love that for it. 🌸

the thing is, the Courier mail server loads the contents of /etc/courier/esmtppercentrelay into memory. so if you have a lot of domains, bestie, you're genuinely gonna want to use the binary database file instead. that's where this command eats. makepercentrelay reads /etc/courier/esmtppercentrelay.dir, which can be either a plain text file itself, or a directory containing plain text files. all files in the subdirectory get concatenated, and the binary database file is created from the result. 🫢

and here's the cute part: the Courier mail server can use both /etc/courier/esmtppercentrelay and /etc/courier/esmtppercentrelay.dat at the same time. the usual move is to put a couple of your most frequent domains in /etc/courier/esmtppercentrelay, then put the rest in /etc/courier/esmtppercentrelay.dir, and let makepercentrelay turn it into a database file. main character energy, honestly. πŸ‘‘

so what even is a "percent-hack" domain? πŸ‘€ "percent-hack" domains are a list of domains for which the Courier mail server accepts mail via ESMTP addressed as local%percent.hack.domain@local.domain, where percent.hack.domain is a domain found in /etc/courier/esmtppercentrelay or /etc/courier/esmtppercentrelay.dat, and local.domain is any domain found in /etc/courier/locals. the Courier mail server removes the local domain, and rewrites the address as local@percent.hack.domain, then attempts to deliver it. it's giving ✨address transformation✨.

⚠️ okay huge one, don't skip this: the percent hack applies only to mail received via ESMTP. the Courier mail server does not check this list of domains if the message is received via any other way (such as by running /usr/bin/sendmail directly from the command line). so if you're expecting it to work some other way β€” it won't. it's not that girl. πŸ’€

and percent.hack.domain would likely be a domain that the Courier mail server knows how to handle via some other means. it might be an entry in /etc/courier/aliases, or an entry in /etc/courier/esmtproutes. iykyk. 🌈


πŸ” SUBDIRECTORY CHECKS πŸ”

the following checks are made on the contents of /etc/courier/esmtppercentrelay.dir β€” so like, a little vibe check before anything gets used: 🧚

  • Files whose names contain a tilde, "~" are skipped over. byeee, not invited. πŸ™ˆ
  • Files whose names end with the following suffixes result in an error message: ".rpmsave", ".rpmnew", and ".dpkg-suffix". these files are backup files created by package manager when updating to a newer version of the package, and they contain the old or the new version of a configuration file whose settings may be new or obsolete.

the contents of the file whose name does not have the suffix should be checked against the backup. the backup file should be deleted after making any needed manual changes to the configuration file. (yes, actually go look at it. it's not decoration. 😭)

  • Files whose names end with the ".dist" suffix is also treated as a configuration file backup or template, but with the following exception: the ".dist" file gets ignored and automatically skipped over, without any error message, if the suffix-less file exists and its modification time is more recent than the ".dist" file's modification time. πŸ•

otherwise an error message gets reported. resolving the error message is done by either copying the ".dist" file or editing and saving the file without the suffix (resulting in a newer timestamp). lowkey the timestamp is the whole plot here. ⭐


🌟 SEE ALSO 🌟

πŸŽ€ AUTHOR πŸŽ€

Sam Varshavchik Author

πŸ’Œ NOTES πŸ’Œ

  1. esmtpd(8) https://www.courier-mta.org/esmtpd.html
  2. makealiases(8) https://www.courier-mta.org/makealiases.html

and that's the whole page bestie, you ate. this gorgeous lil manual is brought to you by the Courier Mail Server, dated 01/10/2026 β€” go forth and relay those percents responsibly πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from
  • ubuntu stonking: courier-mta 2.0.6-1 Β· GPL-3+~with-OpenSSL-exception
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms