diff --git a/configuration.nix b/configuration.nix
index 41a8b8776ce1d9014414869e75976ab62138459b..cc4ed816de1c70d0f27b53f4cb6e9d3a604570b4 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -8,7 +8,32 @@ final: prev: {
 
   persistent-qq = null;
 
-  sdl2-gfx = pkgs.haskellPackages.sdl2-gfx;
+  sdl2-gfx = addSetupDepends
+    (overrideCabal prev.sdl2-gfx
+      { __onlyPropagateKnownPkgConfigModules = true; }
+    )
+    [ pkgs.pkg-config pkgs.SDL2 ];
+
+  sdl2-image =
+    addSetupDepends
+      (overrideCabal prev.sdl2-image
+        { __onlyPropagateKnownPkgConfigModules = true; }
+      )
+      [ pkgs.pkg-config pkgs.SDL2 pkgs.libtiff pkgs.libwebp ];
+
+  sdl2-mixer =
+    addSetupDepends
+      (overrideCabal prev.sdl2-mixer
+        { __onlyPropagateKnownPkgConfigModules = true; }
+      )
+      [ pkgs.pkg-config pkgs.SDL2 pkgs.libsndfile pkgs.libpulseaudio pkgs.alsa-lib pkgs.jack2 pkgs.glib pkgs.pcre2 ];
+
+  sdl2-ttf =
+    addSetupDepends
+      (overrideCabal prev.sdl2-ttf
+        { __onlyPropagateKnownPkgConfigModules = true; }
+      )
+      [ pkgs.pkg-config pkgs.SDL2 pkgs.SDL2_ttf pkgs.harfbuzz pkgs.freetype pkgs.glib pkgs.pcre2 ];
 
   zlib = prev.callPackage ./pkgs/zlib.nix { inherit (pkgs) zlib; };
 }
diff --git a/flake.lock b/flake.lock
index 3808da1cea3b1be211da589274ce25f0fe10b9ac..f14ee789bde778242a34190149cdcb5a79c76620 100644
--- a/flake.lock
+++ b/flake.lock
@@ -192,17 +192,17 @@
     },
     "nixpkgs_4": {
       "locked": {
-        "lastModified": 1690244517,
-        "narHash": "sha256-85HKKTzXygAcYLqgkNZw0rmtC1MBAcINpplraESqbuI=",
+        "lastModified": 1697059129,
+        "narHash": "sha256-9NJcFF9CEYPvHJ5ckE8kvINvI84SZZ87PvqMbH6pro0=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "500b36d057ceaa7ad3e2e282958a44ed607b021f",
+        "rev": "5e4c2ada4fcd54b99d56d7bd62f384511a7e2593",
         "type": "github"
       },
       "original": {
         "owner": "nixos",
+        "ref": "nixos-unstable",
         "repo": "nixpkgs",
-        "rev": "500b36d057ceaa7ad3e2e282958a44ed607b021f",
         "type": "github"
       }
     },
diff --git a/flake.nix b/flake.nix
index aee3e1d327a8ffb0f3fb3f3741a49af0bcfb3702..c551f6a7e3d10b612d841f30e0f3829ffa513ea3 100644
--- a/flake.nix
+++ b/flake.nix
@@ -10,7 +10,7 @@
     horizon-core.url = "git+https://gitlab.horizon-haskell.net/package-sets/horizon-core";
     flake-utils.url = "github:numtide/flake-utils";
     lint-utils.url = "git+https://gitlab.nixica.dev/nix/lint-utils";
-    nixpkgs.url = "github:nixos/nixpkgs?rev=500b36d057ceaa7ad3e2e282958a44ed607b021f";
+    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
   };
 
   outputs =