Start by installing the following Fedora packages:
sudo dnf install -y httpd git lua lua-sec lua-socket python3 luarocks
Install the missing cjson package via luarocks:
sudo luarocks-5.3 install lua-cjson
Install the required Python 3 modules:
sudo pip3.4 install elasticsearch formatflowed chardet netaddr
sudo dnf install -y java-1.8.0-openjdk-headless sudo rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch (The following is taken from the ElasticSearch online guide:) Add the following in your /etc/yum.repos.d/ directory in a file with a .repo suffix, for example elasticsearch.repo: [elasticsearch-1.7] name=Elasticsearch repository for 1.7.x packages baseurl=http://packages.elastic.co/elasticsearch/1.7/centos gpgcheck=1 gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch enabled=1 sudo dnf install -y elasticsearch
Configure and start up ElasticSearch:
sudo /bin/systemctl daemon-reload sudo /bin/systemctl enable elasticsearch.service sudo /etc/init.d/elasticsearch start
Check out a copy of Pony Mail:
cd /var/www sudo git clone https://github.com/apache/incubator-ponymail.git
Set up Pony Mail:
cd /var/www/ponymail/tools sudo python3.4 setup.py [... answer questions asked by the setup script ...]
Set up Apache httpd by adding, for example, the following virtual host configuration: This differs from the normal installation (because of CentOS specifics), so beware
LuaPackageCPath /usr/lib/lua/5.3/?.so LuaPackagePath /usr/share/lua/5.3/?.lua ServerName mylists.foo.tld DocumentRoot /var/www/ponymail/site AddHandler lua-script .lua LuaScope thread LuaCodeCache stat AcceptPathInfo On
sudo apachectl restart
IF you have SELinux running, you need to allow httpd (apache) to be able to connect to remotes, otherwise Pony Mail won't work:
sudo setsebool -P httpd_can_network_connect 1
Once this is done, you should now have a working copy of Pony Mail!
You may wish to tweak the settings in
site/js/config.js and your
elasticsearch settings once Pony mail is up and running.
Refer to the General installation documentation for detailed information about archiving messages, OAuth, mail settings and much more.
Apache Pony Mail (Incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.