Postfix/virtual-mailman not compatible when using dedicated destination (like "localhost")

I wanted to post this to the developer list and see if there have been any previous thoughts on my situation and also if there are related features being developed for 3.0 (if so, there's probably no point in patching 2.x).
Anyway, my postfix configuration, although probably not rare, seems to be different that many. In my case, all of my domains are "virtual". I have real unix users, and in order to have the same email account name in different domains, I make a user with "name-domain". In my postfix virtual file, I map "name@domain" to name-domain, however, since I do not want to pick one of my actual domains as the default destination, I set $mydestination to "localhost", requiring me to map "name@domain" to "name-domain@localhost". The benefit is that there is no domain to which "name-domain@domain" would work (I do not want this to work as a side effect).
Sorry for the long description!! :) Anyway, give the above, without modifying MTA/Postfix.py (and it's a trivial mod, I know), there is no way to make Mailman's automatic postfix alias stuff completely work. I now have my own auto-generated virtual file and I do not use virtual-mailman, but I'd rather take advantage of it if I could.
There's another guy in my situation who patched Postfix.py, and I recently contacted him to see if he's every communicated with you guys or submitted a patch. He said no, but he's be glad if I did. So that brings me here! :) I looked at the latest svn code, and I did not see something like this implemented. His site, which describes all of this, is:
http://www.qnan.org/~pmw/howtos/mailman-virtuals.html
I've submitted patches for Mailman before, and I'd be glad to do one again, but I wanted to ask:
- Do you see benefit to adding a variable that would define this
right-hand-side domain (e.g. "localhost") for virtual-mailman?
What is a good name for the variable? (POSTFIX_VIRTUAL_DESTINATION?)
Thanks, Joe

Hi,
Joe Peterson wrote:
In mailman-2.2, Postfix.py is considerably patched from the current version, especially making use of LMTP interface. New configuration output is summarized in
http://mail.python.org/pipermail/mailman-developers/2006-November/019307.htm... (you should convert back ' at ' -> '@')
In this model, your '@localhost' corresponds to '@dom1.example.com' and all your list and personal maiboxes are to 'dom2.example.com'. You need no individual listname(-subqueue) destination in aliases/virtual/transport files. Only one line dom2.example.com lmtp:localhost:8025 in transport file. You only have to manage /etc/postfix/virtual for personal accounts.
Is this suffice your needs?
I've submitted patches for Mailman before, and I'd be glad to do one again, but I wanted to ask:
- Do you see benefit to adding a variable that would define this
right-hand-side domain (e.g. "localhost") for virtual-mailman?
- What is a good name for the variable? (POSTFIX_VIRTUAL_DESTINATION?)

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Dec 4, 2006, at 6:58 PM, Tokio Kikuchi wrote:
In mailman-2.2, Postfix.py is considerably patched from the current version, especially making use of LMTP interface. New configuration output is summarized in
http://mail.python.org/pipermail/mailman-developers/2006-November/ 019307.html (you should convert back ' at ' -> '@')
In this model, your '@localhost' corresponds to '@dom1.example.com'
and all your list and personal maiboxes are to 'dom2.example.com'. You
need no individual listname(-subqueue) destination in aliases/virtual/transport files. Only one line dom2.example.com lmtp:localhost:8025 in transport file. You only have to manage /etc/postfix/virtual for personal accounts.Is this suffice your needs?
The other thing is that you'll get the individual -subqueue entries
if you don't want to use LMTP_ONLY_DOMAINS (presumably because you
can't create a separate subdomain for your lists). Right?
- -Barry

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Dec 4, 2006, at 7:18 PM, Barry Warsaw wrote:
On Dec 4, 2006, at 6:58 PM, Tokio Kikuchi wrote:
In mailman-2.2, Postfix.py is considerably patched from the current version, especially making use of LMTP interface. New configuration output is summarized in
http://mail.python.org/pipermail/mailman-developers/2006-November/ 019307.html (you should convert back ' at ' -> '@')
In this model, your '@localhost' corresponds to '@dom1.example.com' and all your list and personal maiboxes are to 'dom2.example.com'. You need no individual listname(-subqueue) destination in aliases/virtual/transport files. Only one line dom2.example.com lmtp:localhost:8025 in transport file. You only have to manage /etc/postfix/virtual for personal accounts.
Is this suffice your needs?
The other thing is that you'll get the individual -subqueue entries if you don't want to use LMTP_ONLY_DOMAINS (presumably because you can't create a separate subdomain for your lists). Right?
I realize that in context, this is confusing. In Mailman 2.2 if you
don't use LMTP_ONLY_DOMAINS, you'll get the individual -subqueue
entries in the transport file, but I believe you will not have name
collisions because the same entries do not need to be added to the
alias files. LMTP delivery rocks! (Thanks to Tokio :).
- -Barry

Thanks guys - I have never messed with LMTP. It looks like it indeed is appropriate for local delivery (I am starting to read up on it now). I'll have to do some more Postfix experimenting!
I do not have Mailman 2.2 installed on my mail server (I am at 2.1.9), so I cannot try it out immediately, but I will keep this in mind, and I *think* it is a way to solve the issue I have, especially if LMTP would be better to use even for my non-mailman virtuals anyway (I'll play around with this).
However, if the only reason to use LMTP would be to allow Mailman's virtual stuff to work (and if there are disadvantages to using it), I could imagine that having a config variable for a destination domain might still be useful for non-LMTP cases (again, I need to study LMTP a little more).
-Joe
Barry Warsaw wrote:
On Dec 4, 2006, at 7:18 PM, Barry Warsaw wrote:
On Dec 4, 2006, at 6:58 PM, Tokio Kikuchi wrote:
In mailman-2.2, Postfix.py is considerably patched from the current version, especially making use of LMTP interface. New configuration output is summarized in
http://mail.python.org/pipermail/mailman-developers/2006-November/ 019307.html (you should convert back ' at ' -> '@')
In this model, your '@localhost' corresponds to '@dom1.example.com' and all your list and personal maiboxes are to 'dom2.example.com'. You need no individual listname(-subqueue) destination in aliases/virtual/transport files. Only one line dom2.example.com lmtp:localhost:8025 in transport file. You only have to manage /etc/postfix/virtual for personal accounts.
Is this suffice your needs?
The other thing is that you'll get the individual -subqueue entries if you don't want to use LMTP_ONLY_DOMAINS (presumably because you can't create a separate subdomain for your lists). Right?
I realize that in context, this is confusing. In Mailman 2.2 if you
don't use LMTP_ONLY_DOMAINS, you'll get the individual -subqueue
entries in the transport file, but I believe you will not have name
collisions because the same entries do not need to be added to the
alias files. LMTP delivery rocks! (Thanks to Tokio :).-Barry
Mailman-Developers mailing list Mailman-Developers@python.org http://mail.python.org/mailman/listinfo/mailman-developers Mailman FAQ: http://www.python.org/cgi-bin/faqw-mm.py Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ Unsubscribe: http://mail.python.org/mailman/options/mailman-developers/joe%40skyrush.com
Security Policy: http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq01.027.htp

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Dec 5, 2006, at 9:12 AM, Joe Peterson wrote:
I do not have Mailman 2.2 installed on my mail server (I am at 2.1.9), so I cannot try it out immediately, but I will keep this in mind,
and I *think* it is a way to solve the issue I have, especially if LMTP
would be better to use even for my non-mailman virtuals anyway (I'll play around with this).
Mailman 2.2 isn't near production ready yet, however I could imagine
someone back porting the LMTP support into Mailman 2.1 --
unofficially. I don't want to officially support it for Mailman 2.1,
but it would be a fairly contained set of patches so it could be
added to the contrib directory or some such.
- -Barry

I could probably just informally replace the needed files if they can "plug in" to 2.1.9, if that's easier than creating a patch. I won't have time until next week to try it out, but I'd be glad to if it helps!
-Thanks, Joe
Barry Warsaw wrote:
On Dec 5, 2006, at 9:12 AM, Joe Peterson wrote:
I do not have Mailman 2.2 installed on my mail server (I am at 2.1.9), so I cannot try it out immediately, but I will keep this in mind,
and I *think* it is a way to solve the issue I have, especially if LMTP
would be better to use even for my non-mailman virtuals anyway (I'll play around with this).Mailman 2.2 isn't near production ready yet, however I could imagine
someone back porting the LMTP support into Mailman 2.1 --
unofficially. I don't want to officially support it for Mailman 2.1,
but it would be a fairly contained set of patches so it could be
added to the contrib directory or some such.-Barry

Sorry, I forgot to reply-all.
The other thing is that you'll get the individual -subqueue entries
if you don't want to use LMTP_ONLY_DOMAINS (presumably because you
can't create a separate subdomain for your lists). Right?
Yeah, right. :-)
LMTP_ONLY may be a little bit confusing because you can bypass this by /etc/postfix/virutal. MOSTLY_LMTP_DOMAINS ?

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On Dec 4, 2006, at 7:28 PM, Tokio Kikuchi wrote:
LMTP_ONLY may be a little bit confusing because you can bypass this by /etc/postfix/virutal. MOSTLY_LMTP_DOMAINS ?
LMTP_TRANSPORT_DOMAINS?
Also, will this variable have applicability to other LMTP-supporting
MTAs? If so, then keeping it generic is good, otherwise we might
want POSTFIX_LMTP_TRANSPORT_DOMAINS.
Thoughts?
- -Barry
participants (3)
-
Barry Warsaw
-
Joe Peterson
-
Tokio Kikuchi