diff --git a/horizon.dhall b/horizon.dhall
index fb7456e9bc47fcb8c79a94936aff78f398584fc0..c05b2ed6bd18518a7c22be710ceec5fdcc55d720 100644
--- a/horizon.dhall
+++ b/horizon.dhall
@@ -474,6 +474,7 @@ let packages =
       , integer-logarithms = H.callHackage "integer-logarithms" "1.0.3.1"
       , interpolate = H.callHackage "interpolate" "0.2.1"
       , invariant = H.callHackage "invariant" "0.6"
+      , io-streams = H.callHackage "io-streams" "1.5.2.2"
       , ipynb = H.callHackage "ipynb" "0.2"
       , iproute = H.callHackage "iproute" "1.7.12"
       , iso8601-time = H.callHackage "iso8601-time" "0.1.5"
diff --git a/initial-packages.nix b/initial-packages.nix
index d64527ac222632cd8ead41640ee75404a62730e1..119e4c29b9100521b41f0fd3928ec6b41b9d0ebd 100644
--- a/initial-packages.nix
+++ b/initial-packages.nix
@@ -729,6 +729,8 @@ self: with pkgs.haskell.lib; {
 
   invariant = self.callPackage (./pkgs/invariant.nix) { };
 
+  io-streams = self.callPackage (./pkgs/io-streams.nix) { };
+
   iproute = self.callPackage (./pkgs/iproute.nix) { };
 
   ipynb = self.callPackage (./pkgs/ipynb.nix) { };
diff --git a/pkgs/io-streams.nix b/pkgs/io-streams.nix
new file mode 100644
index 0000000000000000000000000000000000000000..cc49e5faa2f1881c0f882b3f89853eba17243d87
--- /dev/null
+++ b/pkgs/io-streams.nix
@@ -0,0 +1,79 @@
+{ mkDerivation
+, HUnit
+, QuickCheck
+, attoparsec
+, base
+, bytestring
+, deepseq
+, directory
+, filepath
+, lib
+, mtl
+, network
+, primitive
+, process
+, test-framework
+, test-framework-hunit
+, test-framework-quickcheck2
+, text
+, time
+, transformers
+, vector
+, zlib
+, zlib-bindings
+}:
+mkDerivation {
+  pname = "io-streams";
+  version = "1.5.2.2";
+  sha256 = "d365d5051696c15414ebe23749fc67475a532234b7c7d77060323d149a8fc4fe";
+  configureFlags = [ "-fnointeractivetests" ];
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    attoparsec
+    base
+    bytestring
+    network
+    primitive
+    process
+    text
+    time
+    transformers
+    vector
+    zlib-bindings
+  ];
+  testHaskellDepends = [
+    attoparsec
+    base
+    bytestring
+    deepseq
+    directory
+    filepath
+    HUnit
+    mtl
+    network
+    primitive
+    process
+    QuickCheck
+    test-framework
+    test-framework-hunit
+    test-framework-quickcheck2
+    text
+    time
+    transformers
+    vector
+    zlib
+    zlib-bindings
+  ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  description = "Simple, composable, and easy-to-use stream I/O";
+  license = lib.licenses.bsd3;
+  broken = false;
+}