All posts by Bradley M. Kuhn

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Branding GNU Mailman Headers & Footers

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/11/08/mailman.html

As always, when something takes me a while to figure out, I try to post
the generally useful technical information on my blog. For the
new copyleft.org site, I’ve been trying
to get all the pages branded properly with the header/footer. This was
straightforward for ikiwiki (which hosts the main site), but I spent an
hour searching around this morning for how to brand the GNU Mailman
instance
on lists.copyleft.org.

Ultimately, here’s what I had to do to get
everything branded, and I’m still not completely sure I found every spot.
It seems that if someone wanted to make a useful patch to GNU Mailman, you
could offer up a change that unifies the HTML templating and branding. In
the meantime, at least for GNU Mailman 2.1.15 as found in Debian 7
(wheezy), here’s what you have to do:

First, some of the branding details are handled in the Python code itself,
so my first action was:

            # cd /var/lib/mailman/Mailman
            # cp -pa htmlformat.py /etc/mailman
            # ln -sf /etc/mailman/htmlformat.py htmlformat.py
          

I did this because htmlformat.py is not a file that the Debian
package install for Mailman puts in /etc/mailman, and I wanted
to keep track
with etckeeper that I was
modifying that file.

The primary modifications that I made to that file were in the
MailmanLogo() method, to which I added a custom footer, and
to Document.Format() method, to which I added a custom
header (at least when not self.suppress_head).
The suppress_head thing was a red flag that told me it was
likely not enough merely to change these methods to get a custom header
and footer on every page. I was right. Ultimately, I had to also change
nearly all the HTML files in /etc/mailman/en/, each of which
needed different changes based on what files they were, and there was no
clear guideline. I guess I could have
added <MM-Mailman-Footer> to every file that had
a </BODY> but didn’t have that yet to get my footer
everywhere, but in the end, I custom-hacked the whole thing.

My full
patches that I applied to all the mailman files is available on
copyleft.org
, in case you want to see how I did it.

Always Follow the Money

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/10/10/anita-borg.html

Selena Larson wrote an article
describing the Male Allies Plenary Panel at the Anita Borg
Institute’s Grace Hopper Celebration on Wednesday night
. There is a
video available of the
panel
(that’s the youtube link, the links on Anita Borg Institute’s
website don’t work with Free Software).

Selena’s article pretty much covers it. The only point that I thought
useful to add was that one can “follow the money” here.
Interestingly
enough, Facebook,
Google, GoDaddy, and Intuit were all listed as top-tier sponsors of the event
.
I find it a strange correlation that not one man on this panel is from a
company that didn’t sponsor the event. Are there no male allies
to the cause of women in tech worth hearing from who work for companies that, say,
don’t have enough money to sponsor the event? Perhaps that’s true, but
it’s somewhat surprising.

Honest US Congresspeople often say that the main problem with corruption
of campaign funds is that those who donate simply have more access and time
to make their case to the congressional representatives. They aren’t
buying votes; they’re buying access for conversations. (This was covered
well
in This
American Life
, Episode 461
).

I often see a similar problem in the “Open Source” world. The
loudest microphones can be bought by the highest bidder (in various ways),
so we hear more from the wealthiest companies. The amazing thing about
this story, frankly, is that buying the microphone didn’t work
this time. I’m very glad the audience refused to let it happen! I’d love
to see a similar reaction at the corporate-controlled “Open Source and
Linux” conferences!

Update later in the day: The conference I’m commenting on
above is the same conference where Satya Nadella, CEO of Microsoft, said
that women shouldn’t ask for raises, and Microsoft is also a
top-tier sponsor of the conference. I’m left wondering if anyone who spoke
at this conference didn’t pay for the privilege of making these gaffes.

Always Follow the Money

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/10/10/anita-borg.html

Selena Larson wrote an article
describing the Male Allies Plenary Panel at the Anita Borg
Institute’s Grace Hopper Celebration on Wednesday night
. There is a
video available of the
panel
(that’s the youtube link, the links on Anita Borg Institute’s
website don’t work with Free Software).

