diff --git a/horizon.dhall b/horizon.dhall
index 206b988e80edf866621941cbbb63499b4da5cde9..8acb7db7a1bdfa0696df80473d255dc314034c8d 100644
--- a/horizon.dhall
+++ b/horizon.dhall
@@ -349,6 +349,8 @@ let packages =
           ]
       , haskell-src = H.callHackage "haskell-src" "1.0.4"
       , hasql = H.callHackage "hasql" "1.6.3"
+      , hasql-explain-tests = H.callHackage "hasql-explain-tests" "0.1.0.0"
+      , hasql-migration = H.callHackage "hasql-migration" "0.3.0"
       , hasql-th = H.callHackage "hasql-th" "0.4.0.18"
       , hasql-transaction = H.callHackage "hasql-transaction" "1.0.1.2"
       , hdaemonize = H.callHackage "hdaemonize" "0.5.6"
diff --git a/horizon.lock b/horizon.lock
index 4facacb238add88799579f7e5b40691dc4a40174..ccf798ef009540842750fd5408485f1b5b19efb0 100644
--- a/horizon.lock
+++ b/horizon.lock
@@ -1054,6 +1054,14 @@
   , mapValue =
       "34cd25afdc29108c6e9829a92cab2f0b3d55fa00e2426227627e64e15abf22eb"
   }
+, { mapKey = "hasql-explain-tests"
+  , mapValue =
+      "cbcf5d97e8f5c7a0767e3f7dc44d4ad9844a844bf1f870eb63f8fb7d56608790"
+  }
+, { mapKey = "hasql-migration"
+  , mapValue =
+      "ea944b57a803fb0f1ec78c1d31d57579382002b54f813163d09fe18ed85c5a9e"
+  }
 , { mapKey = "hasql-th"
   , mapValue =
       "3044c356f1d3d408da4205d71925a830f81857571b753f6ee745423b75471279"
diff --git a/overlay.nix b/overlay.nix
index 4d1d19fbe12702dc2e77c11991180c9b53fb391b..c5cd0a8a178f11e49804c5f08e9a94cc309e42ec 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -529,6 +529,10 @@ final: prev: with pkgs.haskell.lib; {
 
   hasql = final.callPackage (./pkgs/hasql.nix) { };
 
+  hasql-explain-tests = final.callPackage (./pkgs/hasql-explain-tests.nix) { };
+
+  hasql-migration = final.callPackage (./pkgs/hasql-migration.nix) { };
+
   hasql-th = final.callPackage (./pkgs/hasql-th.nix) { };
 
   hasql-transaction = final.callPackage (./pkgs/hasql-transaction.nix) { };
diff --git a/pkgs/hasql-explain-tests.nix b/pkgs/hasql-explain-tests.nix
new file mode 100644
index 0000000000000000000000000000000000000000..67366f29d0d35e3ab66538fcb05fbf0b83353f2a
--- /dev/null
+++ b/pkgs/hasql-explain-tests.nix
@@ -0,0 +1,26 @@
+{ mkDerivation, QuickCheck, base, bytestring, hasql, hspec, lib
+, profunctors, tasty, tasty-hunit, tmp-postgres
+}:
+mkDerivation {
+  pname = "hasql-explain-tests";
+  version = "0.1.0.0";
+  sha256 = "7fa808325ece8c05326648b89187bbb788a96ea8448b672607f8435f925be95e";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base bytestring hasql hspec profunctors QuickCheck tmp-postgres
+  ];
+  testHaskellDepends = [ base hasql tasty tasty-hunit ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/cheopslab/hasql-explain-tests";
+  description = "Hasql queries testing interface";
+  license = lib.licenses.mpl20;
+  broken = false;
+}
\ No newline at end of file
diff --git a/pkgs/hasql-migration.nix b/pkgs/hasql-migration.nix
new file mode 100644
index 0000000000000000000000000000000000000000..22980c5fbcdcbaecabd471c0c24167c729c56b4a
--- /dev/null
+++ b/pkgs/hasql-migration.nix
@@ -0,0 +1,30 @@
+{ mkDerivation, base, bytestring, contravariant, cryptonite
+, directory, hasql, hasql-transaction, hspec, lib, memory, text
+, time, transformers
+}:
+mkDerivation {
+  pname = "hasql-migration";
+  version = "0.3.0";
+  sha256 = "1891f09bc01e6f2868368906c8ebc5435d21956b66470b6c96ab656674636962";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base bytestring contravariant cryptonite directory hasql
+    hasql-transaction memory text time
+  ];
+  testHaskellDepends = [
+    base bytestring hasql hasql-transaction hspec transformers
+  ];
+  enableLibraryProfiling = true;
+  enableExecutableProfiling = true;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/tvh/hasql-migration";
+  description = "PostgreSQL Schema Migrations";
+  license = lib.licenses.bsd3;
+  broken = false;
+}
\ No newline at end of file