diff --git a/manifest.dhall b/manifest.dhall
index 483f01255d4315244054970a949a88d9a9d98347..1ca2e3bbb7e22fc930526cc90d15f522887d29de 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -486,6 +486,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
         "https://github.com/haskell-effectful/time-effectful"
         (Some "e212239b685e1ecf7ee95dd1e944cc563351907f")
         (None Text)
+    , callHackage "typed-process" "0.2.10.1"
     , callHackage "type-errors-pretty" "0.0.1.2"
     , callHackage "type-errors" "0.2.0.0"
     , callHackage "type-equality" "1"
diff --git a/overlay.nix b/overlay.nix
index 9f21c0fcde61ddb03a27d5a050a6d43ad5fb7022..a633848b1061c633b4b87c8de4d442fa0368e551 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -603,6 +603,8 @@ final: prev: with pkgs.haskell.lib; {
 
   type-errors-pretty = prev.callPackage (./pkgs/type-errors-pretty.nix) { };
 
+  typed-process = prev.callPackage (./pkgs/typed-process.nix) { };
+
   typerep-map = prev.callPackage (./pkgs/typerep-map.nix) { };
 
   unicode-collation = prev.callPackage (./pkgs/unicode-collation.nix) { };
diff --git a/pkgs/typed-process.nix b/pkgs/typed-process.nix
new file mode 100644
index 0000000000000000000000000000000000000000..be335186584d899e617a8d8772087c3233095f93
--- /dev/null
+++ b/pkgs/typed-process.nix
@@ -0,0 +1,53 @@
+{ mkDerivation
+, async
+, base
+, base64-bytestring
+, bytestring
+, hspec
+, lib
+, process
+, stm
+, temporary
+, transformers
+, unliftio-core
+}:
+mkDerivation {
+  pname = "typed-process";
+  version = "0.2.10.1";
+  sha256 = "e436875ccd6664d4111e601c8e2ec6ba9473979eac49b23a1bdb88f80e95099e";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    async
+    base
+    bytestring
+    process
+    stm
+    transformers
+    unliftio-core
+  ];
+  testHaskellDepends = [
+    async
+    base
+    base64-bytestring
+    bytestring
+    hspec
+    process
+    stm
+    temporary
+    transformers
+    unliftio-core
+  ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/fpco/typed-process";
+  description = "Run external processes, with strong typing of streams";
+  license = lib.licenses.mit;
+  broken = false;
+}