about summary refs log tree commit diff
path: root/pkgs/development/ocaml-modules
diff options
context:
space:
mode:
authorJules Aguillon <jules@j3s.fr>2023-09-26 16:28:44 +0200
committerJules Aguillon <jules@j3s.fr>2023-09-26 16:28:44 +0200
commit32a2a0852c37606f963868baa1276ed28f73c047 (patch)
treec89ac41a8c4986ac4122173939ec76a8f9408bad /pkgs/development/ocaml-modules
parent1bef913e8ca6e63aa8f92a6b2f78420db4b3203f (diff)
Link version for ocamlformat{,-lib,-rpc-lib}
The default (latest) version is now defined in 'generic.nix' and is the
same for the three packages.

'ocamlformat-rpc-lib' is no longer defined separately and also use the
latest version as a default.
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r--pkgs/development/ocaml-modules/ocamlformat/generic.nix6
-rw-r--r--pkgs/development/ocaml-modules/ocamlformat/ocamlformat-lib.nix5
-rw-r--r--pkgs/development/ocaml-modules/ocamlformat/ocamlformat-rpc-lib.nix29
-rw-r--r--pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix7
4 files changed, 21 insertions, 26 deletions
diff --git a/pkgs/development/ocaml-modules/ocamlformat/generic.nix b/pkgs/development/ocaml-modules/ocamlformat/generic.nix
index f724531ca12e5..ca5c78bca7d97 100644
--- a/pkgs/development/ocaml-modules/ocamlformat/generic.nix
+++ b/pkgs/development/ocaml-modules/ocamlformat/generic.nix
@@ -1,6 +1,6 @@
-{ lib, fetchurl, version, astring, base, camlp-streams, cmdliner_1_0
+{ lib, fetchurl, version ? "0.26.1", astring, base, camlp-streams, cmdliner_1_0
 , cmdliner_1_1, csexp, dune-build-info, either, fix, fpath, menhirLib, menhirSdk
-, ocaml-version, ocp-indent, odoc-parser, result, stdio, uuseg, uutf }:
+, ocaml-version, ocp-indent, odoc-parser, result, stdio, uuseg, uutf, ... }:
 
 # The ocamlformat package have been split into two in version 0.25.1:
 # one for the library and one for the executable.
@@ -27,6 +27,8 @@ rec {
     }."${version}";
   };
 
+  inherit version;
+
   odoc-parser_v = odoc-parser.override {
     version = if lib.versionAtLeast version "0.24.0" then
       "2.0.0"
diff --git a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-lib.nix b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-lib.nix
index cefae4af027cd..9e271fe186b5e 100644
--- a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-lib.nix
+++ b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-lib.nix
@@ -1,6 +1,7 @@
-{ lib, callPackage, buildDunePackage, menhir, version ? "0.25.1" }:
+# Version can be selected with the 'version' argument, see generic.nix.
+{ lib, callPackage, buildDunePackage, menhir, ... }@args:
 
-let inherit (callPackage ./generic.nix { inherit version; }) src library_deps;
+let inherit (callPackage ./generic.nix args) src version library_deps;
 
 in assert (lib.versionAtLeast version "0.25.1");
 
diff --git a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-rpc-lib.nix b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-rpc-lib.nix
index 3893be12f6814..e1f5f29aa2fb5 100644
--- a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-rpc-lib.nix
+++ b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat-rpc-lib.nix
@@ -1,25 +1,16 @@
-{ lib, fetchurl, buildDunePackage, ocaml, csexp, sexplib0 }:
+# Version can be selected with the 'version' argument, see generic.nix.
+{ lib, fetchurl, buildDunePackage, ocaml, csexp, sexplib0, callPackage, ... }@args:
 
-# for compat with ocaml-lsp
-let source =
-  if lib.versionAtLeast ocaml.version "4.13"
-  then {
-    version = "0.26.1";
-    sha256 = "sha256-2gBuQn8VuexhL7gI1EZZm9m3w+4lq+s9VVdHpw10xtc=";
-  } else {
-    version = "0.20.0";
-    sha256 = "sha256-JtmNCgwjbCyUE4bWqdH5Nc2YSit+rekwS43DcviIfgk=";
-  };
-in
+let
+  # for compat with ocaml-lsp
+  version_arg =
+    if lib.versionAtLeast ocaml.version "4.13" then {} else { version = "0.20.0"; };
 
-buildDunePackage rec {
-  pname = "ocamlformat-rpc-lib";
-  inherit (source) version;
+  inherit (callPackage ./generic.nix (args // version_arg)) src version;
 
-  src = fetchurl {
-    url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/ocamlformat-${version}.tbz";
-    inherit (source) sha256;
-  };
+in buildDunePackage rec {
+  pname = "ocamlformat-rpc-lib";
+  inherit src version;
 
   minimalOCamlVersion = "4.08";
   duneVersion = "3";
diff --git a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix
index 8dfc6838613b4..4c3b6607737d4 100644
--- a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix
+++ b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix
@@ -1,3 +1,4 @@
+# Version can be selected with the 'version' argument, see generic.nix.
 { lib
 , callPackage
 , buildDunePackage
@@ -5,10 +6,10 @@
 , re
 , ocamlformat-lib
 , menhir
-, version ? "0.26.1"
-}:
+, ...
+}@args:
 
-let inherit (callPackage ./generic.nix { inherit version; }) src library_deps;
+let inherit (callPackage ./generic.nix args) src version library_deps;
 in
 
 lib.throwIf (lib.versionAtLeast ocaml.version "5.0" && !lib.versionAtLeast version "0.23")