diff options
author | Alyssa Ross <hi@alyssa.is> | 2021-08-04 10:43:07 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2021-08-04 10:43:07 +0000 |
commit | 62614cbef7da005c1eda8c9400160f6bcd6546b8 (patch) | |
tree | c2630f69080637987b68acb1ee8676d2681fe304 /pkgs/development/beam-modules/default.nix | |
parent | d9c82ed3044c72cecf01c6ea042489d30914577c (diff) | |
parent | e24069138dfec3ef94f211f1da005bb5395adc11 (diff) | |
download | nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.gz nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.bz2 nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.lz nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.xz nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.zst nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.zip |
Merge branch 'nixpkgs-update' into master
Diffstat (limited to 'pkgs/development/beam-modules/default.nix')
-rw-r--r-- | pkgs/development/beam-modules/default.nix | 146 |
1 files changed, 77 insertions, 69 deletions
diff --git a/pkgs/development/beam-modules/default.nix b/pkgs/development/beam-modules/default.nix index efd68988c9b..b6be8c3e7fb 100644 --- a/pkgs/development/beam-modules/default.nix +++ b/pkgs/development/beam-modules/default.nix @@ -1,12 +1,12 @@ -{ stdenv, pkgs, erlang }: +{ lib, pkgs, erlang }: let - inherit (stdenv.lib) makeExtensible; + inherit (lib) makeExtensible; - lib = pkgs.callPackage ./lib.nix {}; + lib' = pkgs.callPackage ./lib.nix { }; # FIXME: add support for overrideScope - callPackageWithScope = scope: drv: args: stdenv.lib.callPackageWith scope drv args; + callPackageWithScope = scope: drv: args: lib.callPackageWith scope drv args; mkScope = scope: pkgs // scope; packages = self: @@ -14,69 +14,77 @@ let defaultScope = mkScope self; callPackage = drv: args: callPackageWithScope defaultScope drv args; in - rec { - inherit callPackage erlang; - beamPackages = self; - - rebar = callPackage ../tools/build-managers/rebar { }; - rebar3 = callPackage ../tools/build-managers/rebar3 { }; - - # rebar3 port compiler plugin is required by buildRebar3 - pc_1_6_0 = callPackage ./pc {}; - pc = pc_1_6_0; - - fetchHex = callPackage ./fetch-hex.nix { }; - - fetchRebar3Deps = callPackage ./fetch-rebar-deps.nix { }; - rebar3Relx = callPackage ./rebar3-release.nix { }; - - buildRebar3 = callPackage ./build-rebar3.nix {}; - buildHex = callPackage ./build-hex.nix {}; - buildErlangMk = callPackage ./build-erlang-mk.nix {}; - buildMix = callPackage ./build-mix.nix {}; - - # BEAM-based languages. - elixir = elixir_1_10; - - elixir_1_10 = lib.callElixir ../interpreters/elixir/1.10.nix { - inherit rebar erlang; - debugInfo = true; - }; - - elixir_1_9 = lib.callElixir ../interpreters/elixir/1.9.nix { - inherit rebar erlang; - debugInfo = true; - }; - - elixir_1_8 = lib.callElixir ../interpreters/elixir/1.8.nix { - inherit rebar erlang; - debugInfo = true; - }; - - elixir_1_7 = lib.callElixir ../interpreters/elixir/1.7.nix { - inherit rebar erlang; - debugInfo = true; - }; - - elixir_1_6 = lib.callElixir ../interpreters/elixir/1.6.nix { - inherit rebar erlang; - debugInfo = true; - }; - - # Remove old versions of elixir, when the supports fades out: - # https://hexdocs.pm/elixir/compatibility-and-deprecations.html - - lfe = lfe_1_3; - lfe_1_2 = lib.callLFE ../interpreters/lfe/1.2.nix { inherit erlang buildRebar3 buildHex; }; - lfe_1_3 = lib.callLFE ../interpreters/lfe/1.3.nix { inherit erlang buildRebar3 buildHex; }; - - # Non hex packages. Examples how to build Rebar/Mix packages with and - # without helper functions buildRebar3 and buildMix. - hex = callPackage ./hex {}; - webdriver = callPackage ./webdriver {}; - relxExe = callPackage ../tools/erlang/relx-exe {}; - - # An example of Erlang/C++ package. - cuter = callPackage ../tools/erlang/cuter {}; + rec { + inherit callPackage erlang; + beamPackages = self; + + inherit (callPackage ../tools/build-managers/rebar3 { }) rebar3 rebar3WithPlugins; + rebar = callPackage ../tools/build-managers/rebar { }; + + pc = callPackage ./pc { }; + rebar3-proper = callPackage ./rebar3-proper { }; + rebar3-nix = callPackage ./rebar3-nix { }; + + fetchHex = callPackage ./fetch-hex.nix { }; + + fetchRebar3Deps = callPackage ./fetch-rebar-deps.nix { }; + rebar3Relx = callPackage ./rebar3-release.nix { }; + + buildRebar3 = callPackage ./build-rebar3.nix { }; + buildHex = callPackage ./build-hex.nix { }; + buildErlangMk = callPackage ./build-erlang-mk.nix { }; + buildMix = callPackage ./build-mix.nix { }; + fetchMixDeps = callPackage ./fetch-mix-deps.nix { }; + mixRelease = callPackage ./mix-release.nix { }; + + erlang-ls = callPackage ./erlang-ls { }; + erlfmt = callPackage ./erlfmt { }; + elvis-erlang = callPackage ./elvis-erlang { }; + + # BEAM-based languages. + elixir = elixir_1_12; + + elixir_1_12 = lib'.callElixir ../interpreters/elixir/1.12.nix { + inherit erlang; + debugInfo = true; }; -in makeExtensible packages + + elixir_1_11 = lib'.callElixir ../interpreters/elixir/1.11.nix { + inherit erlang; + debugInfo = true; + }; + + elixir_1_10 = lib'.callElixir ../interpreters/elixir/1.10.nix { + inherit erlang; + debugInfo = true; + }; + + elixir_1_9 = lib'.callElixir ../interpreters/elixir/1.9.nix { + inherit erlang; + debugInfo = true; + }; + + elixir_1_8 = lib'.callElixir ../interpreters/elixir/1.8.nix { + erlang = pkgs.beam.interpreters.erlangR23; + debugInfo = true; + }; + + # Remove old versions of elixir, when the supports fades out: + # https://hexdocs.pm/elixir/compatibility-and-deprecations.html + elixir_1_7 = lib'.callElixir ../interpreters/elixir/1.7.nix { + inherit erlang; + debugInfo = true; + }; + + elixir_ls = callPackage ./elixir_ls.nix { inherit elixir fetchMixDeps mixRelease; }; + + lfe = lfe_1_3; + lfe_1_3 = lib'.callLFE ../interpreters/lfe/1.3.nix { inherit erlang buildRebar3 buildHex; }; + + # Non hex packages. Examples how to build Rebar/Mix packages with and + # without helper functions buildRebar3 and buildMix. + hex = callPackage ./hex { }; + webdriver = callPackage ./webdriver { }; + }; +in +makeExtensible packages |