A mailing list server in ruby. Easy to setup.
Go to file
Arthur POULET 6177017d96
Add a few documentation
2022-11-26 02:06:01 +01:00
bin Add auto-registration mailinglists 2022-11-24 21:57:57 +01:00
deploy Add some infos for deploying service 2022-11-23 21:11:21 +01:00
lib Add a few documentation 2022-11-26 02:06:01 +01:00
test Improve logging and coding style 2022-11-24 20:44:59 +01:00
.gitignore Add lots of documentation for the Protocols 2022-11-24 10:04:55 +01:00
.ruby-version Add ruby version 2022-11-26 00:25:34 +01:00
Gemfile Add unit tests 2022-11-24 18:56:08 +01:00
Gemfile.lock Add unit tests 2022-11-24 18:56:08 +01:00
README.md Add a few documentation 2022-11-26 02:06:01 +01:00
Rakefile Add unit tests 2022-11-24 18:56:08 +01:00
empty.env Add refuse/validate modo actions 2022-11-26 01:33:25 +01:00

README.md

mailinglist.rb

Features

  • Receive new message and send it
  • Have a database of mailinglists with name and users
  • Web interface to access archives
  • ACL to restrict interactions with the system
  • Install documentation
  • Systemd service
  • AUR package
  • Configuration for everything
  • Robust codebase for extensibility
  • Robust network (handle network loss etc.)
  • Inbox cleanup
  • Moderation toolbox and email validation before distribution

Deploy from sources

  • Note there is a sample of systemd service you may use for your server in /deploy/

Download

git clone https://git.sceptique.eu/Sceptique/mailinglist.rb --depth 1
cd mailinglist.rb

Install dependencies

System dependencies: ruby 3.1.2, sqlite3

bundle install

Configure

Copy and fill all the env variables in .env

cp empty.env .env
edit .env

Setup the database

bin/db_migrate

Start

You may test it with

bin/distributor

Dev & play localy

After deploying it, there are some tools:

  • bin/db_seed to generate some data

Contributing

via Gitea

  1. Fork it (https://git.sceptique.eu/Sceptique/mailinglistrb)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

via emails

Checkout git-send-mail tutorial https://git-send-email.io/

  1. Clone it (https://git.sceptique.eu/Sceptique/mailinglistrb)
  2. Subscribe to the mailinglist to send your patch mailto:list.mailinglistrb@sceptique.eu?subject=subscribe (don't send your patch in this email)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Send your email to mailto:list.mailinglistrb@sceptique.eu after you are validated by modo