summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorUlrik Strid <ulrik.strid@outlook.com>2022-04-04 13:57:15 +0200
committerUlrik Strid <ulrik.strid@outlook.com>2023-02-03 08:59:34 +0100
commit376e9ceeadc4c4e06f34b33bf347a504a4b3bd65 (patch)
tree24be3802f04a68ffc1e7f1702c0eb35cceda7b7a /pkgs
parentc53a63adf11330c66d3f0ed0def74e0dacd2cd2a (diff)
downloadnixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.tar
nixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.tar.gz
nixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.tar.bz2
nixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.tar.lz
nixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.tar.xz
nixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.tar.zst
nixpkgs-376e9ceeadc4c4e06f34b33bf347a504a4b3bd65.zip
treewide: add strictDeps = true to most packages depending on ocaml
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/misc/llpp/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/mldonkey/default.nix10
-rw-r--r--pkgs/applications/networking/sync/unison/default.nix6
-rw-r--r--pkgs/applications/science/logic/abella/default.nix4
-rw-r--r--pkgs/applications/science/logic/cryptoverif/default.nix4
-rw-r--r--pkgs/applications/science/logic/ekrhyper/default.nix6
-rw-r--r--pkgs/applications/science/logic/hol_light/default.nix4
-rw-r--r--pkgs/applications/science/logic/iprover/default.nix5
-rw-r--r--pkgs/applications/science/logic/leo2/default.nix6
-rw-r--r--pkgs/applications/science/logic/ott/default.nix7
-rw-r--r--pkgs/applications/science/logic/prooftree/default.nix7
-rw-r--r--pkgs/applications/science/logic/proverif/default.nix4
-rw-r--r--pkgs/applications/science/logic/satallax/default.nix7
-rw-r--r--pkgs/applications/science/logic/statverif/default.nix4
-rw-r--r--pkgs/applications/science/logic/tlaplus/tlaps.nix4
-rw-r--r--pkgs/applications/science/logic/why3/default.nix10
-rw-r--r--pkgs/applications/science/logic/z3/default.nix6
-rw-r--r--pkgs/applications/version-management/monotone-viz/default.nix4
-rw-r--r--pkgs/applications/virtualization/virt-top/default.nix6
-rw-r--r--pkgs/development/compilers/mezzo/default.nix5
-rw-r--r--pkgs/development/compilers/obliv-c/default.nix5
-rw-r--r--pkgs/development/compilers/reason/default.nix11
-rw-r--r--pkgs/development/coq-modules/compcert/default.nix6
-rw-r--r--pkgs/development/interpreters/eff/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/ocaml-gettext/stub.nix2
-rw-r--r--pkgs/development/ocaml-modules/ppx_import/default.nix4
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix5
-rw-r--r--pkgs/development/tools/analysis/frama-c/default.nix7
-rw-r--r--pkgs/development/tools/java/sawjap/default.nix5
-rw-r--r--pkgs/tools/audio/liquidsoap/full.nix123
-rw-r--r--pkgs/tools/misc/bibtex2html/default.nix4
-rw-r--r--pkgs/tools/misc/ledit/default.nix4
-rw-r--r--pkgs/tools/misc/wyrd/default.nix4
-rw-r--r--pkgs/tools/typesetting/hevea/default.nix2
-rw-r--r--pkgs/tools/typesetting/pdfsandwich/default.nix5
35 files changed, 187 insertions, 123 deletions
diff --git a/pkgs/applications/misc/llpp/default.nix b/pkgs/applications/misc/llpp/default.nix
index b1d3a5c0d6f..443a03c2ad2 100644
--- a/pkgs/applications/misc/llpp/default.nix
+++ b/pkgs/applications/misc/llpp/default.nix
@@ -19,8 +19,10 @@ stdenv.mkDerivation rec {
     src = ./fix-build-bash.patch;
   });
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ ocaml mupdf libX11 libGLU libGL freetype zlib gumbo jbig2dec openjpeg libjpeg lcms2 harfbuzz ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ makeWrapper ocaml ];
+  buildInputs = [ mupdf libX11 libGLU libGL freetype zlib gumbo jbig2dec openjpeg libjpeg lcms2 harfbuzz ];
 
   dontStrip = true;
 
