diff --git a/manifest.dhall b/manifest.dhall
index aa1b254468a4726e3d3add7c80c327e82c8f0484..0d1d1d23f383f2108ad607bedb753b420f75a9ab 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -243,6 +243,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "distributive" "0.6.2.1"
     , callHackage "dlist" "1.0"
     , callHackage "doclayout" "0.4"
+    , callHackage "doctest-exitcode-stdio" "0.0"
     , callCabal2nix
         "doctest"
         "https://github.com/sol/doctest"
diff --git a/overlay.nix b/overlay.nix
index 10bded57a6d72eda0681cb08256f88252590307c..e2e8d308a9f72624434b6f890edbc82327253b77 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -335,6 +335,8 @@ self: with pkgs.haskell.lib; {
 
   doctest = self.callPackage (./pkgs/doctest.nix) { };
 
+  doctest-exitcode-stdio = self.callPackage (./pkgs/doctest-exitcode-stdio.nix) { };
+
   doctest-parallel = self.callPackage (./pkgs/doctest-parallel.nix) { };
 
   dotgen = self.callPackage (./pkgs/dotgen.nix) { };
diff --git a/pkgs/doctest-exitcode-stdio.nix b/pkgs/doctest-exitcode-stdio.nix
new file mode 100644
index 0000000000000000000000000000000000000000..70837b202622f0f7df21b66b4b0ce175656e96e1
--- /dev/null
+++ b/pkgs/doctest-exitcode-stdio.nix
@@ -0,0 +1,36 @@
+{ mkDerivation
+, base
+, doctest-lib
+, lib
+, QuickCheck
+, semigroups
+, transformers
+}:
+mkDerivation {
+  pname = "doctest-exitcode-stdio";
+  version = "0.0";
+  sha256 = "1dec779d5e67ea46c8b0d69d454e0717383654e87323bdebc2bc0a8cb33f6cbc";
+  revision = "1";
+  editedCabalFile = "1065s8bch6zhl6mc8nhvfpwd1irmjd04z7xgycbpihc14x4ijim3";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base
+    doctest-lib
+    QuickCheck
+    semigroups
+    transformers
+  ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://hub.darcs.net/thielema/doctest-exitcode-stdio/";
+  description = "Run doctest's in a Cabal.Test.exitcode-stdio environment";
+  license = lib.licenses.bsd3;
+  broken = false;
+}