[erlang-questions] erlang package manager
Eric B Merritt
Wed Dec 21 23:05:50 CET 2011
I am one of the maintainers of erlware and the principle sinan guy, see
> In terms of building your code, there isn't much difference really. In
> terms of package management, there's a big difference. The Erlware
> tool chain relies on a custom repository that holds binary (i.e.,
> pre-built) artefacts and fetches the right ones for your system (based
> on OTP/erts version, OS, etc) - this is a good thing IMHO as I like
> just grabbing a thing once and not having to worry about the build
> steps, incompatibilities in build config, etc. The down side of the
> Erlware stack is that it hasn't been heavily adopted, so not that many
> of the libs/apps you want are available through the package manager.
> There are ways around this, but it's put me off to date.
We have actually deprecated the package management side of the tool
chain. Sinan is now delivered was an escript and does not rely on faxien
Not that that is sinan relies on the dependencies to be available in on
your system in either the normal place or user configurable one. How you
get them down is 100% up to you. It will probably stay that way until a
clear winner in the package management space appears.
> Now rebar on the other hand, doesn't do *package management* as such.
> It has a facility for fetching dependencies from the internet using
> version control tools (git, mercurial, subversion, bazaar) and puts
> these into a local build folder. All the commands you run at the top
> level basically recurse into the dependencies folder(s), so running
> `rebar get-deps compile` will fetch the stuff the build config needs
> and compile everything.
> There are other tools out there that do package management of sorts,
> agner probably being the most heavily adopted, but also there is sutro
> and epm. Of these, only agner integrates with rebar.
> There appears to be an effort by the erlware guys to produce another
> package manager that supports rebar and sinan based builds - they have
> repos on github and I'm sure will comment on this.
There where a few exploratory efforts in that direction before we
deprecated the package management side of things. However, it just did
not seem worthwhile.
> There is also meant to be a successor to cean coming out soon, which
> will probably be quite similar in spirit (support numerous build tools
> and/or dependency management strategies) but we heard about it on the
> list some time ago and it hasn't materialised yet -
> see http://erlang.org/pipermail/erlang-questions/2011-June/059195.html. I do hope that the major players will collaborate if only to standardise their configuration handling, as it'd be nice to *write once, install using anything* as it were.
> I have been considering hacking together an alternative dependency
> manager for rebar, but I'm waiting to see if cean 2.0 comes out soon
> and how well it is adopted (or whether it will fetch stuff from
> alternative locations besides the main artefact repository).
> Hope that's a useful start - I'm sure lots of others will pipe up
> about this as it's a popular topic.
> erlang-questions mailing list
More information about the erlang-questions