diff --git a/manifest.dhall b/manifest.dhall
index 807114815c02aad66ae6a403299a0aa5775a9f96..1f34cc34838d440d6907128d7e237a3d4fe0b560 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -505,6 +505,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "unicode-transforms" "0.4.0.1"
     , callHackage "universe-base" "1.1.3"
     , callHackage "unliftio-core" "0.2.0.1"
+    , callHackage "unliftio" "0.2.23.0"
     , callHackage "unordered-containers" "0.2.19.1"
     , callHackage "validity" "0.12.0.1"
     , callHackage "validity-aeson" "0.2.0.5"
diff --git a/overlay.nix b/overlay.nix
index f1e6ff350e5fed7f60867434c44f48302f9beae7..6cdbd08fc5839796d65c1af77348fc0775701165 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -625,6 +625,8 @@ final: prev: with pkgs.haskell.lib; {
 
   universe-base = prev.callPackage (./pkgs/universe-base.nix) { };
 
+  unliftio = prev.callPackage (./pkgs/unliftio.nix) { };
+
   unliftio-core = prev.callPackage (./pkgs/unliftio-core.nix) { };
 
   unordered-containers = prev.callPackage (./pkgs/unordered-containers.nix) { };
diff --git a/pkgs/unliftio.nix b/pkgs/unliftio.nix
new file mode 100644
index 0000000000000000000000000000000000000000..8933abf8edb9fe7460626ab20d43d73c5c1e73fb
--- /dev/null
+++ b/pkgs/unliftio.nix
@@ -0,0 +1,88 @@
+{ mkDerivation
+, async
+, base
+, bytestring
+, containers
+, deepseq
+, directory
+, filepath
+, gauge
+, hspec
+, lib
+, process
+, QuickCheck
+, safe-exceptions
+, stm
+, time
+, transformers
+, unix
+, unliftio-core
+}:
+mkDerivation {
+  pname = "unliftio";
+  version = "0.2.23.0";
+  sha256 = "2d86a3deef6d801991aa6c837c5e6c0d3db916f33226be1428a5a04f626be4fd";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    async
+    base
+    bytestring
+    deepseq
+    directory
+    filepath
+    process
+    safe-exceptions
+    stm
+    time
+    transformers
+    unix
+    unliftio-core
+  ];
+  testHaskellDepends = [
+    async
+    base
+    bytestring
+    containers
+    deepseq
+    directory
+    filepath
+    hspec
+    process
+    QuickCheck
+    safe-exceptions
+    stm
+    time
+    transformers
+    unix
+    unliftio-core
+  ];
+  benchmarkHaskellDepends = [
+    async
+    base
+    bytestring
+    deepseq
+    directory
+    filepath
+    gauge
+    process
+    safe-exceptions
+    stm
+    time
+    transformers
+    unix
+    unliftio-core
+  ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/fpco/unliftio/tree/master/unliftio#readme";
+  description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
+  license = lib.licenses.mit;
+  broken = false;
+}