diff --git a/pkgs/applications/networking/p2p/mldonkey/default.nix b/pkgs/applications/networking/p2p/mldonkey/default.nix
index fda9d87681a..1291caa088f 100644
--- a/pkgs/applications/networking/p2p/mldonkey/default.nix
+++ b/pkgs/applications/networking/p2p/mldonkey/default.nix
@@ -27,13 +27,9 @@ stdenv.mkDerivation rec {
       '${ocamlPackages.camlp4}/lib/ocaml/${ocamlPackages.ocaml.version}/site-lib/camlp4'
   '';
 
-  buildInputs = (with ocamlPackages; [
-    ocaml
-    camlp4
-    num
-  ]) ++ [
-    zlib
-  ];
+  strictDeps = true;
+  nativeBuildInputs = with ocamlPackages; [ ocaml camlp4];
+  buildInputs = (with ocamlPackages; [ num ]) ++ [ zlib ];
 
   meta = {
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/networking/sync/unison/default.nix b/pkgs/applications/networking/sync/unison/default.nix
index 97ee3ed5862..c6ce7c8f593 100644
--- a/pkgs/applications/networking/sync/unison/default.nix
+++ b/pkgs/applications/networking/sync/unison/default.nix
@@ -23,9 +23,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-taA8eZ/wOe9uMccXVYfe34/XzWgqYKA3tLZnIOahOrQ=";
   };
 
-  nativeBuildInputs = [ makeWrapper ]
+  strictDeps = true;
+
+  nativeBuildInputs = [ makeWrapper ocamlPackages.ocaml ]
     ++ lib.optional enableX11 copyDesktopItems;
-  buildInputs = [ ocamlPackages.ocaml ncurses ];
+  buildInputs = [ ncurses ];
 
   preBuild = lib.optionalString enableX11 ''
     sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
diff --git a/pkgs/applications/science/logic/abella/default.nix b/pkgs/applications/science/logic/abella/default.nix
index 3d752b7d7b9..1d0c72359cf 100644
--- a/pkgs/applications/science/logic/abella/default.nix
+++ b/pkgs/applications/science/logic/abella/default.nix
@@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-/eOiebMFHgrurtrSHPlgZO3xmmxBOUmyAzswXZLd3Yc=";
   };
 
-  buildInputs = [ rsync ] ++ (with ocamlPackages; [ ocaml ocamlbuild findlib ]);
+  strictDeps = true;
+
+  nativeBuildInputs = [ rsync ] ++ (with ocamlPackages; [ ocaml ocamlbuild findlib ]);
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/science/logic/cryptoverif/default.nix b/pkgs/applications/science/logic/cryptoverif/default.nix
index 195dd98aa3b..f056b3e433f 100644
--- a/pkgs/applications/science/logic/cryptoverif/default.nix
+++ b/pkgs/applications/science/logic/cryptoverif/default.nix
@@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-F5eVN5ATYo9Ivpi2eYh96ktuTWUeoqgWMR4BqHu8EFs=";
   };
 
