F21 Self Contained Change: Better Erlang Support
jreznik at redhat.com
Mon Mar 31 15:18:21 UTC 2014
= Proposed Self Contained Change: Better Erlang Support =
Change owner(s): Peter Lemenkov <lemenkov at gmail.com>, Sam Kottler <skottler
[at] redhat.com>, Fedora Erlang SIG <erlang at lists.fedoraproject.org>
Update Erlang/OTP to R17, and improve Erlang integration with the rest of
== Detailed Description ==
Erlang in Fedora is already in a good shape. However we can do better since
there are a number of annoying shortcomings and issues. Just a few of them:
* Fedora partially enabled Ellyptic Curve Crypto recently but we still provide
Erlang with EC disabled completely because there is no way to enable just a
few EC in the current Erlang version.
* Erlang<->systemd interaction is in a quite poor state currently.
* There is no way to install "headless" Erlang. Every Fedora Erlang user have
to install graphical libraries even if (s)he doesn't want to use GUI on the
* Every daemon written in Erlang has its own logging solution which doesn't
use neither syslog nor Journald.
* Erlang packaging is quite complex and undocumented mostly.
In order to address all these issues we should do the following:
* Enable fine grained EC crypto support  by upgrading Erlang to the latest
R17 (not yet released, and scheduled to April, 2014).
* Start working on a better systemd support in Erlang by enabling EPMD systemd
support. This could be done by merging patches from Matwey V. Kornilov 
and systemd unit-files from openSUSE .
* Add erlang-ejournald , erlang-lager_journald_backend , and make
Journald as a default logging backend.
* Split-off infrequently used modules  which requires X11, Pulseaudio and
ensure that it won't break anything.
* Fix the long-standing noarch issue by providing additional default location
for Erlang bytecode data.
* Update Erlang RPM-related macros to improve packaging by reducing spec-file
== Scope ==
* We must rebuild Erlang R17 and submit it to build-overrides.
** We have to rebuild all the packages listed below in the Dependencies 
* WiP: A necessary *.socket unit must be added to erlang-erts to enable EPMD
** Every Erlang daemon's systemd unit must require epmd.socket.
* We need to fill new review request for erlang-ejournald
** We have to fill new review request for erlang-lager_journald_backend
* We have to patch out GUI parts and provide a way to tell user what to do in
order to enable this functionality.
* Add another default directory to look for Erlang *.beam files.
* Every Erlang package must require erlang-rpm-macros.
* Riak has growing Bugzilla backlog. We have to address all of these issues.
Other developers: N/A
Release engineering: N/A
Policies and guidelines: We should create Erlang Packaging Guidelines which
doesn't exist yet.
More information about the devel-announce