[Mailman-Users] Upgrade hell (Debian)
kfogel at floss.red-bean.com
Wed Jan 5 07:49:49 CET 2005
Two things I left out of this previous message:
1. We fixed an apparent coding error in /usr/lib/mailman/bin/update.
On line 556, we changed "addr = data.address" to "addr = data",
since data was already an address string, not a list.
2. Further conversation with a Mailman expert (in irc.freenode.net
channel #mailman) revealed that our allegedly non-elegant solution
was actually what apt-get should have done anyway -- the symlinks
we made are standard on a healthy Debian system. IRC transcript
follows, just for reference.
<kfogel> horrific details of our upgrade are at that url
<kfogel> we did eventually get it working, and the new version (2.1.5) looks spiffy.
<kfogel> I like the new moderation stuff.
<Jim7J1AJH> Sounds like your upgrade didn't make all the symbolic links.
<kfogel> Jim7J1AJH: I'm not sure what 'apt-get install mailman' was supposed to do in detail, but yeah, that seems like a fair assertion.
<Jim7J1AJH> On the one Debian machine that I use Mailman on, /var/lib/mailman has several symlinks into the /usr/lib/mailman tree... where all the code lives.
<kfogel> So we're not the only ones to have gone this route...
<Jim7J1AJH> It is the "Debian" standard.
<kfogel> IOW, we just manually reproduced what apt-get is supposed to do anyway?
<kfogel> At least that means future upgrades are likely to work.
<Jim7J1AJH> Sounds like it.
<kfogel> If you want to post to that effect in response to my post, somebody somewhere a year from now would probably save 40 minutes of time.
<kfogel> Your call :-).
<Jim7J1AJH> /var/lib/mailman's Mailman, bin, cgi-bin, mail, and scripts all symlink into /usr/lib/mailman.
<kfogel> So, we linked cron, and we didn't link cgi-bin.
<kfogel> Two points of difference.
* kfogel goes to link cgi-bin
<Jim7J1AJH> Oops... yes, cron too.
<Jim7J1AJH> You're right.
<Jim7J1AJH> lrwxrwxrwx 1 root root 24 Nov 22 02:44 cgi-bin -> /usr/lib/cgi-bin/mailman
<Jim7J1AJH> and one bit of Debian policy I find really goofy, they do:
<Jim7J1AJH> lrwxrwxrwx 1 root root 12 Nov 22 02:44 templates -> /etc/mailman
<kfogel> There is no /usr/lib/mailman/cgi-bin, but there is a /usr/lib/cgi-bin/mailman
<kfogel> just as you said
<kfogel> oy oy
* kfogel 's head spins with symlinks
<Jim7J1AJH> Yes. One has to wonder what the packager was thinking.
<Jim7J1AJH> That and leaving the 'cgi-bin' in the default URLs seems bogus to me.
<Jim7J1AJH> They also do:
<Jim7J1AJH> lrwxrwxrwx 1 root root 25 Nov 22 02:44 icons -> /usr/share/images/mailman
<kfogel> /var/lib/mailman/cgi-bin was already a link to the right place, we didn't have to do it.
<Jim7J1AJH> lrwxrwxrwx 1 root root 18 Nov 22 02:44 locks -> ../../lock/mailman
<Jim7J1AJH> lrwxrwxrwx 1 root root 17 Nov 22 02:44 logs -> ../../log/mailman
<kfogel> locks is not a symlink for us
<kfogel> but logs is, and in the way you describe
<kfogel> I'm going to fix locks
<kfogel> Leaving templates alone though.
<Jim7J1AJH> They also put a symlink so that mm_cfg.py really lives in /etc/mailman
<Jim7J1AJH> instead of in /usr/lib/mailman/Mailman
<kfogel> I'm sure there were Good Reasons for all of these decisions.
<kfogel> But it sure makes debugging tough.
<Jim7J1AJH> One would hope so.
<Jim7J1AJH> Or answering people's questions when they show up using the Debian package.
More information about the Mailman-Users