Skip to main content

Introduction

The meta-erlang layer is able to make a specific tarball, through beamtool-tarball recipe, with the following BEAM languages installed:

  • Erlang Some extra applications are enabled for Erlang/OTP build provided by beamtools:
    • wx, with wxWidgets
    • enable SCTP sockets with lksctp-tools
    • odbc, with libiodbc All the above third party libraries are also installed as part of beamtools tarball.
  • Elixir
  • Gleam

And also with the tools:

We call this selected list of application as beamtools. The current beamtools approach is to install a full Erlang and Elixir version. That means all tools not only for running but also for developing BEAM application will be installed.

The beamtools focus is to provide a safe environment for developing and running BEAM based applications without installing any OS package. However, the beamtools idea is more related for developing applications.

note

If the purpose is is only to run BEAM application, then the recommendation is to try beamruntime instead beamtools.

This approach is towards improving the development experience. Moreover, it is an alternative way for running Erlang and/or Elixir version on Linux hosts that does not have package management for installing Erlang and Elixir OS packages. Or when the host does not provide the needed Erlang and Elixir versions.

beamtools builds all the listed tools natively, wrapping them into a tarball, self-installed script with relocated support when installed and ready to be shared. It does not provides any way to cross-compile code. The aim is to provide a custom set of BEAM tools able to be run on any Linux distribution.

For building your own beamtools version, there is a guide explaning the basic steps here.