summary refs log tree commit diff
path: root/pkgs/top-level/beam-packages.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/top-level/beam-packages.nix')
-rw-r--r--pkgs/top-level/beam-packages.nix76
1 files changed, 42 insertions, 34 deletions
diff --git a/pkgs/top-level/beam-packages.nix b/pkgs/top-level/beam-packages.nix
index 06987c45644..8b40783baed 100644
--- a/pkgs/top-level/beam-packages.nix
+++ b/pkgs/top-level/beam-packages.nix
@@ -12,12 +12,25 @@
 
 let
   self = beam;
+
+  # Aliases added 2023-03-21
+  versionLoop = f: lib.lists.foldr (version: acc: (f version) // acc) { } [ "25" "24" "23" "22" "21" ];
+
+  interpretersAliases = versionLoop (version: {
+    "erlangR${version}" = self.interpreters."erlang_${version}";
+    "erlangR${version}_odbc" = self.interpreters."erlang_${version}_odbc";
+    "erlangR${version}_javac" = self.interpreters."erlang_${version}_javac";
+    "erlangR${version}_odbc_javac" = self.interpreters."erlang_${version}_odbc_javac";
+  });
+
+  packagesAliases = versionLoop (version: { "erlangR${version}" = self.packages."erlang_${version}"; });
+
 in
 
 {
   beamLib = callPackage ../development/beam-modules/lib.nix { };
 
-  latestVersion = "erlangR25";
+  latestVersion = "erlang_25";
 
   # Each
   interpreters = {
@@ -29,37 +42,34 @@ in
 
     # Standard Erlang versions, using the generic builder.
 
-    # R25
-    erlangR25 = self.beamLib.callErlang ../development/interpreters/erlang/R25.nix {
+    erlang_25 = self.beamLib.callErlang ../development/interpreters/erlang/25.nix {
       wxGTK = wxGTK32;
       parallelBuild = true;
       autoconf = buildPackages.autoconf269;
       inherit wxSupport systemdSupport;
     };
-    erlangR25_odbc = self.interpreters.erlangR25.override { odbcSupport = true; };
-    erlangR25_javac = self.interpreters.erlangR25.override { javacSupport = true; };
-    erlangR25_odbc_javac = self.interpreters.erlangR25.override {
+    erlang_25_odbc = self.interpreters.erlang_25.override { odbcSupport = true; };
+    erlang_25_javac = self.interpreters.erlang_25.override { javacSupport = true; };
+    erlang_25_odbc_javac = self.interpreters.erlang_25.override {
       javacSupport = true;
       odbcSupport = true;
     };
 
-    # R24
-    erlangR24 = self.beamLib.callErlang ../development/interpreters/erlang/R24.nix {
+    erlang_24 = self.beamLib.callErlang ../development/interpreters/erlang/24.nix {
       wxGTK = wxGTK32;
       # Can be enabled since the bug has been fixed in https://github.com/erlang/otp/pull/2508
       parallelBuild = true;
       autoconf = buildPackages.autoconf269;
       inherit wxSupport systemdSupport;
     };
-    erlangR24_odbc = self.interpreters.erlangR24.override { odbcSupport = true; };
-    erlangR24_javac = self.interpreters.erlangR24.override { javacSupport = true; };
-    erlangR24_odbc_javac = self.interpreters.erlangR24.override {
+    erlang_24_odbc = self.interpreters.erlang_24.override { odbcSupport = true; };
+    erlang_24_javac = self.interpreters.erlang_24.override { javacSupport = true; };
+    erlang_24_odbc_javac = self.interpreters.erlang_24.override {
       javacSupport = true;
       odbcSupport = true;
     };
 
-    # R23
-    erlangR23 = self.beamLib.callErlang ../development/interpreters/erlang/R23.nix {
+    erlang_23 = self.beamLib.callErlang ../development/interpreters/erlang/23.nix {
       openssl = openssl_1_1;
       wxGTK = wxGTK32;
       # Can be enabled since the bug has been fixed in https://github.com/erlang/otp/pull/2508
@@ -67,15 +77,14 @@ in
       autoconf = buildPackages.autoconf269;
       inherit wxSupport systemdSupport;
     };
-    erlangR23_odbc = self.interpreters.erlangR23.override { odbcSupport = true; };
-    erlangR23_javac = self.interpreters.erlangR23.override { javacSupport = true; };
-    erlangR23_odbc_javac = self.interpreters.erlangR23.override {
+    erlang_23_odbc = self.interpreters.erlang_23.override { odbcSupport = true; };
+    erlang_23_javac = self.interpreters.erlang_23.override { javacSupport = true; };
+    erlang_23_odbc_javac = self.interpreters.erlang_23.override {
       javacSupport = true;
       odbcSupport = true;
     };
 
-    # R22
-    erlangR22 = self.beamLib.callErlang ../development/interpreters/erlang/R22.nix {
+    erlang_22 = self.beamLib.callErlang ../development/interpreters/erlang/22.nix {
       openssl = openssl_1_1;
       wxGTK = wxGTK32;
       # Can be enabled since the bug has been fixed in https://github.com/erlang/otp/pull/2508
@@ -83,35 +92,34 @@ in
       autoconf = buildPackages.autoconf269;
       inherit wxSupport systemdSupport;
     };
-    erlangR22_odbc = self.interpreters.erlangR22.override { odbcSupport = true; };
-    erlangR22_javac = self.interpreters.erlangR22.override { javacSupport = true; };
-    erlangR22_odbc_javac = self.interpreters.erlangR22.override {
+    erlang_22_odbc = self.interpreters.erlang_22.override { odbcSupport = true; };
+    erlang_22_javac = self.interpreters.erlang_22.override { javacSupport = true; };
+    erlang_22_odbc_javac = self.interpreters.erlang_22.override {
       javacSupport = true;
       odbcSupport = true;
     };
 
-    # R21
-    erlangR21 = self.beamLib.callErlang ../development/interpreters/erlang/R21.nix {
+    erlang_21 = self.beamLib.callErlang ../development/interpreters/erlang/21.nix {
       openssl = openssl_1_1;
       wxGTK = wxGTK32;
       autoconf = buildPackages.autoconf269;
       inherit wxSupport systemdSupport;
     };
-    erlangR21_odbc = self.interpreters.erlangR21.override { odbcSupport = true; };
-    erlangR21_javac = self.interpreters.erlangR21.override { javacSupport = true; };
-    erlangR21_odbc_javac = self.interpreters.erlangR21.override {
+    erlang_21_odbc = self.interpreters.erlang_21.override { odbcSupport = true; };
+    erlang_21_javac = self.interpreters.erlang_21.override { javacSupport = true; };
+    erlang_21_odbc_javac = self.interpreters.erlang_21.override {
       javacSupport = true;
       odbcSupport = true;
     };
 
     # Other Beam languages. These are built with `beam.interpreters.erlang`. To
     # access for example elixir built with different version of Erlang, use
-    # `beam.packages.erlangR24.elixir`.
+    # `beam.packages.erlang_24.elixir`.
     inherit (self.packages.erlang)
       elixir elixir_1_14 elixir_1_13 elixir_1_12 elixir_1_11 elixir_1_10 elixir-ls;
 
     inherit (self.packages.erlang) lfe lfe_1_3;
-  };
+  } // interpretersAliases;
 
   # Helper function to generate package set with a specific Erlang version.
   packagesWith = erlang:
@@ -122,10 +130,10 @@ in
   packages = {
     erlang = self.packages.${self.latestVersion};
 
-    erlangR25 = self.packagesWith self.interpreters.erlangR25;
-    erlangR24 = self.packagesWith self.interpreters.erlangR24;
-    erlangR23 = self.packagesWith self.interpreters.erlangR23;
-    erlangR22 = self.packagesWith self.interpreters.erlangR22;
-    erlangR21 = self.packagesWith self.interpreters.erlangR21;
-  };
+    erlang_25 = self.packagesWith self.interpreters.erlang_25;
+    erlang_24 = self.packagesWith self.interpreters.erlang_24;
+    erlang_23 = self.packagesWith self.interpreters.erlang_23;
+    erlang_22 = self.packagesWith self.interpreters.erlang_22;
+    erlang_21 = self.packagesWith self.interpreters.erlang_21;
+  } // packagesAliases;
 }