diff --git a/flake.lock b/flake.lock
index 697acf4..06036b6 100644
--- a/flake.lock
+++ b/flake.lock
@@ -1179,6 +1179,22 @@
         "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz"
       }
     },
+    "nixpkgs-mopidy": {
+      "locked": {
+        "lastModified": 1734856068,
+        "narHash": "sha256-Q+CB1ajsJg4Z9HGHTBAGY1q18KpnnkmF/eCTLUY6FQ0=",
+        "owner": "NixOS",
+        "repo": "nixpkgs",
+        "rev": "93ff48c9be84a76319dac293733df09bbbe3f25c",
+        "type": "github"
+      },
+      "original": {
+        "owner": "NixOS",
+        "repo": "nixpkgs",
+        "rev": "93ff48c9be84a76319dac293733df09bbbe3f25c",
+        "type": "github"
+      }
+    },
     "nixpkgs-nix-du": {
       "locked": {
         "lastModified": 1722785290,
@@ -1335,6 +1351,7 @@
         "nix-wsl": "nix-wsl",
         "nixfiles-assets": "nixfiles-assets",
         "nixpkgs": "nixpkgs_2",
+        "nixpkgs-mopidy": "nixpkgs-mopidy",
         "nixpkgs-nix-du": "nixpkgs-nix-du",
         "nixpkgs-unstable": "nixpkgs-unstable",
         "rust-overlay": "rust-overlay_2",
diff --git a/flake.nix b/flake.nix
index ef83d88..22f245f 100644
--- a/flake.nix
+++ b/flake.nix
@@ -9,6 +9,7 @@
     nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
 
     nixpkgs-nix-du.url = "github:NixOS/nixpkgs/c933cf4698e5189b35dd83bf4d7a81aef16d464a";
+    nixpkgs-mopidy.url = "github:NixOS/nixpkgs/93ff48c9be84a76319dac293733df09bbbe3f25c";
 
     # this seems to be a popular way to declare systems
     systems.url = "github:nix-systems/default";
diff --git a/overlays/mitigations.nix b/overlays/mitigations.nix
index 148cea6..144f220 100644
--- a/overlays/mitigations.nix
+++ b/overlays/mitigations.nix
@@ -12,7 +12,7 @@
     pkgsStable = import nixfiles.inputs.nixpkgs.outPath {inherit (prev) system;};
     updateTime = nixfiles.inputs.nixpkgs-unstable.lastModified;
 
-    inherit (final) lib callPackage fetchFromGitHub;
+    inherit (final) callPackage fetchFromGitHub;
     inherit
       (lib)
       recurseIntoAttrs
@@ -55,35 +55,71 @@
       prev.gimp-with-plugins.override {inherit plugins;};
     # this also causes an infinite recursion and i have no idea why
     # in nixfiles.inputs.nixpkgs.lib.filterAttrs (k: v: v != null) {
-  in {
-    nix-du = let
-      old = prev.nix-du;
-      new = (pkgsFromInput "nixpkgs-nix-du").nix-du;
-    in
-      pickNewer old new;
+  in
+    {
+      nix-du = let
+        old = prev.nix-du;
+        new = (pkgsFromInput "nixpkgs-nix-du").nix-du;
+      in
+        pickNewer old new;
 
-    gimp-with-plugins = gimp-with-plugins-good;
+      gimp-with-plugins = gimp-with-plugins-good;
 
-    nwg-displays = let
-      stable = pkgsStable.nwg-displays;
-      unstable = prev.nwg-displays;
-      now = 1739114541;
-    in
-      hold now 7 stable unstable;
+      nwg-displays = let
+        stable = pkgsStable.nwg-displays;
+        unstable = prev.nwg-displays;
+        now = 1739114541;
+      in
+        hold now 7 stable unstable;
 
-    libreoffice = let
-      stable = pkgsStable.libreoffice;
-      unstable = prev.libreoffice;
-      now = 1739558971;
-    in
-      hold now 7 stable unstable;
+      libreoffice = let
+        stable = pkgsStable.libreoffice;
+        unstable = prev.libreoffice;
+        now = 1739558971;
+      in
+        hold now 7 stable unstable;
 
-    redlib = let
-      redlib-new = final.callPackage nixfiles.packages.${prev.system}.redlib.override {};
-      inherit (prev) redlib;
-    in
-      pickNewer redlib-new redlib;
-  };
+      redlib = let
+        redlib-new = final.callPackage nixfiles.packages.${prev.system}.redlib.override {};
+        inherit (prev) redlib;
+      in
+        pickNewer redlib-new redlib;
+    }
+    // (
+      lib.genAttrs [
+        "mopidyPackages"
+        "mopidy"
+        "mopidy-bandcamp"
+        "mopidy-iris"
+        "mopidy-jellyfin"
+        "mopidy-local"
+        "mopidy-moped"
+        "mopidy-mopify"
+        "mopidy-mpd"
+        "mopidy-mpris"
+        "mopidy-muse"
+        "mopidy-musicbox-webclient"
+        "mopidy-notify"
+        "mopidy-podcast"
+        "mopidy-scrobbler"
+        "mopidy-somafm"
+        "mopidy-soundcloud"
+        "mopidy-spotify"
+        "mopidy-subidy"
+        "mopidy-tidal"
+        "mopidy-tunein"
+        "mopidy-youtube"
+        "mopidy-ytmusic"
+      ] (name: let
+        pkgs-mopidy = (import inputs.nixpkgs-mopidy) {};
+        unstable = prev."${name}";
+        stable = pkgs-mopidy."${name}";
+        now = 1740786429;
+      in
+        # pin for at least 90 days because who knows when this will be fixed
+        # https://github.com/mopidy/mopidy/issues/2183
+        hold now 90 stable unstable)
+    );
 in {
   config.flake.overlays.mitigations = overlay;
 }