From bcc4ca029adfbb0e21803cfcf50c8ee8000c422d Mon Sep 17 00:00:00 2001 From: Gleb Peregud Date: Sun, 6 Dec 2015 20:36:05 +0100 Subject: [PATCH] Add rebar3 package --- lib/maintainers.nix | 1 + .../tools/build-managers/rebar3/default.nix | 41 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 3 files changed, 43 insertions(+) create mode 100644 pkgs/development/tools/build-managers/rebar3/default.nix diff --git a/lib/maintainers.nix b/lib/maintainers.nix index 596b8a49a10..2776f5837f3 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -119,6 +119,7 @@ gebner = "Gabriel Ebner "; gfxmonk = "Tim Cuthbertson "; giogadi = "Luis G. Torres "; + gleber = "Gleb Peregud "; globin = "Robin Gloster "; goibhniu = "Cillian de RĂ³iste "; gridaphobe = "Eric Seidel "; diff --git a/pkgs/development/tools/build-managers/rebar3/default.nix b/pkgs/development/tools/build-managers/rebar3/default.nix new file mode 100644 index 00000000000..2e75a12bbfc --- /dev/null +++ b/pkgs/development/tools/build-managers/rebar3/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, erlang }: + + +let + version = "3.0.0-beta.4"; +in +stdenv.mkDerivation { + name = "rebar3-${version}"; + + src = fetchurl { + url = "https://github.com/rebar/rebar3/archive/${version}.tar.gz"; + sha256 = "0px66scjdia9aaa5z36qzxb848r56m0k98g0bxw065a2narsh4xy"; + }; + + buildInputs = [ erlang ]; + + buildPhase = '' + HOME=. escript bootstrap + ''; + installPhase = '' + mkdir -p $out/bin + cp rebar3 $out/bin/rebar3 + ''; + + meta = { + homepage = "https://github.com/rebar/rebar3"; + description = "rebar 3.0 is an Erlang build tool that makes it easy to compile and test Erlang applications, port drivers and releases."; + + longDescription = '' + rebar is a self-contained Erlang script, so it's easy to distribute or + even embed directly in a project. Where possible, rebar uses standard + Erlang/OTP conventions for project structures, thus minimizing the amount + of build configuration work. rebar also provides dependency management, + enabling application writers to easily re-use common libraries from a + variety of locations (hex.pm, git, hg, and so on). + ''; + + platforms = stdenv.lib.platforms.unix; + maintainers = [ stdenv.lib.maintainers.gleber ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a88ed84b3fc..23dcf0c3b24 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5019,6 +5019,7 @@ let erlang_odbc_javac = erlangR18_odbc_javac; rebar = callPackage ../development/tools/build-managers/rebar { }; + rebar3 = callPackage ../development/tools/build-managers/rebar3 { }; elixir = callPackage ../development/interpreters/elixir { };