[RFC LONG] Ideas for a simple News Management System

Anderson Lizardo lizardo at linuxfromscratch.org
Thu Jun 16 20:33:20 PDT 2005


Here are my ideas for the News Management system planned for www2, as
promised. I'll call it "manage_news2" along this text, but I'm open to
suggestions for better names :)

1. Basic Idea

A news system (almost) entirely managed by e-mail. Essentially you'll be
able to post a news item by just sending a e-mail to a specific address
with the news content on its body.

1.1. Reasons

- Our current news system is somewhat cryptical to use (guess why :))
- We want the projects' members to be able to post news items without
requiring access to the www repository or relying on some Website Team
member posting it (possibly with a delay of days).

2. Input format details

The input will be a default MIME-encapsulated e-mail. An e-mail message
has all information needed for a news item:

- Title (extracted from Subject)
- Author (extracted from From:)
- Project (extracted from To:, see below)
- Date
- Content (the message body).

2.1. Title, Author and Date

Can be easily extracted from equivalent MIME headers.

2.2. Project

We can have "virtual' addresses for each project which has a news
section. E.g.

news-lfs AT linuxfromscratch.org
news-alfs AT linuxfromscratch.org

and so on. manage_news2's MIME parser will then infere the correct
subproject to place the news item from this address.

2.3. Content

To allow the Content to have HTML ojects like links, bold, italics and
code/fixed-style formatted text, without resorting to allow HTML e-mails
on this list, I suggest using a Wiki like language. This would allow
fairly complex style without the inconvience of HTML.

3. Output format

My suggestion is to have the ouput being both HTML (included on the
news.html files using SSI #include) and RSS. I'm still unsure if we
should "svn commit" the output HTML/RSS or just place it directly on

4. Security

The idea I have in mind for keeping such system secure/trusty is by
signing the e-mails sent to manage_news2 with the GPG keys that each
project member should have by now (ok, maybe some recent members do not
have it yet). manage_news2 would then keep a db of "trusted" public keys.

The GPG signing can be useful both as an authentication mechanism and as
a garantee that the news item was not forged or tempered with.

5. Implementation

I plan to implement a prototype tool with the above ideas, in Perl,
using the current manage_news.pl code as base. the current
manage_news.pl script already has some MIME message parsing code, so I
should take advantage of it. Some modules I plan to use/evaluate for

- HTML::FromText

Wiki-style language interpreter which has very simple and easy to use
(IMHO) syntax.

- Crypt::GPG (http://search.cpan.org/author/AGUL/Crypt-GPG-1.52/GPG.pm)

Perl interface for GnuPG.

- MIME-tools

For parsing MIME messages, already used by manage_news.pl.

6. Limitations

This RFC does not cover modifying/removing news items, nor archiving
them. Following some previous discussions on this list, I suggest we to
_not_ archive news items anymore. Main reasons: news are usually only
read while they are "hot", and they will be archived on the mailing
lists anyway.

WRT modifying/removing news items, from our experience with running the
current news system for sometime now, we must agree that such operations
are rarely used. So I suggest we keep them as manual operations (i.e.
delete/modify the created HTML and RSS code manually) for simplicity sake.

7. Alternatives

I don't know of any software which does something similar to the above.
If someone knows of such tool (specially if its FLOSS), please post it
here :). I've partially taken the idea from one of the mail-filters used
by some Linux Kernel devs to automatically extract patches (and author
information) from e-mails.

Comments, suggestions?
Anderson Lizardo
lizardo at linuxfromscratch.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: OpenPGP digital signature
URL: <http://lists.linuxfromscratch.org/pipermail/website/attachments/20050616/588cbb96/attachment.sig>

More information about the website mailing list