diff --git a/manifest.dhall b/manifest.dhall
index 64287e6d831203f4539a9809b8fbb6448ea79eac..51100abbdf4ce89942400ede656c449fc03d090a 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -61,6 +61,7 @@ in  [ callHackage "HTF" "0.15.0.0"
         "https://github.com/input-output-hk/cardano-base"
         (Some "46cd4c97cff9f1f0a0da976aa9e32bd2899c85ee")
         (Some "base-deriving-via")
+    , callHackage "base-prelude" "1.6.1"
     , callHackage "bech32" "1.1.2"
     , callCardanoLedger "byron-spec-chain" "eras/byron/chain/executable-spec"
     , callCardanoLedger "byron-spec-ledger" "eras/byron/ledger/executable-spec"
diff --git a/overlay.nix b/overlay.nix
index 1d2d2aef9eca168b148120447896fd3d66535367..37985ffb14b92b917aad16519e4a03834f8c254d 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -11,6 +11,8 @@ final: prev: with pkgs.haskell.lib; {
 
   base-deriving-via = prev.callPackage (./pkgs/base-deriving-via.nix) { };
 
+  base-prelude = prev.callPackage (./pkgs/base-prelude.nix) { };
+
   base58-bytestring = prev.callPackage (./pkgs/base58-bytestring.nix) { };
 
   base64-bytestring-type = prev.callPackage (./pkgs/base64-bytestring-type.nix) { };
diff --git a/pkgs/base-prelude.nix b/pkgs/base-prelude.nix
new file mode 100644
index 0000000000000000000000000000000000000000..2e8ff4d8ddd68fbd4cdaad754c9cbe21b7341b16
--- /dev/null
+++ b/pkgs/base-prelude.nix
@@ -0,0 +1,21 @@
+{ mkDerivation, base, lib }:
+mkDerivation {
+  pname = "base-prelude";
+  version = "1.6.1";
+  sha256 = "729034d1d83d8eacdf84399f97c4f9b99bb710555ddc1e0b9f196f5dd0347d65";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [ base ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/nikita-volkov/base-prelude";
+  description = "Featureful preludes formed solely from the \"base\" package";
+  license = lib.licenses.mit;
+  broken = false;
+}