Hi,
I just installed a new Mailman (2.1.12) server on Centos 6.4. I used the POSTFIX_ALIAS_CMD mechanism to automatically process the aliases even though I am using Sendmail (8.14.4). I have it invoking: /usr/bin/sudo /etc/mail/import-mailman-aliases which runs: /bin/cp /etc/mailman/aliases /etc/mail/mailman.aliases /usr/bin/newaliases (This idea came from: http://wiki.list.org/display/DOC/Integrating+Mailman+with+Sendmail+-+Method+...)
This works, but I noticed that it invokes newalias once for each Mailman list. This seems to be because genaliases runs the command once with one list, then again with two lists, again with three, etc. until all the lists are processed.
I am concerned that if I add a new list to Mailman just as email is coming in then it could be rejected because many of the aliases will not exist for a short time.
Does anyone know of a way to only do the newalias command when the supplied file is complete? Or can the genaliases mechanism build the whole file before calling the POSTFIX_ALIAS_CMD just once at the end?
-- Gary Algier, WB2FWZ gaa at ulticom.com +1 856 787 2758 Ulticom Inc., 1020 Briggs Rd, Mt. Laurel, NJ 08054 Fax:+1 856 866 2033
Nielsen's First Law of Computer Manuals: People don't read documentation voluntarily.
On 01/02/2014 06:42 AM, Gary Algier wrote:
This works, but I noticed that it invokes newalias once for each Mailman list. This seems to be because genaliases runs the command once with one list, then again with two lists, again with three, etc. until all the lists are processed.
This is bug https://bugs.launchpad.net/mailman/+bug/266408 and was fixed in Mailman 2.1.15. If you can't upgrade, the fix is at http://bazaar.launchpad.net/~mailman-coders/mailman/2.1/revision/1291.
-- Mark Sapiro mark@msapiro.net The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
On 1/2/2014 8:42 AM, Gary Algier wrote:
Hi,
I just installed a new Mailman (2.1.12) server on Centos 6.4.
One question I have had for a while - As 2.1.17 is the latest release Mailman, why do people do new installations with versions that are old?
2.1.12 released 2009-02-23 2.1.17 released 2013-11-23
I did Google searches, and I found that CentOS 6.4 was released May 23, 2013 and contains Mailman 2.1.12. Is it too much to expect an OS vendor to keep packages current? I do not know if CentOS is like Debian/Ubuntu, with lots of undocumented mods that would have to be tested with a new release of the OS.
--Barry Finkel
Barry S. Finkel writes:
Is it too much to expect an OS vendor to keep packages current?
Yes, it is.
Both in practice (nobody actually manages it), and in principle (there are very high costs to doing it and nobody's willing to pay them).
Even distros like RHEL can't afford to have everything up to date, especially when "up to date" means different things to different people, and, in fact, to different applications -- often enough one runs into situations where one mission-critical app demands version x of a library and another crucial program wants version x+2 of that library because the API changed.
Rather than pay for a distro where *everything* is up-to-date by one definition or another, it's typically cheaper to get a solid but free (in both senses) distro and build your *mission-critical* programs from source.
On Thu, 02 Jan 2014 16:01:02 -0600 "Barry S. Finkel" bsfinkel@att.net wrote:
On 1/2/2014 8:42 AM, Gary Algier wrote:
Hi,
I just installed a new Mailman (2.1.12) server on Centos 6.4.
One question I have had for a while - As 2.1.17 is the latest release Mailman, why do people do new installations with versions that are old?
2.1.12 released 2009-02-23 2.1.17 released 2013-11-23
I did Google searches, and I found that CentOS 6.4 was released May 23, 2013 and contains Mailman 2.1.12.
CentOS prefer stability, #like other enterprise distros for latest updates use *buntu, fedora etc..
Regards, Frank www.frankly3d.com
On 1/3/2014 11:28 AM, Frank Murphy wrote:
On Thu, 02 Jan 2014 16:01:02 -0600 "Barry S. Finkel"bsfinkel@att.net wrote:
On 1/2/2014 8:42 AM, Gary Algier wrote:
Hi,
I just installed a new Mailman (2.1.12) server on Centos 6.4.
One question I have had for a while - As 2.1.17 is the latest release Mailman, why do people do new installations with versions that are old?
2.1.12 released 2009-02-23 2.1.17 released 2013-11-23
I did Google searches, and I found that CentOS 6.4 was released May 23, 2013 and contains Mailman 2.1.12. CentOS prefer stability, #like other enterprise distros for latest updates use *buntu, fedora etc..
Regards, Frank www.frankly3d.com
When I was working as a systems programmer with an IBM mainframe, there was one piece of critical software that the applications group would not let me patch. "If it isn't broken, don't fix it". Then, they were installing an add-on that required a patch to be installed. Installing that one patch involved installing over 1600 patches, and IBM had to write a fix for me because the IBM software that controls installation of system software had problems with the installation of that many patches at once. And, the applications group had begun using their test system for production work, so they had no system on which to test the patched software.
When I was managing a Mailman installation, I kept Mailman up-to-date, because I never knew when one of my lists would encounter a bug that had already been fixed.
--Barry Finkel
Barry S. Finkel writes:
When I was working as a systems programmer with an IBM mainframe,
Interesting anecdote, but it addresses the wrong end of the issue. We already know that distros should keep their packages up to date. The question is why that doesn't happen. This:
When I was managing a Mailman installation, I kept Mailman up-to-date, because I never knew when one of my lists would encounter a bug that had already been fixed.
leads to a more interesting question: And to which distribution did you contribute package control files to allow all the users of that distribution to benefit from your work? And did they immediately install them, or did their QA group dither about testing them for months?
What we try to do in XEmacs is allow the upstream developer to commit directly to our package repository. But even then not all do, and we don't really have a QA process (except for beta testing, so in practice we're never out of beta for most packages :-). Few users are willing to contribute maintenance, although many contribute "first draft" patches and even whole packages.
It's not an easy problem.
On 1/3/2014 2:52 PM, Stephen J. Turnbull wrote:
Barry S. Finkel writes:
When I was working as a systems programmer with an IBM mainframe,
Interesting anecdote, but it addresses the wrong end of the issue. We already know that distros should keep their packages up to date. The question is why that doesn't happen. This:
When I was managing a Mailman installation, I kept Mailman up-to-date, because I never knew when one of my lists would encounter a bug that had already been fixed.
leads to a more interesting question: And to which distribution did you contribute package control files to allow all the users of that distribution to benefit from your work? And did they immediately install them, or did their QA group dither about testing them for months?
What we try to do in XEmacs is allow the upstream developer to commit directly to our package repository. But even then not all do, and we don't really have a QA process (except for beta testing, so in practice we're never out of beta for most packages :-). Few users are willing to contribute maintenance, although many contribute "first draft" patches and even whole packages.
It's not an easy problem.
I was using Ubuntu, and my management told me that I had to install a package. So I spent some time learning how to take the Debian/Ubuntu package, merge the current SourceForge source, and generate a new package. I have posted on this list that I did this. Only one person has requested info on what I did.
The problem I had with the Debian/Ubuntu package, besides the fact that it was not the current version and that help might not be available via this mailing list, was that there were a large number of patches installed by the Debian support group. Most of those patches were not documented, and I had no idea what they did (or if they were needed). IIRC, Mark looked at the patches a few years ago. There also was one patch that deleted a library that, in some cases, was needed by Mailman.
When I built a new package from the current source I knew
exactly what code I was running, and
that I could receive excellent support from this list.
The problem, as I see it, with the Debian method is that when Mark announces a new release of Mailman, the Debian support group has to spend time re-fitting their patches. The ONLY Debian patch that I kept was one that placed the Mailman libraries in the proper directories for Debian/Ubuntu.
--Barry Finkel
Barry S. Finkel writes:
I was using Ubuntu, and my management told me that I had to install a package.
Aside from the fact that it made work for you, did you disagree with that decision? I don't (although I don't practice what I preach, I admit -- but I would if I was maintaining a Mailman installation for an organization rather than for a personal host, or if I didn't change distributions frequently enough that learning packaging systems is more annoying than it's worth).
So I spent some time learning how to take the Debian/Ubuntu package, merge the current SourceForge source, and generate a new package. I have posted on this list that I did this. Only one person has requested info on what I did.
Which is not surprising. Few people are working for enlightened managements like yours. (Individuals like me are likely to shortcut that step, you really do need a management, and an enlightened one at that, in the picture.)
But posting here, although generous (I'm not being sarcastic) of you, was way insufficient, you see. :-) What in an ideal :-P world you would have done was to post that information to the Debian (or Ubuntu) Mailman packagers, along with reviews of the existing patches, test cases demonstrating that Mailman DTRTs without the patches you propose deleting, and documentation (reviewed and revised, or new, as appropriate) for the patches you propose to continue. Then followed up with the discussion. Yeah, right, like you have the time or expertise to do that. And if you think a simple contribution of your working version of the deb-control files would mostly be ignored, I think I agree with you.
But you know what? Barry himself is a Canonical employee (at least, the last time he mentioned his employment status to me he was), but his time is considered too valuable to allow him to maintain Ubuntu's Mailman package!
You could argue that there's something wrong with a world where Barry isn't *assigned* to package Mailman (or perhaps the responsibility to make sure somebody does an excellent job of it). I could rebut but not with total confidence, and it's way beyond the scope of this discussion.
All I really want to do is to firmly nail down the proposition that in practice you cannot expect distros to be up-to-date in *all* their packages (and therefore must accept lags in packages important to you sometimes), and make it plausible that they have sufficient reason to allow substantial lags for some packages at any given time.
The problem I had with the Debian/Ubuntu package, besides the fact that it was not the current version and that help might not be available via this mailing list, was that there were a large number of patches installed by the Debian support group.
I agree, that is a problem. To the extent that they change Mailman's behavior (eg, the execrable mailman-to-postfix script) they make our job harder (yours ;-), mine, and most especially Mark's).
Most of those patches were not documented,
Some Debian package maintainers have sucky processes, and some packages don't actually have maintainers, but some poor sucker who believes that packages should be kept reasonably up-to-date, and volunteers to do so for several packages that he or she doesn't know all that much about.
Fixing this requires more labor. Ideally, the process is so sucky that a new process that requires *less* labor to review, *test*, install, and *document* patches, remove unnecessary patches, and inject into the distribution process can be designed. Still, doing that redesign requires a substantial amount of time invested in process management, both by the maintainer and by a mentor. And sometimes the process is reasonably streamlined for the work it does, but needs to do more work (eg, adding docs). This may require the "eclectic" type of maintainer to abandon some of their other packages. That's not a happy ending for all!
The problem, as I see it, with the Debian method is that when Mark announces a new release of Mailman, the Debian support group has to spend time re-fitting their patches. The ONLY Debian patch that I kept was one that placed the Mailman libraries in the proper directories for Debian/Ubuntu.
Doesn't surprise me. But for one example, I suspect the Debian Mailman package maintainer(s) disagree about the usefulness of the mailman-to-postfix script. Most of the regulars here (where "regular" is defined at least to include you :-) have the inclination and necessary knowledge to configure their MTAs by hand. Debian clearly believes that is *not* true of their "customers", which is why they installed that script.
Ironically enough, that script was written for the *convenience* of someone (Bruce Perens?) who was adept at maintaining his Postfix aliases, and so didn't need the script to be 100.00% robust. And it wasn't and it isn't. :-P
All in all, a *very* hard problem.
participants (5)
-
Barry S. Finkel
-
Frank Murphy
-
Gary Algier
-
Mark Sapiro
-
Stephen J. Turnbull