diff --git a/manifest.dhall b/manifest.dhall
index 0e01a31d4e4317414ff831061d6d89cfc5b303a4..2c023d93f720a5733525ebcfa8af5ff417707e83 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -591,6 +591,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "vault" "0.3.1.5"
     , callHackage "vector" "0.13.0.0"
     , callHackage "vector-algorithms" "0.9.0.1"
+    , callHackage "vec" "0.4.1"
     , callHackage "vinyl" "0.14.3"
     , callHackage "void" "0.7.3"
     , callHackage "vty" "5.37"
diff --git a/overlay.nix b/overlay.nix
index 926fb019b937e483499bc44071638c17ec8e555c..a975339194f5fb274d9a7f919d5676ee8bd91f42 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -793,6 +793,8 @@ final: prev: with pkgs.haskell.lib; {
 
   vault = prev.callPackage (./pkgs/vault.nix) { };
 
+  vec = prev.callPackage (./pkgs/vec.nix) { };
+
   vector = prev.callPackage (./pkgs/vector.nix) { };
 
   vector-algorithms = prev.callPackage (./pkgs/vector-algorithms.nix) { };
diff --git a/pkgs/vec.nix b/pkgs/vec.nix
new file mode 100644
index 0000000000000000000000000000000000000000..a0d7513f65fb07168d1c07140927437b932b9240
--- /dev/null
+++ b/pkgs/vec.nix
@@ -0,0 +1,61 @@
+{ mkDerivation
+, adjunctions
+, base
+, base-compat
+, boring
+, criterion
+, deepseq
+, distributive
+, fin
+, hashable
+, indexed-traversable
+, inspection-testing
+, lib
+, QuickCheck
+, semigroupoids
+, tagged
+, transformers
+, vector
+}:
+mkDerivation {
+  pname = "vec";
+  version = "0.4.1";
+  sha256 = "0b158e65bbbf65c2b6626785ce21633b8037bcbef28f0869f5e64c4549fb6507";
+  revision = "1";
+  editedCabalFile = "156w28mz6d1gdp907j14v5xvj5y786h5pi4bfgvri592zwd2p46b";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [
+    adjunctions
+    base
+    boring
+    deepseq
+    distributive
+    fin
+    hashable
+    indexed-traversable
+    QuickCheck
+    semigroupoids
+    transformers
+  ];
+  testHaskellDepends = [
+    base
+    base-compat
+    fin
+    inspection-testing
+    tagged
+  ];
+  benchmarkHaskellDepends = [ base criterion fin vector ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/phadej/vec";
+  description = "Vec: length-indexed (sized) list";
+  license = lib.licenses.bsd3;
+  broken = false;
+}