diff --git a/ci/default.nix b/ci/default.nix
index 8cd997602ce62ae65a7151a9c0998f283b504fcd..1ca275b29b5851f2146d31234c6d32b9d59707b3 100644
--- a/ci/default.nix
+++ b/ci/default.nix
@@ -5,17 +5,15 @@ in
 
 with nixpkgs;
 let
-  haskellPackages = nixpkgs.haskellPackages.override { all-cabal-hashes = sources.all-cabal-hashes.outPath; };
+  haskellPackages = nixpkgs.haskell.packages.ghc925.override { all-cabal-hashes = sources.all-cabal-hashes.outPath; };
 
   hackage-repo-tool =
     let src = sources.hackage-security.outPath;
-    in haskellPackages.callCabal2nix "hackage-repo-tool" "${src}/hackage-repo-tool" {
-        optparse-applicative = haskellPackages.callHackage "optparse-applicative" "0.15.1.0" {};
-      };
+    in nixpkgs.haskell.lib.doJailbreak (haskellPackages.callCabal2nix "hackage-repo-tool" "${src}/hackage-repo-tool" {});
 
   overlay-tool =
     let src = sources.overlay-tool;
-    in haskellPackages.callCabal2nix "hackage-overlay-repo-tool" src { };
+    in nixpkgs.haskell.lib.doJailbreak (haskellPackages.callCabal2nix "hackage-overlay-repo-tool" src { });
 
   head-hackage-ci =
     let
diff --git a/ci/head-hackage-ci.cabal b/ci/head-hackage-ci.cabal
index 5874b5492fa230acb672fe8c0f03b180515409fc..3c85fa75cb67d360c137af27b686863a80e67dec 100644
--- a/ci/head-hackage-ci.cabal
+++ b/ci/head-hackage-ci.cabal
@@ -19,7 +19,7 @@ executable head-hackage-ci
     aeson,
     ansi-wl-pprint,
     async,
-    base >=4.11 && <4.16,
+    base >=4.11 && <5,
     bytestring,
     cabal-plan,
     containers,
diff --git a/ci/nix/sources.json b/ci/nix/sources.json
index 88829d5220b35bcd14bea58546371382cbbd706b..162748b2b1ce5a142639354a3cfe7bcdaff5dee3 100644
--- a/ci/nix/sources.json
+++ b/ci/nix/sources.json
@@ -5,10 +5,10 @@
         "homepage": null,
         "owner": "commercialhaskell",
         "repo": "all-cabal-hashes",
-        "rev": "3a406043fb5586e6016440b65759b10b036cdb4f",
-        "sha256": "1c2hvz1h14w8s4qxlrrnpsbdi3a712d49w257lgifabh57s94zrb",
+        "rev": "b0a2944a580a29defa7e68ebc6298bf9d851d86a",
+        "sha256": "163m68dcqc0i13s631g18sx5phgabjcvkl0nvkmcgsaqd8fnbzfc",
         "type": "file",
-        "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/3a406043fb5586e6016440b65759b10b036cdb4f.tar.gz",
+        "url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/b0a2944a580a29defa7e68ebc6298bf9d851d86a.tar.gz",
         "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
     },
     "ghc-artefact-nix": {
@@ -53,10 +53,10 @@
         "homepage": "",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "4418f362e68c69226807a5837fcbfc94f0b92adb",
-        "sha256": "1lh31mnx55c1yh070m0r3xmm39wfzi4mh9fdi8rn31wjzkrzxgrn",
+        "rev": "33e0d99cbedf2acfd7340d2150837fbb28039a64",
+        "sha256": "15ll14rycfarqd7isyfms1fhszw9k36ars58gvdw3bkka5mj48cr",
         "type": "tarball",
-        "url": "https://github.com/NixOS/nixpkgs/archive/4418f362e68c69226807a5837fcbfc94f0b92adb.tar.gz",
+        "url": "https://github.com/NixOS/nixpkgs/archive/33e0d99cbedf2acfd7340d2150837fbb28039a64.tar.gz",
         "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
     },
     "overlay-tool": {
diff --git a/default.nix b/default.nix
index 289f1e7eef21284d3d045959ea255dd90a02d624..852a40603d8d80f567700e70fd10fc4043249eed 100644
--- a/default.nix
+++ b/default.nix
@@ -9,11 +9,11 @@
 #
 let
   # To update nixpkgs bump rev and baseNixpkgs's sha256.
-  rev = "2f746bc1fcdc24b103bda3a27ed82c23200cc077";
+  rev = "33e0d99cbedf2acfd7340d2150837fbb28039a64";
   baseNixpkgs =
     fetchTarball {
       url = "https://github.com/NixOS/nixpkgs/archive/${rev}.tar.gz";
-      sha256 = "142yl6xakkwmyy8x32h94fci4x09l0yqppq5hwj19a3nmd0zmsjx";
+      sha256 = "042yl6xakkwmyy8x32h94fci4x09l0yqppq5hwj19a3nmd0zmsjx";
     };
 in