Considering I'm the one who proposed this, I should probably comment a bit
on this, shouldn't I? ;) (Will snip out irrelevant parts just to make this
easier to sort through.)
On Tue, Mar 26, 2019 at 8:44 AM Marvin Gülker <m-guelker(a)phoenixmail.de>
TSC team member kirbyfan has suggested to take the opportunity of our
server outage and provide a web interface to the mailing list via an
installation of Discourse¹. This thread is to ask everyone what they
think about the question and whether it is worth the effort. In this
rather longish e-mail, I am first going to outline the current setup
(I.), then give information about Discourse (II.), and then conclude
with my own opinion (III.).
II. Second, to get an impression of how a Discourse installation
interacting with a mailing list looks like, take a look at the
inofficial Ruby-Talk mirror at rubytalk.org³. This mirror is read-only,
but it should still give a feeling on how things look. For a demo
supporting both read and write, check out Discourse’s official
demo⁴. Discourse is not available in Ubuntu 18.04’s repositories and
offers new releases in a very rapid cycle⁵. Alone in January 2019 there
were 4 stable releases (and several beta releases, but these are not
important for us).
Some other nice-looking examples that inspired me to post this:
Discourse is a RubyOnRails application with lots of dependencies,
including a NodeJS server and a Redis DB. It’s front end makes extensive
official installation guide⁶ starts with this:
> The only officially supported installs of Discourse are Docker
> based. You must have SSH access to a 64-bit Linux server with Docker
> support. We regret that we cannot support any other methods of
> installation [...].
III. Third, my own opinion on the topic. It might be surprising, but the
topic is not actually important for me. This has two reasons: a) I want
to work with TSC’s code primaryly, and that’s independant of the mailing
list. b) I use the e-mail interface anyway and do not post via the web
interface. Thus, how the mailing list looks on
does not matter to me personally.
I would have been fine with Mailman 2 either.
I was working on Rails applications in times before Docker existed and
as such I find the Discourse team’s reasoning why Docker is required
quite disgusting (“Hosting Rails applications is complicated.” -- this
is a quote). Containers have known security problems, and under our
tight timing constraints I find it of utmost importance to make a secure
setup as automatic (once installed, of course) as possible.
(Should be worth noting as a disclaimer that I'm a huge fan of containers.)
You never actually work with them correctly, there are basically two
scripts included with Discourse that set up...well, everything.
I want to highlight one thing, though. While I am fine with whatever web
interface the majority finds nice, I want to be able to continue to use
a proper mailing list interface and the web interface has to be a good
mailing list citizen. This means:
As a side note, I could probably ask some people I know on the Fedora
discussion board of how the mails look (or could even try them out myself),
just so there's a more concrete point of reference for us to see.
There are some more aspects to consider. Discourse is rather
hungry. Our new server should be able to easily handle that, though. So
this is not a deal breaker. Its frequent release cycle however means
that someone has to keep a permanent eye on our installation, especially
given that Discourse it not available in the Distribution’s
repositories. That’s something I expressly don’t want to do. For that I
simply lack the time. It is thus required that someone volunteers to
take care of keeping Discourse up to date. I shiver when I imagine the
useless use of extra software with the Docker image (it will tuck an
Nginx installation behind our Apache installation effectively), but I
shall not complain if someone else than me maintains it.
On a single-service system, it was surprisingly easy to set up, even with
me corrupting files as they were written by mashing Ctrl-C (because I'm
stupid, I guess).
I will admit, I haven't set it up behind Apache, however several people
seem to have had success with it. It would basically involve using HAProxy
to forward the traffic to the correct location.
Ideally, Discourse would just act as a subscriber to the mailing list,
as does the aforementioned Ruby-Talk mirror. That would leave the
mail management to Mailman, which is engineered to do just that and does
it properly. Since Mailman 3 is modular, we could then disable
Hyperkitty and instead use Discourse for interaction with the mailing
list. With some glue scripting, registration can be made to work via
mailman-core’s REST API probably. That assumes Discourse supports
plugins in some way, though. It would also leave the possibility open to
hook up an external mail archive like marc.info or Gmane.
I apologise for the length of this e-mail, but you will acknowledge that
providing all of these aspects in a chat does not work out.
⁷ Cf. http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/438496
tsc-devel mailing list -- tsc-devel(a)lists.secretchronicles.org
To unsubscribe send an email to tsc-devel-leave(a)lists.secretchronicles.org
Yoko Shimomura, ryo (supercell/EGOIST), Hiroyuki Sawano >> everyone else