Erlware provides a community for erlang oriented open source projects. The Erlware projects are defined by a transparent, community based development process and permissive licensing. We hope to foster a community of accomplished dedicated open source developers that provide projects and tools that will directly aid in the flourishing of the Erlang community.
Free and open source Erlware also provides software that makes writing Erlang/OTP applications easy. At the core of Erlware tools are our build system, Sinan, and our package management tool, Faxien. Sinan, and Faxien support and encourage OTP application and release structure. All systems embody the Erlang/OTP design principles.
You may have a very basic idea of how Faxien works by running two simple steps:
Download the platform specific
Faxien boostrapper and run it
$ sh ./faxien-bootstrap-<platform>.sh [user-specified-install-location]
Note: if you don't spefify an install location Faxien will be installed in /usr/local/erlware and so you may need sudo perms.
Now you are read to
install Erlware packages. To install Sinan, the project build system, type
$ <erlware-install-location>/bin/faxien install-release sinan.
Now you have last Sinan version ready to run. For more advanced use of Erlware, check out the complete tutorial.
Helping to create a system of leadership for the Erlang open source community.
The open source community looks to Ericsson to provide it with direction. As much as we love them Ericsson is a business not an open source initiative. The open source community needs to provide its own leadership. Fortunately, we can control our own destinies. We can drive development without a branching of the Erlang community or code base. To accomplish this end we must set a few goals for ourselves.
Our first task will be to create a level playing field for both those applications distributed with Erlang and those created and supported by the community. Right now we have those applications distributed with Erlang and open source applications spread all over the place. Some of these open source apps are in the "user contrib" section of erlang.org, others are at "Process One", still others are in the contrib section of trapexit and even more are in jungerl or on private blogs. Worse yet some projects have multiple version in multiple places. This is detrimental to the Erlang community. We have created a canonical store for Erlang applications. Our first stab at resolving this issue is our repository (see below).
We believe it would be of great value to the Erlang community if someone were able to develop a standard way to package Erlang applications and releases for distribution. Tools can then be created to easily pull packages from the repository. This will allow apps like erlrt, the Erlang maven project, build tools, etc. Making a striped down version 'core' of Erlang available and loading those libraries that are usually distributed with Erlang as well as open source packages into the repository and making them available as needed gives us a flexible and level playing field in which to work.
We also seek to provide some method for the community to drive the development of Erlang and its libraries. There isn't much we can do about the core of the language, we don't want to branch Erlang. However, we can provide alternate cleaned up and standardized versions of the standard apps distributed with Erlang. Considering our new level playing field this would allow us to fix a lot of the inconsistencies in the standard libraries as part of this process. Fortunately, this is a common problem for languages and we have many examples of processes that other languages have used to solve the problem. Python has the PEP process, Scheme has the SRFIs, the networking world has the RFC, etc. In fact Per Gustaffsson has already started this process with EEPs
It is our hope and the hope of the other developers who have worked on this website that we can tackle the problems of having multiple versions of Erlang spread across different websites, establish availability of standardized tools, and in general level the playing field between the Erlang open source community and Ericsson Erlang.
Most projects under the Erlware umbrella use the mit license. An example is available below.
The MIT License
Copyright (c)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Martin Logan & Eric Merritt
Dave Peticolas, Eric Merritt, Martin Logan, Samuel Rivas, Scott Parish
Jeremy Hlinak (main designer) http://www.cdform.com/
Eric Merritt
Martin Logan
Last but not least many thanks to all the others that have helped us by finding bugs, submitting patches, and otherwise supporting Erlware.