diff --git a/manifest.dhall b/manifest.dhall
index 4cad36062f042eaf716ec70cf893dd8078704c90..c3541c08a9516ec502d950d8e31eb237de69b421 100644
--- a/manifest.dhall
+++ b/manifest.dhall
@@ -95,6 +95,7 @@ in  [ callHackage "Cabal" "3.8.1.0"
     , callHackage "attoparsec-binary" "0.2"
     , callHackage "attoparsec-iso8601" "1.1.0.0"
     , callHackage "attoparsec" "0.14.4"
+    , callHackage "auto-update" "0.1.6"
     , callHackage "autodocodec" "0.2.0.1"
     , callHackage "autodocodec-schema" "0.1.0.2"
     , callHackage "autodocodec-servant-multipart" "0.0.0.0"
diff --git a/overlay.nix b/overlay.nix
index f1410efdef6e42b12ead66570b1108cfeca56634..9e5952d56faddeec5a02d4ef562694ea68ccaf0c 100644
--- a/overlay.nix
+++ b/overlay.nix
@@ -83,6 +83,8 @@ self: with pkgs.haskell.lib; {
 
   attoparsec-iso8601 = self.callPackage (./pkgs/attoparsec-iso8601.nix) { };
 
+  auto-update = self.callPackage (./pkgs/auto-update.nix) { };
+
   autodocodec = self.callPackage (./pkgs/autodocodec.nix) { };
 
   autodocodec-schema = self.callPackage (./pkgs/autodocodec-schema.nix) { };
diff --git a/pkgs/auto-update.nix b/pkgs/auto-update.nix
new file mode 100644
index 0000000000000000000000000000000000000000..5e33839c48383c024c6eae456731c4d12c274208
--- /dev/null
+++ b/pkgs/auto-update.nix
@@ -0,0 +1,22 @@
+{ mkDerivation, base, exceptions, hspec, HUnit, lib, retry }:
+mkDerivation {
+  pname = "auto-update";
+  version = "0.1.6";
+  sha256 = "f4e023dc8713c387ecf20d851247597fd012cabea3872310b35e911105eb66c4";
+  isLibrary = true;
+  isExecutable = false;
+  enableSeparateDataOutput = false;
+  libraryHaskellDepends = [ base ];
+  testHaskellDepends = [ base exceptions hspec HUnit retry ];
+  enableLibraryProfiling = false;
+  enableExecutableProfiling = false;
+  doHaddock = false;
+  jailbreak = true;
+  doCheck = false;
+  doBenchmark = false;
+  hyperlinkSource = false;
+  homepage = "https://github.com/yesodweb/wai";
+  description = "Efficiently run periodic, on-demand actions";
+  license = lib.licenses.mit;
+  broken = false;
+}