diff --git a/.nix/rocq-overlays/stdlib-html/default.nix b/.nix/rocq-overlays/stdlib-html/default.nix
index dc5c67804d..4553cd2c0f 100644
--- a/.nix/rocq-overlays/stdlib-html/default.nix
+++ b/.nix/rocq-overlays/stdlib-html/default.nix
@@ -8,8 +8,7 @@ rocqPackages.lib.overrideRocqDerivation {
useDune = true;
buildPhase = ''
- patchShebangs dev/with-rocq-wrap.sh
- dev/with-rocq-wrap.sh dune build @stdlib-html ''${enableParallelBuilding:+-j $NIX_BUILD_CORES}
+ dune build @stdlib-html ''${enableParallelBuilding:+-j $NIX_BUILD_CORES}
'';
installPhase = ''
diff --git a/.nix/rocq-overlays/stdlib-refman-html/default.nix b/.nix/rocq-overlays/stdlib-refman-html/default.nix
index bdf9ed39ac..0e53133a3e 100644
--- a/.nix/rocq-overlays/stdlib-refman-html/default.nix
+++ b/.nix/rocq-overlays/stdlib-refman-html/default.nix
@@ -16,8 +16,7 @@ rocqPackages.lib.overrideRocqDerivation {
useDune = true;
buildPhase = ''
- patchShebangs dev/with-rocq-wrap.sh
- dev/with-rocq-wrap.sh dune build --root . --no-buffer @refman-html ''${enableParallelBuilding:+-j $NIX_BUILD_CORES}
+ dune build --root . --no-buffer @refman-html ''${enableParallelBuilding:+-j $NIX_BUILD_CORES}
'';
installPhase = ''
diff --git a/Makefile b/Makefile
index e1b7b3e8b7..5d873dd23d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-DUNE=dev/with-rocq-wrap.sh dune
+DUNE=dune
.PHONY: clean all install dune dune-install test-suite
diff --git a/dev/with-rocq-wrap.sh b/dev/with-rocq-wrap.sh
deleted file mode 100755
index 6f6bea17ab..0000000000
--- a/dev/with-rocq-wrap.sh
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/bin/env bash
-
-set -ex
-
-rocq=$(command -v rocq)
-# NB on cygwin "$rocq" is a cygwin path (/foo/bar)
-# but reading files from hash.exe needs windows paths (C:/cygwin/foo/bar)
-# we avoid the problem by going through stdin
-rocqhash=$(dune exec --root "$(dirname "$0")"/.. -- dev/tools/hash.exe < "$rocq")
-
-rm -rf .wrappers
-mkdir .wrappers
-
-cat > .wrappers/coqc < .wrappers/coqdep < .wrappers/coqdoc < .wrappers/META.coq-core <