diff --git a/manifest.dhall b/manifest.dhall
index 552a79d76d04caa3fd4558bb83ee5cafa8b69b2e..4ef6bb6aa951b3bfd6829c9b5e1d0fc2fc3cb80a 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -268,6 +268,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
         (Some "918df757ce5c9244232c1e3a1e05e9d9e3ab4f09")
         (None Text)
     , callHackage "hslua-aeson" "2.2.1"
+    , callHackage "hslua-classes" "2.2.0"
     , callHackage "hslua" "2.2.1"
     , callHackage "hspec" "2.10.3"
     , callHackage "hspec-contrib" "0.5.1.1"
diff --git a/overlay.nix b/overlay.nix
index 84345cfe3645ae5df45a4afc5824723ebb7245a1..b0db0c56cb2d48f7a8e8a8f1064ea51fe6519e95 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -309,6 +309,8 @@ final: prev: with pkgs.haskell.lib; {
 
   hslua-aeson = prev.callPackage (./pkgs/hslua-aeson.nix) { };
 
+  hslua-classes = prev.callPackage (./pkgs/hslua-classes.nix) { };
+
   hspec = prev.callPackage (./pkgs/hspec.nix) { };
 
   hspec-contrib = prev.callPackage (./pkgs/hspec-contrib.nix) { };
diff --git a/pkgs/hslua-classes.nix b/pkgs/hslua-classes.nix
new file mode 100644
index 0000000000000000000000000000000000000000..f1b37f19d993411be86ae71a8feb0f391517be4e
--- /dev/null
+++ b/pkgs/hslua-classes.nix
@@ -0,0 +1,61 @@
+{ mkDerivation
+, base
+, bytestring
+, containers
+, exceptions
+, hslua-core
+, hslua-marshalling
+, lib
+, lua-arbitrary
+, QuickCheck
+, quickcheck-instances
+, tasty
+, tasty-hslua
+, tasty-hunit
+, tasty-quickcheck
+, text
+}:
+mkDerivation {
+  pname = "hslua-classes";
+  version = "2.2.0";
+  sha256 = "4145d3929edd4c49f6663102177614e556be81d3c7c9549998266006f9a8fefc";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    base
+    bytestring
+    containers
+    exceptions
+    hslua-core
+    hslua-marshalling
+    text
+  ];
+  testHaskellDepends = [
+    base
+    bytestring
+    containers
+    exceptions
+    hslua-core
+    hslua-marshalling
+    lua-arbitrary
+    QuickCheck
+    quickcheck-instances
+    tasty
+    tasty-hslua
+    tasty-hunit
+    tasty-quickcheck
+    text
+  ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://hslua.org/";
+  description = "Type classes for HsLua";
+  license = lib.licenses.mit;
+  broken = false;
+}