diff --git a/manifest.dhall b/manifest.dhall
index 9b0de0f2b2945be6969bcb1a12eb88a1a14102d9..0aa9a9abe18ca1a30d2353426a3b7ba2dfbbe702 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -376,6 +376,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "validity-case-insensitive" "0.0.0.0"
     , callHackage "validity-containers" "0.5.0.4"
     , callHackage "validity-path" "0.4.0.1"
+    , callHackage "validity-persistent" "0.0.0.0"
     , callHackage "vault" "0.3.1.5"
     , callHackage "vector" "0.13.0.0"
     , callHackage "vector-algorithms" "0.9.0.1"
diff --git a/overlay.nix b/overlay.nix
index f4216348dc3c98b96b13e36ba8cfac8f11de9fb9..370fb2e578f075a6bc13db11168a09f6fae595ee 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -489,6 +489,8 @@ final: prev: with pkgs.haskell.lib; {
 
     validity-path = prev.callPackage (./pkgs/validity-path.nix) { };
 
+    validity-persistent = prev.callPackage (./pkgs/validity-persistent.nix) { };
+
     vault = prev.callPackage (./pkgs/vault.nix) { };
 
     vector = prev.callPackage (./pkgs/vector.nix) { };
diff --git a/pkgs/validity-persistent.nix b/pkgs/validity-persistent.nix
new file mode 100644
index 0000000000000000000000000000000000000000..4c015a3f967a48f0a281381b9db87be16fd9cdf8
--- /dev/null
+++ b/pkgs/validity-persistent.nix
@@ -0,0 +1,14 @@
+{ mkDerivation, base, hspec, lib, persistent, validity }:
+mkDerivation {
+  pname = "validity-persistent";
+  version = "0.0.0.0";
+  sha256 = "cc38e8f31ef26e1d9a277181792902e568b71e4a159d006e08738e222d8f7e0a";
+  libraryHaskellDepends = [ base hspec persistent validity ];
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  hyperlinkSource = false;
+  homepage = "http://cs-syd.eu";
+  description = "Validity instances for persistent-related types";
+  license = lib.licenses.mit;
+}
\ No newline at end of file