diff --git a/manifest.dhall b/manifest.dhall
index a41727859d17dd80d990a46f1a7e02e42436915b..d5bd274b720161e8ca2098c5bad49016578e1824 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -234,6 +234,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "foldl" "1.4.12"
     , callHackage "foundation" "0.0.29"
     , callHackage "fuzzy-time" "0.2.0.3"
+    , callHackage "generic-deriving" "1.14.2"
     , callHackage "generic-lens-core" "2.2.1.0"
     , callHackage "generic-lens-lite" "0.1"
     , callHackage "generic-monoid" "0.1.0.1"
diff --git a/overlay.nix b/overlay.nix
index cec51f20832a9a550b788c9aa3fcc3afe18e0c8a..bc025f2a5a50d9eb35a1a6ce08b8a624d46c46d1 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -271,6 +271,8 @@ self: with pkgs.haskell.lib; {
 
   fuzzy-time = self.callPackage (./pkgs/fuzzy-time.nix) { };
 
+  generic-deriving = self.callPackage (./pkgs/generic-deriving.nix) { };
+
   generic-lens-core = self.callPackage (./pkgs/generic-lens-core.nix) { };
 
   generic-lens-lite = self.callPackage (./pkgs/generic-lens-lite.nix) { };
diff --git a/pkgs/generic-deriving.nix b/pkgs/generic-deriving.nix
new file mode 100644
index 0000000000000000000000000000000000000000..b58ec9e66d9250b9e975767f8604aeb6bdecf65c
--- /dev/null
+++ b/pkgs/generic-deriving.nix
@@ -0,0 +1,38 @@
+{ mkDerivation
+, base
+, containers
+, ghc-prim
+, hspec
+, hspec-discover
+, lib
+, template-haskell
+, th-abstraction
+}:
+mkDerivation {
+  pname = "generic-deriving";
+  version = "1.14.2";
+  sha256 = "265e351117d451afaa37821ce91b44a02611cc94c7ed917a19e1efb0cc63aa2f";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base
+    containers
+    ghc-prim
+    template-haskell
+    th-abstraction
+  ];
+  testHaskellDepends = [ base hspec template-haskell ];
+  testToolDepends = [ hspec-discover ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/dreixel/generic-deriving";
+  description = "Generic programming library for generalised deriving";
+  license = lib.licenses.bsd3;
+  broken = false;
+}