-  buildInputs = [ ocaml ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml ];
 
   /* Fix up the frontend to load the 'default' cryptoverif library
   ** from under $out/libexec. By default, it expects to find the files
diff --git a/pkgs/applications/science/logic/ekrhyper/default.nix b/pkgs/applications/science/logic/ekrhyper/default.nix
index d6d9bb11a9a..187cbc9a92a 100644
--- a/pkgs/applications/science/logic/ekrhyper/default.nix
+++ b/pkgs/applications/science/logic/ekrhyper/default.nix
@@ -9,10 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-fEe0DIMGj7wO+79/BZf45kykgyTXpbZJsyFSt31XqpM=";
   };
 
-  buildInputs = [
-    ocaml
-    perl
-  ];
+  strictDeps = true;
+  nativeBuildInputs = [ ocaml perl ];
   setSourceRoot = "export sourceRoot=$(echo */ekrh/src/)";
   preInstall = "export INSTALLDIR=$out";
   postInstall = ''for i in "$out/casc"/*; do ln -s "$i" "$out/bin/ekrh-casc-$(basename $i)"; done '';
diff --git a/pkgs/applications/science/logic/hol_light/default.nix b/pkgs/applications/science/logic/hol_light/default.nix
index e66fe992e18..4c105a40e20 100644
--- a/pkgs/applications/science/logic/hol_light/default.nix
+++ b/pkgs/applications/science/logic/hol_light/default.nix
@@ -38,7 +38,9 @@ stdenv.mkDerivation {
     })
   ];
 
-  buildInputs = [ ocaml camlp5 ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml camlp5 ];
   propagatedBuildInputs = [ num ];
 
   installPhase = ''
diff --git a/pkgs/applications/science/logic/iprover/default.nix b/pkgs/applications/science/logic/iprover/default.nix
index ff88586e035..6485681e331 100644
--- a/pkgs/applications/science/logic/iprover/default.nix
+++ b/pkgs/applications/science/logic/iprover/default.nix
@@ -9,7 +9,10 @@ stdenv.mkDerivation rec {
     sha256 = "0lik8p7ayhjwpkln1iwf0ri84ramhch74j5nj6z7ph6wfi92pgg8";
   };
 
-  buildInputs = [ ocaml eprover zlib ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml eprover ];
+  buildInputs = [ zlib ];
 
   preConfigure = "patchShebangs .";
 
diff --git a/pkgs/applications/science/logic/leo2/default.nix b/pkgs/applications/science/logic/leo2/default.nix
index cbc85c5544c..4087763aa0c 100644
--- a/pkgs/applications/science/logic/leo2/default.nix
+++ b/pkgs/applications/science/logic/leo2/default.nix
@@ -9,8 +9,10 @@ stdenv.mkDerivation rec {
     sha256 = "sha256:1b2q7vsz6s9ighypsigqjm1mzjiq3xgnz5id5ssb4rh9zm190r82";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ eprover ocaml camlp4 perl zlib ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ makeWrapper eprover ocaml camlp4 perl ];
+  buildInputs = [ zlib ];
 
   patches = [ (fetchpatch {
       url = "https://github.com/niklasso/minisat/commit/7eb6015313561a2586032574788fcb133eeaa19f.patch";
diff --git a/pkgs/applications/science/logic/ott/default.nix b/pkgs/applications/science/logic/ott/default.nix
index bbc96b2b681..a00c565fb4e 100644
--- a/pkgs/applications/science/logic/ott/default.nix
+++ b/pkgs/applications/science/logic/ott/default.nix
@@ -11,8 +11,11 @@ stdenv.mkDerivation rec {
     hash = "sha256-GzeEiok5kigcmfqf/K/UxvlKkl55zy0vOyiRZ2HyMiE=";
   };
 
-  nativeBuildInputs = [ pkg-config opaline ];
-  buildInputs = with ocamlPackages; [ ocaml findlib ocamlgraph ];
+
+  strictDeps = true;
+
+  nativeBuildInputs = [ pkg-config opaline ] ++ (with ocamlPackages; [ findlib ocaml ]);
+  buildInputs = with ocamlPackages; [ ocamlgraph ];
 
   installTargets = "ott.install";
 
diff --git a/pkgs/applications/science/logic/prooftree/default.nix b/pkgs/applications/science/logic/prooftree/default.nix
index 2606b94f4bb..4e65c018d1a 100644
--- a/pkgs/applications/science/logic/prooftree/default.nix
+++ b/pkgs/applications/science/logic/prooftree/default.nix
@@ -9,9 +9,10 @@ stdenv.mkDerivation rec {
     sha256 = "0z1z4wqbqwgppkh2bm89fgy07a0y2m6g4lvcyzs09sm1ysklk2dh";
   };
 
-  nativeBuildInputs = [ pkg-config ];
-  buildInputs = [ ncurses ] ++ (with ocamlPackages; [
-    ocaml findlib camlp5 lablgtk ]);
+  strictDeps = true;
+
+  nativeBuildInputs = [ pkg-config ] ++ (with ocamlPackages; [ ocaml findlib camlp5 ]);
+  buildInputs = [ ncurses ] ++ (with ocamlPackages; [ lablgtk ]);
 
   dontAddPrefix = true;
   configureFlags = [ "--prefix" "$(out)" ];
diff --git a/pkgs/applications/science/logic/proverif/default.nix b/pkgs/applications/science/logic/proverif/default.nix
index b6d15162fec..57220aa523c 100644
--- a/pkgs/applications/science/logic/proverif/default.nix
+++ b/pkgs/applications/science/logic/proverif/default.nix
@@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "sha256:0xgwnp59779xc40sb7ck8rmfn620pilxyq79l3bymj9m7z0mwvm9";
   };
 
-  buildInputs = with ocamlPackages; [ ocaml findlib ];
+  strictDeps = true;
+
+  nativeBuildInputs = with ocamlPackages; [ ocaml findlib ];
 
   buildPhase = "./build -nointeract";
   installPhase = ''
diff --git a/pkgs/applications/science/logic/satallax/default.nix b/pkgs/applications/science/logic/satallax/default.nix
index 648ebee6550..5e5fe992537 100644
--- a/pkgs/applications/science/logic/satallax/default.nix
+++ b/pkgs/applications/science/logic/satallax/default.nix
@@ -3,8 +3,11 @@ stdenv.mkDerivation rec {
   pname = "satallax";
   version = "2.7";
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ ocaml zlib which eprover coq ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ makeWrapper ocaml which eprover coq ];
+  buildInputs = [ zlib ];
+
   src = fetchurl {
     url = "https://www.ps.uni-saarland.de/~cebrown/satallax/downloads/${pname}-${version}.tar.gz";
     sha256 = "1kvxn8mc35igk4vigi5cp7w3wpxk2z3bgwllfm4n3h2jfs0vkpib";
diff --git a/pkgs/applications/science/logic/statverif/default.nix b/pkgs/applications/science/logic/statverif/default.nix
index 07365eef33f..1f623897755 100644
--- a/pkgs/applications/science/logic/statverif/default.nix
+++ b/pkgs/applications/science/logic/statverif/default.nix
@@ -14,7 +14,9 @@ stdenv.mkDerivation rec {
     sha256 = "113jjhi1qkcggbsmbw8fa9ln8vs7vy2r288szks7rn0jjn0wxmbw";
   };
 
-  buildInputs = [ ocaml ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml ];
 
   patchPhase = "patch -p1 < ${pf-patch}";
   buildPhase = "./build";
diff --git a/pkgs/applications/science/logic/tlaplus/tlaps.nix b/pkgs/applications/science/logic/tlaplus/tlaps.nix
index 14b3055ab36..59afbc094e4 100644
--- a/pkgs/applications/science/logic/tlaplus/tlaps.nix
+++ b/pkgs/applications/science/logic/tlaplus/tlaps.nix
@@ -17,7 +17,9 @@ stdenv.mkDerivation rec {
     sha256 = "c296998acd14d5b93a8d5be7ee178007ef179957465966576bda26944b1b7fca";
   };
 
-  buildInputs = [ ocaml isabelle cvc3 perl wget which ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml isabelle cvc3 perl wget which ];
 
   installPhase = ''
     mkdir -pv "$out"
diff --git a/pkgs/applications/science/logic/why3/default.nix b/pkgs/applications/science/logic/why3/default.nix
index 8ca2a6baa88..55b59ff2e3b 100644
--- a/pkgs/applications/science/logic/why3/default.nix
+++ b/pkgs/applications/science/logic/why3/default.nix
@@ -10,8 +10,16 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-vNR7WeiSvg+763GcovoZBFDfncekJMeqNegP4fVw06I=";
   };
 
+  strictDeps = true;
+
+  nativeBuildInputs = with ocamlPackages;  [
+    ocaml findlib menhir
+    # Coq Support
+    coqPackages.coq
+  ];
+
   buildInputs = with ocamlPackages; [
-    ocaml findlib ocamlgraph zarith menhir
+    ocamlgraph zarith
     # Emacs compilation of why3.el
     emacs
     # Documentation
diff --git a/pkgs/applications/science/logic/z3/default.nix b/pkgs/applications/science/logic/z3/default.nix
index bcc00417bce..928c0b6abeb 100644
--- a/pkgs/applications/science/logic/z3/default.nix
+++ b/pkgs/applications/science/logic/z3/default.nix
@@ -29,8 +29,10 @@ let common = { version, sha256, patches ? [ ] }:
       sha256 = sha256;
     };
 
-    nativeBuildInputs = optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
-    buildInputs = [ python ]
+    strictDeps = true;
+
+    nativeBuildInputs = [ python ]
+      ++ optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames
       ++ optional javaBindings jdk
       ++ optionals ocamlBindings [ ocaml findlib ]
     ;
diff --git a/pkgs/applications/version-management/monotone-viz/default.nix b/pkgs/applications/version-management/monotone-viz/default.nix
index 20edc2af502..2e71206aff2 100644
--- a/pkgs/applications/version-management/monotone-viz/default.nix
+++ b/pkgs/applications/version-management/monotone-viz/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
   version = "1.0.2";
   pname = "monotone-viz";
 
-  nativeBuildInputs = [ pkg-config makeWrapper ];
-  buildInputs = [ocaml lablgtk libgnomecanvas glib graphviz_2_0 camlp4];
+  nativeBuildInputs = [ pkg-config makeWrapper ocaml camlp4 ];
+  buildInputs = [ lablgtk libgnomecanvas glib graphviz_2_0 ];
   src = fetchurl {
     url = "http://oandrieu.nerim.net/monotone-viz/${pname}-${version}-nolablgtk.tar.gz";
     sha256 = "1l5x4xqz5g1aaqbc1x80mg0yzkiah9ma9k9mivmn08alkjlakkdk";
diff --git a/pkgs/applications/virtualization/virt-top/default.nix b/pkgs/applications/virtualization/virt-top/default.nix
index 8918574c437..dc6f79d6a7e 100644
--- a/pkgs/applications/virtualization/virt-top/default.nix
+++ b/pkgs/applications/virtualization/virt-top/default.nix
@@ -16,14 +16,14 @@ stdenv.mkDerivation rec {
     autoreconfHook
     pkg-config
     getopt
+    ocamlPackages.ocaml
+    ocamlPackages.findlib
   ];
-
   buildInputs = with ocamlPackages; [
+    ocamlPackages.ocaml
     calendar
     curses
-    findlib
     gettext-stub
-    ocaml
     ocaml_libvirt
   ] ++ [ libxml2 ];
 
diff --git a/pkgs/development/compilers/mezzo/default.nix b/pkgs/development/compilers/mezzo/default.nix
index 4f2b081b4db..903fdb54fee 100644
--- a/pkgs/development/compilers/mezzo/default.nix
+++ b/pkgs/development/compilers/mezzo/default.nix
@@ -22,7 +22,10 @@ stdenv.mkDerivation {
     sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild yojson menhir menhirLib ulex pprint fix functory ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+  buildInputs = [ yojson menhir menhirLib ulex pprint fix functory ];
 
   # Sets warning 3 as non-fatal
   prePatch = lib.optionalString (check-ocaml-version "4.02") ''
diff --git a/pkgs/development/compilers/obliv-c/default.nix b/pkgs/development/compilers/obliv-c/default.nix
index af895131dec..3e13b9247fb 100644
--- a/pkgs/development/compilers/obliv-c/default.nix
+++ b/pkgs/development/compilers/obliv-c/default.nix
@@ -1,8 +1,11 @@
 { lib, stdenv, libgcrypt, fetchFromGitHub, ocamlPackages, perl }:
 stdenv.mkDerivation rec {
   pname = "obliv-c";
+
   version = "0.0pre20210621";
-  buildInputs = [ perl ]
+
+  strictDeps = true;
+  nativeBuildInputs = [ perl ]
   ++ (with ocamlPackages; [ ocaml findlib ocamlbuild ]);
   propagatedBuildInputs = [ libgcrypt ];
   src = fetchFromGitHub {
diff --git a/pkgs/development/compilers/reason/default.nix b/pkgs/development/compilers/reason/default.nix
index 6dca665ad99..732d33608e3 100644
--- a/pkgs/development/compilers/reason/default.nix
+++ b/pkgs/development/compilers/reason/default.nix
@@ -12,19 +12,20 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-etzEXbILje+CrfJxIhH7jthEMoSJdS6O33QoG8HrLvI=";
   };
 
+  strictDeps = true;
   nativeBuildInputs = [
     makeWrapper
     menhir
-  ];
-
-  buildInputs = [
+    ocaml
+    menhir
     cppo
     dune_3
     findlib
+  ];
+
+  buildInputs = [
     fix
-    menhir
     menhirSdk
-    ocaml
     ppxlib
     utop
   ] ++ lib.optional (lib.versionOlder ocaml.version "4.07") ncurses;
diff --git a/pkgs/development/coq-modules/compcert/default.nix b/pkgs/development/coq-modules/compcert/default.nix
index fb33f92bcc2..0e7225a184a 100644
--- a/pkgs/development/coq-modules/compcert/default.nix
+++ b/pkgs/development/coq-modules/compcert/default.nix
@@ -27,8 +27,10 @@ let compcert = mkCoqDerivation rec {
     "3.11".sha256 = "sha256-ZISs/ZAJVWtxp9+Sg5qV5Rss1gI9hK769GnBfawLa6A=";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = with ocamlPackages; [ ocaml findlib menhir menhirLib ] ++ [ coq coq2html ];
+  strictDeps = true;
+
+  nativeBuildInputs = with ocamlPackages; [ makeWrapper ocaml findlib menhir coq coq2html ];
+  buildInputs = with ocamlPackages; [ menhirLib ];
   propagatedBuildInputs = [ flocq ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/interpreters/eff/default.nix b/pkgs/development/interpreters/eff/default.nix
index cddb773ec16..489d3b0128d 100644
--- a/pkgs/development/interpreters/eff/default.nix
+++ b/pkgs/development/interpreters/eff/default.nix
@@ -15,10 +15,14 @@ stdenv.mkDerivation rec {
     substituteInPlace setup.ml --replace js_of_ocaml.ocamlbuild js_of_ocaml-ocamlbuild
   '';
 
-  buildInputs = [ which ] ++ (with ocamlPackages; [
-    ocaml findlib ocamlbuild menhir js_of_ocaml js_of_ocaml-ocamlbuild
+  strictDeps = true;
+
+  nativeBuildInputs = [ which ] ++ (with ocamlPackages; [
+    ocaml findlib ocamlbuild menhir
   ]);
 
+  buildInputs = with ocamlPackages; [ js_of_ocaml js_of_ocaml-ocamlbuild ];
+
   doCheck = true;
   checkTarget = "test";
 
diff --git a/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix b/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix
index d8999dcbae5..75e739959c3 100644
--- a/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix
+++ b/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix
@@ -12,7 +12,7 @@ buildDunePackage rec {
 
   doCheck = true;
 
-  nativeCheckInputs = [ ounit ];
+  checkInputs = [ ounit ];
 
   meta = builtins.removeAttrs ocaml_gettext.meta  [ "mainProgram" ];
 }
diff --git a/pkgs/development/ocaml-modules/ppx_import/default.nix b/pkgs/development/ocaml-modules/ppx_import/default.nix
index dca50972e3d..120ce1893b2 100644
--- a/pkgs/development/ocaml-modules/ppx_import/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_import/default.nix
@@ -25,8 +25,6 @@ buildDunePackage rec {
   pname = "ppx_import";
   inherit version;
 
-  useDune2 = true;
-
   minimalOCamlVersion = "4.05";
 
   src = fetchurl {
@@ -38,7 +36,7 @@ buildDunePackage rec {
     ppxlib
   ];
 
-  nativeCheckInputs = [
+  checkInputs = [
     ounit
     ppx_deriving
     ppx_sexp_conv
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index a7cc801c70c..7a4ed91b953 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -18,7 +18,10 @@ stdenv.mkDerivation rec {
     install -Dm644 resources/shell/bash-completion $out/share/bash-completion/completions/flow
   '';
 
-  buildInputs = (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml-migrate-parsetree-2 dtoa fileutils core_kernel sedlex ocaml_lwt lwt_log lwt_ppx ppx_deriving ppx_gen_rec visitors wtf8 ])
+  strictDeps = true;
+
+  nativeBuildInputs = with ocamlPackages; [ ocaml findlib ocamlbuild ];
+  buildInputs = with ocamlPackages; [ ocaml-migrate-parsetree-2 dtoa fileutils core_kernel sedlex ocaml_lwt lwt_log lwt_ppx ppx_deriving ppx_gen_rec visitors wtf8 ]
     ++ lib.optionals stdenv.isDarwin [ CoreServices ];
 
   meta = with lib; {
diff --git a/pkgs/development/tools/analysis/frama-c/default.nix b/pkgs/development/tools/analysis/frama-c/default.nix
index 9dba3692ad3..761662053c1 100644
--- a/pkgs/development/tools/analysis/frama-c/default.nix
+++ b/pkgs/development/tools/analysis/frama-c/default.nix
@@ -44,13 +44,14 @@ stdenv.mkDerivation rec {
   };
 
   preConfigure = lib.optionalString stdenv.cc.isClang "configureFlagsArray=(\"--with-cpp=clang -E -C\")";
-
   postConfigure = "patchShebangs src/plugins/value/gen-api.sh";
 
-  nativeBuildInputs = [ autoconf wrapGAppsHook ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ autoconf wrapGAppsHook ] ++ (with ocamlPackages; [ ocaml findlib ]);
 
   buildInputs = with ocamlPackages; [
-    ncurses ocaml findlib ltl2ba ocamlgraph yojson menhirLib camlzip
+    ncurses ltl2ba ocamlgraph yojson menhirLib camlzip
     lablgtk3 lablgtk3-sourceview3 coq graphviz zarith apron why3 mlgmpidl doxygen
     ppx_deriving ppx_import
     gdk-pixbuf
diff --git a/pkgs/development/tools/java/sawjap/default.nix b/pkgs/development/tools/java/sawjap/default.nix
index b4c682bbd22..0686d4fb2ed 100644
--- a/pkgs/development/tools/java/sawjap/default.nix
+++ b/pkgs/development/tools/java/sawjap/default.nix
@@ -10,7 +10,10 @@ stdenv.mkDerivation {
 
   prePatch = "cd test";
 
-  buildInputs = [ ocaml findlib sawja ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml findlib ];
+  buildInputs = [ sawja ];
 
   buildPhase = ''
     runHook preBuild
diff --git a/pkgs/tools/audio/liquidsoap/full.nix b/pkgs/tools/audio/liquidsoap/full.nix
index 411aaece532..5f61a9660f2 100644
--- a/pkgs/tools/audio/liquidsoap/full.nix
+++ b/pkgs/tools/audio/liquidsoap/full.nix
@@ -23,70 +23,75 @@ stdenv.mkDerivation {
       --prefix PATH : ${lib.makeBinPath runtimePackages}
   '';
 
-  nativeBuildInputs = [ makeWrapper pkg-config ];
+
+  strictDeps = true;
+
+  nativeBuildInputs =
+    [ makeWrapper pkg-config which
+      ocamlPackages.ocaml ocamlPackages.findlib ocamlPackages.menhir
+    ];
+
   buildInputs = [
-      libjpeg
-      which
-      ocamlPackages.ocaml ocamlPackages.findlib
+    libjpeg
 
-      # Mandatory dependencies
-      ocamlPackages.dtools
-      ocamlPackages.duppy
-      ocamlPackages.mm
-      ocamlPackages.ocaml_pcre
-      ocamlPackages.menhir ocamlPackages.menhirLib
-      ocamlPackages.camomile
-      ocamlPackages.ocurl
-      ocamlPackages.uri
-      ocamlPackages.sedlex
+    # Mandatory dependencies
+    ocamlPackages.dtools
+    ocamlPackages.duppy
+    ocamlPackages.mm
+    ocamlPackages.ocaml_pcre
+    ocamlPackages.menhir ocamlPackages.menhirLib
+    ocamlPackages.camomile
+    ocamlPackages.ocurl
+    ocamlPackages.uri
+    ocamlPackages.sedlex
 
-      # Recommended dependencies
-      ocamlPackages.ffmpeg
+    # Recommended dependencies
+    ocamlPackages.ffmpeg
 
-      # Optional dependencies
-      ocamlPackages.camlimages
-      ocamlPackages.gd4o
-      ocamlPackages.alsa
-      ocamlPackages.ao
-      ocamlPackages.bjack
-      ocamlPackages.cry
-      ocamlPackages.dssi
-      ocamlPackages.faad
-      ocamlPackages.fdkaac
-      ocamlPackages.flac
-      ocamlPackages.frei0r
-      ocamlPackages.gstreamer
-      ocamlPackages.inotify
-      ocamlPackages.ladspa
-      ocamlPackages.lame
-      ocamlPackages.lastfm
-      ocamlPackages.lilv
-      ocamlPackages.lo
-      ocamlPackages.mad
-      ocamlPackages.magic
-      ocamlPackages.ogg
-      ocamlPackages.opus
-      ocamlPackages.portaudio
-      ocamlPackages.pulseaudio
-      ocamlPackages.shine
-      ocamlPackages.samplerate
-      ocamlPackages.soundtouch
-      ocamlPackages.speex
-      ocamlPackages.srt
-      ocamlPackages.ssl
-      ocamlPackages.taglib
-      ocamlPackages.theora
-      ocamlPackages.vorbis
-      ocamlPackages.xmlplaylist
-      ocamlPackages.posix-time2
-      ocamlPackages.tsdl
-      ocamlPackages.tsdl-image
-      ocamlPackages.tsdl-ttf
+    # Optional dependencies
+    ocamlPackages.camlimages
+    ocamlPackages.gd4o
+    ocamlPackages.alsa
+    ocamlPackages.ao
+    ocamlPackages.bjack
+    ocamlPackages.cry
+    ocamlPackages.dssi
+    ocamlPackages.faad
+    ocamlPackages.fdkaac
+    ocamlPackages.flac
+    ocamlPackages.frei0r
+    ocamlPackages.gstreamer
+    ocamlPackages.inotify
+    ocamlPackages.ladspa
+    ocamlPackages.lame
+    ocamlPackages.lastfm
+    ocamlPackages.lilv
+    ocamlPackages.lo
+    ocamlPackages.mad
+    ocamlPackages.magic
+    ocamlPackages.ogg
+    ocamlPackages.opus
+    ocamlPackages.portaudio
+    ocamlPackages.pulseaudio
+    ocamlPackages.shine
+    ocamlPackages.samplerate
+    ocamlPackages.soundtouch
+    ocamlPackages.speex
+    ocamlPackages.srt
+    ocamlPackages.ssl
+    ocamlPackages.taglib
+    ocamlPackages.theora
+    ocamlPackages.vorbis
+    ocamlPackages.xmlplaylist
+    ocamlPackages.posix-time2
+    ocamlPackages.tsdl
+    ocamlPackages.tsdl-image
+    ocamlPackages.tsdl-ttf
 
-      # Undocumented dependencies
-      ocamlPackages.graphics
-      ocamlPackages.cohttp-lwt-unix
-    ];
+    # Undocumented dependencies
+    ocamlPackages.graphics
+    ocamlPackages.cohttp-lwt-unix
+  ];
 
   meta = with lib; {
     description = "Swiss-army knife for multimedia streaming";
diff --git a/pkgs/tools/misc/bibtex2html/default.nix b/pkgs/tools/misc/bibtex2html/default.nix
index 0add7340ed5..2e5ebd1e56a 100644
--- a/pkgs/tools/misc/bibtex2html/default.nix
+++ b/pkgs/tools/misc/bibtex2html/default.nix
@@ -9,7 +9,9 @@ stdenv.mkDerivation {
     sha256 = "07gzrs4lfrkvbn48cgn2gn6c7cx3jsanakkrb2irj0gmjzfxl96j";
   };
 
-  buildInputs = [ ocaml perl ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ ocaml perl ];
 
   meta = with lib; {
     description = "A collection of tools for translating from BibTeX to HTML";
diff --git a/pkgs/tools/misc/ledit/default.nix b/pkgs/tools/misc/ledit/default.nix
index 18efb8c9528..6070bfb2faf 100644
--- a/pkgs/tools/misc/ledit/default.nix
+++ b/pkgs/tools/misc/ledit/default.nix
@@ -14,7 +14,9 @@ stdenv.mkDerivation {
     substituteInPlace Makefile --replace /bin/rm rm --replace BINDIR=/usr/local/bin BINDIR=$out/bin
   '';
 
-  buildInputs = [
+  strictDeps = true;
+
+  nativeBuildInputs = [
     ocaml
     camlp5
   ];
diff --git a/pkgs/tools/misc/wyrd/default.nix b/pkgs/tools/misc/wyrd/default.nix
index d1244cc73c4..df8b4933aa6 100644
--- a/pkgs/tools/misc/wyrd/default.nix
+++ b/pkgs/tools/misc/wyrd/default.nix
@@ -13,7 +13,9 @@ stdenv.mkDerivation rec {
     substituteInPlace curses/curses.ml --replace 'pp gcc' "pp $CC"
   '';
 
-  buildInputs = [ ocamlPackages.ocaml ncurses remind ocamlPackages.camlp4 ];
+  strictDeps = true;
+  nativeBuildInputs = [ ocamlPackages.ocaml ocamlPackages.camlp4  ];
+  buildInputs = [ ncurses remind ];
 
   preferLocalBuild = true;
 
diff --git a/pkgs/tools/typesetting/hevea/default.nix b/pkgs/tools/typesetting/hevea/default.nix
index a0eb1f75a35..f03ee980583 100644
--- a/pkgs/tools/typesetting/hevea/default.nix
+++ b/pkgs/tools/typesetting/hevea/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-XWdZ13AqKVx2oSwbKhoWdUqw7B/+1z/J0LE4tB5yBkg=";
   };
 
+  strictDeps = true;
+
   nativeBuildInputs = with ocamlPackages; [ ocaml ocamlbuild ];
 
   makeFlags = [ "PREFIX=$(out)" ];
diff --git a/pkgs/tools/typesetting/pdfsandwich/default.nix b/pkgs/tools/typesetting/pdfsandwich/default.nix
index 755ac6bb32a..26037b05664 100644
--- a/pkgs/tools/typesetting/pdfsandwich/default.nix
+++ b/pkgs/tools/typesetting/pdfsandwich/default.nix
@@ -10,8 +10,9 @@ stdenv.mkDerivation {
     sha256 = "1420c33divch087xrr61lvyf975bapqkgjqaighl581i69nlzsm6";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ ocaml perl ];
+  strictDeps = true;
+
+  nativeBuildInputs = [ makeWrapper ocaml perl ];
   installPhase = ''
     mkdir -p $out/bin
     cp -p pdfsandwich $out/bin