Selena’s article pretty much covers it. The only point that I thought
useful to add was that one can “follow the money” here.
Interestingly
enough, Facebook,
Google, GoDaddy, and Intuit were all listed as top-tier sponsors of the event
.
I find it a strange correlation that not one man on this panel is from a
company that didn’t sponsor the event. Are there no male allies
to the cause of women in tech worth hearing from who work for companies that, say,
don’t have enough money to sponsor the event? Perhaps that’s true, but
it’s somewhat surprising.

Honest US Congresspeople often say that the main problem with corruption
of campaign funds is that those who donate simply have more access and time
to make their case to the congressional representatives. They aren’t
buying votes; they’re buying access for conversations. (This was covered
well
in This
American Life
, Episode 461
).

I often see a similar problem in the “Open Source” world. The
loudest microphones can be bought by the highest bidder (in various ways),
so we hear more from the wealthiest companies. The amazing thing about
this story, frankly, is that buying the microphone didn’t work
this time. I’m very glad the audience refused to let it happen! I’d love
to see a similar reaction at the corporate-controlled “Open Source and
Linux” conferences!

Update later in the day: The conference I’m commenting on
above is the same conference where Satya Nadella, CEO of Microsoft, said
that women shouldn’t ask for raises, and Microsoft is also a
top-tier sponsor of the conference. I’m left wondering if anyone who spoke
at this conference didn’t pay for the privilege of making these gaffes.

Always Follow the Money

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/10/10/anita-borg.html

Selena Larson wrote an article
describing the Male Allies Plenary Panel at the Anita Borg
Institute’s Grace Hopper Celebration on Wednesday night
. There is a
video available of the
panel
(that’s the youtube link, the links on Anita Borg Institute’s
website don’t work with Free Software).

Selena’s article pretty much covers it. The only point that I thought
useful to add was that one can “follow the money” here.
Interestingly
enough, Facebook,
Google, GoDaddy, and Intuit were all listed as top-tier sponsors of the event
.
I find it a strange correlation that not one man on this panel is from a
company that didn’t sponsor the event. Are there no male allies
to the cause of women in tech worth hearing from who work for companies that, say,
don’t have enough money to sponsor the event? Perhaps that’s true, but
it’s somewhat surprising.

Honest US Congresspeople often say that the main problem with corruption
of campaign funds is that those who donate simply have more access and time
to make their case to the congressional representatives. They aren’t
buying votes; they’re buying access for conversations. (This was covered
well
in This
American Life
, Episode 461
).

I often see a similar problem in the “Open Source” world. The
loudest microphones can be bought by the highest bidder (in various ways),
so we hear more from the wealthiest companies. The amazing thing about
this story, frankly, is that buying the microphone didn’t work
this time. I’m very glad the audience refused to let it happen! I’d love
to see a similar reaction at the corporate-controlled “Open Source and
Linux” conferences!

Update later in the day: The conference I’m commenting on
above is the same conference where Satya Nadella, CEO of Microsoft, said
that women shouldn’t ask for raises, and Microsoft is also a
top-tier sponsor of the conference. I’m left wondering if anyone who spoke
at this conference didn’t pay for the privilege of making these gaffes.

Always Follow the Money

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/10/10/anita-borg.html

Selena Larson wrote an article
describing the Male Allies Plenary Panel at the Anita Borg
Institute’s Grace Hopper Celebration on Wednesday night
. There is a
video available of the
panel
(that’s the youtube link, the links on Anita Borg Institute’s
website don’t work with Free Software).

Selena’s article pretty much covers it. The only point that I thought
useful to add was that one can “follow the money” here.
Interestingly
enough, Facebook,
Google, GoDaddy, and Intuit were all listed as top-tier sponsors of the event
.
I find it a strange correlation that not one man on this panel is from a
company that didn’t sponsor the event. Are there no male allies
to the cause of women in tech worth hearing from who work for companies that, say,
don’t have enough money to sponsor the event? Perhaps that’s true, but
it’s somewhat surprising.

Honest US Congresspeople often say that the main problem with corruption
of campaign funds is that those who donate simply have more access and time
to make their case to the congressional representatives. They aren’t
buying votes; they’re buying access for conversations. (This was covered
well
in This
American Life
, Episode 461
).

I often see a similar problem in the “Open Source” world. The
loudest microphones can be bought by the highest bidder (in various ways),
so we hear more from the wealthiest companies. The amazing thing about
this story, frankly, is that buying the microphone didn’t work
this time. I’m very glad the audience refused to let it happen! I’d love
to see a similar reaction at the corporate-controlled “Open Source and
Linux” conferences!

Update later in the day: The conference I’m commenting on
above is the same conference where Satya Nadella, CEO of Microsoft, said
that women shouldn’t ask for raises, and Microsoft is also a
top-tier sponsor of the conference. I’m left wondering if anyone who spoke
at this conference didn’t pay for the privilege of making these gaffes.

Always Follow the Money

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/10/10/anita-borg.html

Selena Larson wrote an article
describing the Male Allies Plenary Panel at the Anita Borg
Institute’s Grace Hopper Celebration on Wednesday night
. There is a
video available of the
panel
(that’s the youtube link, the links on Anita Borg Institute’s
website don’t work with Free Software).

Selena’s article pretty much covers it. The only point that I thought
useful to add was that one can “follow the money” here.
Interestingly
enough, Facebook,
Google, GoDaddy, and Intuit were all listed as top-tier sponsors of the event
.
I find it a strange correlation that not one man on this panel is from a
company that didn’t sponsor the event. Are there no male allies
to the cause of women in tech worth hearing from who work for companies that, say,
don’t have enough money to sponsor the event? Perhaps that’s true, but
it’s somewhat surprising.

Honest US Congresspeople often say that the main problem with corruption
of campaign funds is that those who donate simply have more access and time
to make their case to the congressional representatives. They aren’t
buying votes; they’re buying access for conversations. (This was covered
well
in This
American Life
, Episode 461
).

I often see a similar problem in the “Open Source” world. The
loudest microphones can be bought by the highest bidder (in various ways),
so we hear more from the wealthiest companies. The amazing thing about
this story, frankly, is that buying the microphone didn’t work
this time. I’m very glad the audience refused to let it happen! I’d love
to see a similar reaction at the corporate-controlled “Open Source and
Linux” conferences!

Update later in the day: The conference I’m commenting on
above is the same conference where Satya Nadella, CEO of Microsoft, said
that women shouldn’t ask for raises, and Microsoft is also a
top-tier sponsor of the conference. I’m left wondering if anyone who spoke
at this conference didn’t pay for the privilege of making these gaffes.

Always Follow the Money

Post Syndicated from Bradley M. Kuhn original http://ebb.org/bkuhn/blog/2014/10/10/anita-borg.html

Selena Larson wrote an article
describing the Male Allies Plenary Panel at the Anita Borg
Institute’s Grace Hopper Celebration on Wednesday night
. There is a
video available of the
panel
(that’s the youtube link, the links on Anita Borg Institute’s
website don’t work with Free Software).

Selena’s article pretty much covers it. The only point that I thought
useful to add was that one can “follow the money” here.
Interestingly
enough, Facebook,
Google, GoDaddy, and Intuit were all listed as top-tier sponsors of the event
.
I find it a strange correlation that not one man on this panel is from a
company that didn’t sponsor the event. Are there no male allies
to the cause of women in tech worth hearing from who work for companies that, say,
don’t have enough money to sponsor the event? Perhaps that’s true, but
it’s somewhat surprising.

Honest US Congresspeople often say that the main problem with corruption
of campaign funds is that those who donate simply have more access and time
to make their case to the congressional representatives. They aren’t
buying votes; they’re buying access for conversations. (This was covered
well
in This
American Life
, Episode 461
).

I often see a similar problem in the “Open Source” world. The
loudest microphones can be bought by the highest bidder (in various ways),
so we hear more from the wealthiest companies. The amazing thing about
this story, frankly, is that buying the microphone didn’t work
this time. I’m very glad the audience refused to let it happen! I’d love
to see a similar reaction at the corporate-controlled “Open Source and
Linux” conferences!

Update later in the day: The conference I’m commenting on
above is the same conference where Satya Nadella, CEO of Microsoft, said
that women shouldn’t ask for raises, and Microsoft is also a
top-tier sponsor of the conference. I’m left wondering if anyone who spoke
at this conference didn’t pay for the privilege of making these gaffes.