diff --git a/apps/extract-subs/default.nix b/apps/extract-subs/default.nix
index 0d941863..22bd28a3 100644
--- a/apps/extract-subs/default.nix
+++ b/apps/extract-subs/default.nix
@@ -5,7 +5,7 @@
 }:
 buildApp {
   src = ./.;
-  npmDepsHash = "sha256-4bv290XrCnBmyUBPHRyYGg5NQ2xV0VI8Fnc23yoAxy8=";
+  npmDepsHash = "sha256-XceOF2nmSxLd36/GSZEHIkETxmp3EJ9EN++AcPWQdTU=";
 
   runtimeInputs = [
     ffmpeg-full
diff --git a/apps/extract-subs/package-lock.json b/apps/extract-subs/package-lock.json
index 04661409..31eba604 100644
--- a/apps/extract-subs/package-lock.json
+++ b/apps/extract-subs/package-lock.json
@@ -9,7 +9,7 @@
             "version": "0.0.0",
             "dependencies": {
                 "@types/fluent-ffmpeg": "2.1.27",
-                "@types/node": "22.14.0",
+                "@types/node": "22.14.1",
                 "esbuild": "0.25.2",
                 "eslint": "9.24.0",
                 "fluent-ffmpeg": "2.1.3",
@@ -439,9 +439,9 @@
             }
         },
         "node_modules/@eslint-community/eslint-utils": {
-            "version": "4.5.1",
-            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
-            "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+            "version": "4.6.0",
+            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz",
+            "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==",
             "license": "MIT",
             "dependencies": {
                 "eslint-visitor-keys": "^3.4.3"
@@ -661,9 +661,9 @@
             "license": "MIT"
         },
         "node_modules/@types/node": {
-            "version": "22.14.0",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz",
-            "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
+            "version": "22.14.1",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz",
+            "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==",
             "license": "MIT",
             "dependencies": {
                 "undici-types": "~6.21.0"
diff --git a/apps/extract-subs/package.json b/apps/extract-subs/package.json
index 8550e5fa..8239212b 100644
--- a/apps/extract-subs/package.json
+++ b/apps/extract-subs/package.json
@@ -9,7 +9,7 @@
     "dependencies": {
         "@types/fluent-ffmpeg": "2.1.27",
         "fluent-ffmpeg": "2.1.3",
-        "@types/node": "22.14.0",
+        "@types/node": "22.14.1",
         "esbuild": "0.25.2",
         "eslint": "9.24.0",
         "jiti": "2.4.2",
diff --git a/apps/list2series/default.nix b/apps/list2series/default.nix
index d6ff6ead..838a4d78 100644
--- a/apps/list2series/default.nix
+++ b/apps/list2series/default.nix
@@ -1,7 +1,7 @@
 {buildApp, ...}:
 buildApp {
   src = ./.;
-  npmDepsHash = "sha256-KHd2+rZvGRi1dqAfH80M9LITgEHZ3IGUE5mdGBRwDyo=";
+  npmDepsHash = "sha256-xllXwbvxYz7HKolKqpT0RZlHf7iYNZ8dWcpThRmrCmU=";
 
   runtimeInputs = [];
 
diff --git a/apps/list2series/package-lock.json b/apps/list2series/package-lock.json
index 3fd100d3..d493d181 100644
--- a/apps/list2series/package-lock.json
+++ b/apps/list2series/package-lock.json
@@ -8,7 +8,7 @@
             "name": "list2series",
             "version": "0.0.0",
             "dependencies": {
-                "@types/node": "22.14.0",
+                "@types/node": "22.14.1",
                 "axios": "1.8.4",
                 "esbuild": "0.25.2",
                 "eslint": "9.24.0",
@@ -439,9 +439,9 @@
             }
         },
         "node_modules/@eslint-community/eslint-utils": {
-            "version": "4.5.1",
-            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
-            "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+            "version": "4.6.0",
+            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz",
+            "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==",
             "license": "MIT",
             "dependencies": {
                 "eslint-visitor-keys": "^3.4.3"
@@ -652,9 +652,9 @@
             "license": "MIT"
         },
         "node_modules/@types/node": {
-            "version": "22.14.0",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz",
-            "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
+            "version": "22.14.1",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz",
+            "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==",
             "license": "MIT",
             "dependencies": {
                 "undici-types": "~6.21.0"
diff --git a/apps/list2series/package.json b/apps/list2series/package.json
index 1d1f0246..44902b2e 100644
--- a/apps/list2series/package.json
+++ b/apps/list2series/package.json
@@ -7,7 +7,7 @@
         "build": "node_ver=$(node -v); esbuild src/app.ts --bundle --platform=node --target=\"node${node_ver:1:2}\" --outfile=out/bin/app.cjs"
     },
     "dependencies": {
-        "@types/node": "22.14.0",
+        "@types/node": "22.14.1",
         "axios": "1.8.4",
         "esbuild": "0.25.2",
         "eslint": "9.24.0",
diff --git a/apps/mc-mods/default.nix b/apps/mc-mods/default.nix
index 699056cb..c6107d52 100644
--- a/apps/mc-mods/default.nix
+++ b/apps/mc-mods/default.nix
@@ -5,7 +5,7 @@
 }:
 buildApp {
   src = ./.;
-  npmDepsHash = "sha256-c1gU85N+5MqdmyDV/EsYIa6PYs4Kl2hxMj6P61L9Z/c=";
+  npmDepsHash = "sha256-IIMIA9V+aYJxdvwys82ea/fcnUid/pVRNtM0w/wt66Y=";
 
   runtimeInputs = [
     nodejs_latest
diff --git a/apps/mc-mods/package-lock.json b/apps/mc-mods/package-lock.json
index 282b3651..07c94af3 100644
--- a/apps/mc-mods/package-lock.json
+++ b/apps/mc-mods/package-lock.json
@@ -8,7 +8,7 @@
             "name": "mc-mods",
             "version": "0.0.0",
             "dependencies": {
-                "@types/node": "22.14.0",
+                "@types/node": "22.14.1",
                 "esbuild": "0.25.2",
                 "eslint": "9.24.0",
                 "jiti": "2.4.2",
@@ -438,9 +438,9 @@
             }
         },
         "node_modules/@eslint-community/eslint-utils": {
-            "version": "4.5.1",
-            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
-            "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+            "version": "4.6.0",
+            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz",
+            "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==",
             "license": "MIT",
             "dependencies": {
                 "eslint-visitor-keys": "^3.4.3"
@@ -651,9 +651,9 @@
             "license": "MIT"
         },
         "node_modules/@types/node": {
-            "version": "22.14.0",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz",
-            "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
+            "version": "22.14.1",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz",
+            "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==",
             "license": "MIT",
             "dependencies": {
                 "undici-types": "~6.21.0"
diff --git a/apps/mc-mods/package.json b/apps/mc-mods/package.json
index 3b588e3c..71abe828 100644
--- a/apps/mc-mods/package.json
+++ b/apps/mc-mods/package.json
@@ -7,7 +7,7 @@
         "build": "node_ver=$(node -v); esbuild src/app.ts --bundle --platform=node --target=\"node${node_ver:1:2}\" --outfile=out/bin/app.cjs"
     },
     "dependencies": {
-        "@types/node": "22.14.0",
+        "@types/node": "22.14.1",
         "esbuild": "0.25.2",
         "eslint": "9.24.0",
         "jiti": "2.4.2",
diff --git a/apps/pin-inputs/default.nix b/apps/pin-inputs/default.nix
index 60f3c86d..ca8c32c1 100644
--- a/apps/pin-inputs/default.nix
+++ b/apps/pin-inputs/default.nix
@@ -1,7 +1,7 @@
 {buildApp, ...}:
 buildApp {
   src = ./.;
-  npmDepsHash = "sha256-JMu/G8FhWaGi4NEi78RX06URqMjS0/aHID2bbQZpzC0=";
+  npmDepsHash = "sha256-521CPFrk38VTlNsufxkf0JXVu4I/hDGCTwd9uxedRVo=";
 
   runtimeInputs = [];
 
diff --git a/apps/pin-inputs/package-lock.json b/apps/pin-inputs/package-lock.json
index 0b283ca9..70b0e445 100644
--- a/apps/pin-inputs/package-lock.json
+++ b/apps/pin-inputs/package-lock.json
@@ -8,7 +8,7 @@
             "name": "pin-inputs",
             "version": "0.0.0",
             "dependencies": {
-                "@types/node": "22.14.0",
+                "@types/node": "22.14.1",
                 "esbuild": "0.25.2",
                 "eslint": "9.24.0",
                 "jiti": "2.4.2",
@@ -438,9 +438,9 @@
             }
         },
         "node_modules/@eslint-community/eslint-utils": {
-            "version": "4.5.1",
-            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
-            "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+            "version": "4.6.0",
+            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz",
+            "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==",
             "license": "MIT",
             "dependencies": {
                 "eslint-visitor-keys": "^3.4.3"
@@ -651,9 +651,9 @@
             "license": "MIT"
         },
         "node_modules/@types/node": {
-            "version": "22.14.0",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz",
-            "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
+            "version": "22.14.1",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz",
+            "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==",
             "license": "MIT",
             "dependencies": {
                 "undici-types": "~6.21.0"
diff --git a/apps/pin-inputs/package.json b/apps/pin-inputs/package.json
index 9ddb7623..902a7fb4 100644
--- a/apps/pin-inputs/package.json
+++ b/apps/pin-inputs/package.json
@@ -7,7 +7,7 @@
         "build": "node_ver=$(node -v); esbuild src/app.ts --bundle --platform=node --target=\"node${node_ver:1:2}\" --outfile=out/bin/app.cjs"
     },
     "dependencies": {
-        "@types/node": "22.14.0",
+        "@types/node": "22.14.1",
         "esbuild": "0.25.2",
         "eslint": "9.24.0",
         "jiti": "2.4.2",
diff --git a/apps/update-sources/default.nix b/apps/update-sources/default.nix
index d4d6779f..f42a24a9 100644
--- a/apps/update-sources/default.nix
+++ b/apps/update-sources/default.nix
@@ -12,7 +12,7 @@
 }:
 buildApp {
   src = ./.;
-  npmDepsHash = "sha256-jbw7p911UiIN6o7PrsnOuwoIshGjGRSx9DReDagrhfQ=";
+  npmDepsHash = "sha256-QtKNapnC9TypI16X7RsVyVqxUwzzRxFMEZ2zXbRNrN4=";
 
   runtimeInputs = [
     curl
diff --git a/apps/update-sources/package-lock.json b/apps/update-sources/package-lock.json
index 328bea11..f77128b9 100644
--- a/apps/update-sources/package-lock.json
+++ b/apps/update-sources/package-lock.json
@@ -8,7 +8,7 @@
             "name": "update-sources",
             "version": "0.0.0",
             "dependencies": {
-                "@types/node": "22.14.0",
+                "@types/node": "22.14.1",
                 "esbuild": "0.25.2",
                 "eslint": "9.24.0",
                 "jiti": "2.4.2",
@@ -438,9 +438,9 @@
             }
         },
         "node_modules/@eslint-community/eslint-utils": {
-            "version": "4.5.1",
-            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
-            "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+            "version": "4.6.0",
+            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz",
+            "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==",
             "license": "MIT",
             "dependencies": {
                 "eslint-visitor-keys": "^3.4.3"
@@ -651,9 +651,9 @@
             "license": "MIT"
         },
         "node_modules/@types/node": {
-            "version": "22.14.0",
-            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.0.tgz",
-            "integrity": "sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==",
+            "version": "22.14.1",
+            "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz",
+            "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==",
             "license": "MIT",
             "dependencies": {
                 "undici-types": "~6.21.0"
diff --git a/apps/update-sources/package.json b/apps/update-sources/package.json
index e97bc4df..567650cd 100644
--- a/apps/update-sources/package.json
+++ b/apps/update-sources/package.json
@@ -7,7 +7,7 @@
         "build": "node_ver=$(node -v); esbuild src/app.ts --bundle --platform=node --target=\"node${node_ver:1:2}\" --outfile=out/bin/app.cjs"
     },
     "dependencies": {
-        "@types/node": "22.14.0",
+        "@types/node": "22.14.1",
         "esbuild": "0.25.2",
         "eslint": "9.24.0",
         "jiti": "2.4.2",
diff --git a/configurations/nos/modules/docker/media/jellystat/images/jellystat.nix b/configurations/nos/modules/docker/media/jellystat/images/jellystat.nix
index b3446767..813b8d5b 100644
--- a/configurations/nos/modules/docker/media/jellystat/images/jellystat.nix
+++ b/configurations/nos/modules/docker/media/jellystat/images/jellystat.nix
@@ -1,8 +1,8 @@
 pkgs:
 pkgs.dockerTools.pullImage rec {
   imageName = "cyfershepard/jellystat";
-  imageDigest = "sha256:655642855f67cf810a76802afc13987ed88571a9ce865ad28ba7a09ad9bb568f";
-  hash = "sha256-TaPJDNtSzwMpompRLr5oP2zk5yUbJS1f2Vxlbwlfv00=";
+  imageDigest = "sha256:3cb35f261ae2581e90c64e00a5a310247cd886832e7ccd71f79a6205963de44e";
+  hash = "sha256-Tah5gZEgIiLHrr0gEqHT67uj9sCFss/QnZcHWpyMdTQ=";
   finalImageName = imageName;
   finalImageTag = "latest";
 }
diff --git a/configurations/nos/modules/docker/media/radarr/images/radarr.nix b/configurations/nos/modules/docker/media/radarr/images/radarr.nix
index 19ac364e..6e2f3164 100644
--- a/configurations/nos/modules/docker/media/radarr/images/radarr.nix
+++ b/configurations/nos/modules/docker/media/radarr/images/radarr.nix
@@ -1,8 +1,8 @@
 pkgs:
 pkgs.dockerTools.pullImage rec {
   imageName = "ghcr.io/linuxserver/radarr";
-  imageDigest = "sha256:fe049905ecdfaedf6f37698a3974261c1ef7e5bb165bed6c6d9616c7b9002a88";
-  hash = "sha256-LnyHLy+LO4d/gXFT+adCDlyXtvyCf0pX8ky+K+p6xic=";
+  imageDigest = "sha256:5ad8df1b0dc0bb0c2232a9278b85c3c230d82184415f83238b5969da8dc6a942";
+  hash = "sha256-9zF9IXm4lSh25W7iI8B4O+NoRpUVhWL5PaSa1MGhdgw=";
   finalImageName = imageName;
   finalImageTag = "latest";
 }
diff --git a/configurations/nos/modules/docker/media/sonarr/images/sonarr.nix b/configurations/nos/modules/docker/media/sonarr/images/sonarr.nix
index 74fbddc2..fc549535 100644
--- a/configurations/nos/modules/docker/media/sonarr/images/sonarr.nix
+++ b/configurations/nos/modules/docker/media/sonarr/images/sonarr.nix
@@ -1,8 +1,8 @@
 pkgs:
 pkgs.dockerTools.pullImage rec {
   imageName = "ghcr.io/linuxserver/sonarr";
-  imageDigest = "sha256:7342ef32dd9cd6d13638765cfb8034edd4c80b0584f427159fd7f5ddeef5399d";
-  hash = "sha256-BO/g6heudVKeIj/evjnFzFw2vyLaKZs6DMYGgdkMUtI=";
+  imageDigest = "sha256:5c6e66c36fd0afe1323b3478b2289b5bff6e9ff17ee2c315feee29316ddb9140";
+  hash = "sha256-3V7f1SWxUFFZtwFtq61wCLaCw5ehBoUmk044/mHqL6A=";
   finalImageName = imageName;
   finalImageTag = "latest";
 }
diff --git a/configurations/nos/modules/docker/nextcloud/images/nextcloud.nix b/configurations/nos/modules/docker/nextcloud/images/nextcloud.nix
index ce04b3e4..1ecf2f30 100644
--- a/configurations/nos/modules/docker/nextcloud/images/nextcloud.nix
+++ b/configurations/nos/modules/docker/nextcloud/images/nextcloud.nix
@@ -1,8 +1,8 @@
 pkgs:
 pkgs.dockerTools.pullImage rec {
   imageName = "nextcloud";
-  imageDigest = "sha256:45472bf7b3bc012f5a20a5ea2cc88636c6d6728ec4fed1b880b7198f36cf23f6";
-  hash = "sha256-NJSsKlazRjYhV6lUzs28DwunGUZHZbkzaNe1BS3ifmg=";
+  imageDigest = "sha256:dcff0b12c4b301ca85074068b262cde17888170cb7f779397e9ee07adaf0aa45";
+  hash = "sha256-pX85lZ+smzInK2fmLohrHznjECI3nSoxj/sAvggFW3w=";
   finalImageName = imageName;
   finalImageTag = "fpm";
 }
diff --git a/flake.lock b/flake.lock
index 8bac7e39..e089ec36 100644
--- a/flake.lock
+++ b/flake.lock
@@ -172,11 +172,11 @@
     "custom-sidebar-src": {
       "flake": false,
       "locked": {
-        "lastModified": 1744145654,
-        "narHash": "sha256-I+1MplrzlbLz+R1vXSq8ja5uanlRufHjIAW1byj/1P4=",
+        "lastModified": 1744550492,
+        "narHash": "sha256-m2F8rI8MDjwB5qdfSWUC7CouU9diiaJfGGOOux5jF78=",
         "owner": "elchininet",
         "repo": "custom-sidebar",
-        "rev": "92e8339321e61c4ee3a0e5628ccb6e80db152320",
+        "rev": "eb4b387e038e66047072e9cdb53a8f7197bc2599",
         "type": "github"
       },
       "original": {
@@ -461,11 +461,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1744223888,
-        "narHash": "sha256-reYpe0J1J+wH34JFs7KKp0G5nP7+XSQ5z0ZLFJcfJr8=",
+        "lastModified": 1744498625,
+        "narHash": "sha256-pL52uCt9CUoTTmysGG91c2FeU7XUvpB7Cep6yon2vDk=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "79461936709b12e17adb9c91dd02d1c66d577f09",
+        "rev": "db56335ca8942d86f2200664acdbd5b9212b26ad",
         "type": "github"
       },
       "original": {
@@ -542,11 +542,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1743905069,
-        "narHash": "sha256-XrZmg+aXDPMWscVfKjArwgjyo9Wtf8Kz1NmhtEOsCL0=",
+        "lastModified": 1744528518,
+        "narHash": "sha256-F3upSTM0XntGzO6VajVFLEEAJUHEKD4tUd7psn0+T0s=",
         "owner": "horriblename",
         "repo": "hyprgrass",
-        "rev": "9cf17688ca7346f38d735a7e47339f8a1d895d86",
+        "rev": "5106f7e6857935aed04f579752095fdd2df4d3d1",
         "type": "github"
       },
       "original": {
@@ -577,11 +577,11 @@
         "xdph": "xdph"
       },
       "locked": {
-        "lastModified": 1744289664,
-        "narHash": "sha256-mcegUAWyi9AqbXTTASP5YQJmyGqQ/kpjnrxUbu9vsFU=",
+        "lastModified": 1744559780,
+        "narHash": "sha256-2bv6m1urUx6LN2Ha2YUk44Sp6R5Ud2Jv9bKLDAm3xyE=",
         "owner": "hyprwm",
         "repo": "Hyprland",
-        "rev": "d775686380c348efe3a2044a5ca8626505249e38",
+        "rev": "f4e19d3f1e27b4cf1236e93d767f9f6e916730ea",
         "type": "github"
       },
       "original": {
@@ -837,11 +837,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1744270169,
-        "narHash": "sha256-yV6OhBUj3Ag1l9gdf7eObkAoli35SUxDtFvC8JbsVrk=",
+        "lastModified": 1744436521,
+        "narHash": "sha256-3Q3+H8YeuRRGXZqL0FgWAcPg2bX416M6NX/VpLGRw+c=",
         "owner": "Jovian-Experiments",
         "repo": "Jovian-NixOS",
-        "rev": "10d3614023e2fb15e5e7089235e9958b9aa71a6c",
+        "rev": "1dd888cc60079910fba27eb43b959b633e3b466c",
         "type": "github"
       },
       "original": {
@@ -884,11 +884,11 @@
         "nixpkgs-lib": "nixpkgs-lib"
       },
       "locked": {
-        "lastModified": 1743941589,
-        "narHash": "sha256-NLw25ZJ7SfQAhoDUtaRb6WjQNPgOWcka+svA0VZQLII=",
+        "lastModified": 1744546429,
+        "narHash": "sha256-+PnkoiZU4f8oEEkC7Px7+rjC39xCYDEBl+JDhTgOeUM=",
         "owner": "nix-community",
         "repo": "lib-aggregate",
-        "rev": "fbbdbadeacb7c6fb67f90591595accc9c19f221f",
+        "rev": "bd0229d5b4b6b317983bbf04c93f2fdb2bd192b2",
         "type": "github"
       },
       "original": {
@@ -916,11 +916,11 @@
     "material-symbols-src": {
       "flake": false,
       "locked": {
-        "lastModified": 1742055168,
-        "narHash": "sha256-SdBTFjvs6/1vG1DHK7zqqWqZDrQ5++nLlVdrDznb+bc=",
+        "lastModified": 1744365232,
+        "narHash": "sha256-xHNliEAR9gMRKC0zALklh8OodHsayI8iI5j1ekLhs00=",
         "owner": "beecho01",
         "repo": "material-symbols",
-        "rev": "5c209b25151271a01ab73d02bda0ed4709c681eb",
+        "rev": "1182e26a614454b1c713a353c7c504913b7ce7f6",
         "type": "github"
       },
       "original": {
@@ -1085,16 +1085,16 @@
         ]
       },
       "locked": {
-        "lastModified": 1733815740,
-        "narHash": "sha256-63i7TgirD3FiJM1z8ZuOOcXWj4ZhgK357NHmf90WNig=",
+        "lastModified": 1744371964,
+        "narHash": "sha256-QuSt8PsB1huFQVXeSASfbXX0r5hmEFLNgYX4dpKewWs=",
         "owner": "nix-community",
         "repo": "nix-eval-jobs",
-        "rev": "8e82a79fe9329f3be4836ad45d4edf2383e7723a",
+        "rev": "e376e07271dd405d5427e2dd4a29864fb5347f34",
         "type": "github"
       },
       "original": {
         "owner": "nix-community",
-        "ref": "v2.25.0",
+        "ref": "v2.28.1",
         "repo": "nix-eval-jobs",
         "type": "github"
       }
@@ -1112,11 +1112,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1744182287,
-        "narHash": "sha256-o9O4KA7R/evL/KT7UsdKHTT+em+BvnxuGa0vn9U3U60=",
+        "lastModified": 1744547774,
+        "narHash": "sha256-0xMZH1sDCoQxLe385OpVwkIW0xwl4KYGmjM++Y4uTRc=",
         "owner": "Mic92",
         "repo": "nix-fast-build",
-        "rev": "93b318c24112dd435a265ecc6bf09401e63ade63",
+        "rev": "1556d8c533d8fee16ee7c46aa7092ef18d8b39ae",
         "type": "github"
       },
       "original": {
@@ -1161,11 +1161,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1744100164,
-        "narHash": "sha256-I1275vcG9SFPPTXI4ksJcjhHvE9iRTvmIO7Ky0cbFZg=",
+        "lastModified": 1744524344,
+        "narHash": "sha256-n61Xx2svmzqRyfoQc9wDWCyBrWx1MvFGDYIXkQCx2vs=",
         "owner": "fufexan",
         "repo": "nix-gaming",
-        "rev": "abc089ceb741aa5e05f6064a2246a46a2b4c01a5",
+        "rev": "3be2c40717a973af17228d2dd14de0dbd6b91a6d",
         "type": "github"
       },
       "original": {
@@ -1201,11 +1201,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1743911143,
-        "narHash": "sha256-4j4JPwr0TXHH4ZyorXN5yIcmqIQr0WYacsuPA4ktONo=",
+        "lastModified": 1744518957,
+        "narHash": "sha256-RLBSWQfTL0v+7uyskC5kP6slLK1jvIuhaAh8QvB75m4=",
         "owner": "Mic92",
         "repo": "nix-index-database",
-        "rev": "a36f6a7148aec2c77d78e4466215cceb2f5f4bfb",
+        "rev": "4fc9ea78c962904f4ea11046f3db37c62e8a02fd",
         "type": "github"
       },
       "original": {
@@ -1241,6 +1241,32 @@
         "type": "github"
       }
     },
+    "nix-serve-ng": {
+      "inputs": {
+        "flake-compat": [
+          "flake-compat"
+        ],
+        "nixpkgs": [
+          "nixpkgs"
+        ],
+        "utils": [
+          "flake-utils"
+        ]
+      },
+      "locked": {
+        "lastModified": 1744237690,
+        "narHash": "sha256-DEEAPq5whEQv4Pt5JjBWd2YN4B4cr+RXBzp7mTcvZfU=",
+        "owner": "aristanetworks",
+        "repo": "nix-serve-ng",
+        "rev": "101b4a552f3651f5ad8ac8185c6d9c0159e543b9",
+        "type": "github"
+      },
+      "original": {
+        "owner": "aristanetworks",
+        "repo": "nix-serve-ng",
+        "type": "github"
+      }
+    },
     "nixcord": {
       "inputs": {
         "flake-compat": [
@@ -1257,11 +1283,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1743833482,
-        "narHash": "sha256-tUV7MhS/JFOEp3JQxiyvo8K3aS5zP5jcF/Buk57yWDo=",
+        "lastModified": 1744308772,
+        "narHash": "sha256-gUOclfwgw/bSo3VMNmHrNXzIpaOgh1Yq9a3D3Dj/wgM=",
         "owner": "kaylorben",
         "repo": "nixcord",
-        "rev": "2903d897d5939324a758bd3f2cee1fbcb118b5d1",
+        "rev": "76c3b99646d12437ec7183939eca911549e4d18f",
         "type": "github"
       },
       "original": {
@@ -1284,11 +1310,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1744207805,
-        "narHash": "sha256-2LENrWoDmDH151EQdvbLsmC1RLBWo3bulnvsry6vs+Q=",
+        "lastModified": 1744423808,
+        "narHash": "sha256-DiivRNDj39u86uUilkmbgbx2c1NqWVQ3fxw6fFfVO14=",
         "owner": "nix-community",
         "repo": "nixd",
-        "rev": "da336c8f60b7000db4dddb3db2639bbb7f286b0e",
+        "rev": "3aa27fde1edcf7b126c70a62aad05d120209363c",
         "type": "github"
       },
       "original": {
@@ -1322,11 +1348,11 @@
     },
     "nixpkgs": {
       "locked": {
-        "lastModified": 1744098102,
-        "narHash": "sha256-tzCdyIJj9AjysC3OuKA+tMD/kDEDAF9mICPDU7ix0JA=",
+        "lastModified": 1744463964,
+        "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "c8cd81426f45942bb2906d5ed2fe21d2f19d95b7",
+        "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650",
         "type": "github"
       },
       "original": {
@@ -1370,11 +1396,11 @@
     },
     "nixpkgs-lib": {
       "locked": {
-        "lastModified": 1743901752,
-        "narHash": "sha256-WKv9xikcdKm0VWOnhttJ6dAxorQJDjJCfIsjrP00ip4=",
+        "lastModified": 1744511788,
+        "narHash": "sha256-5PVswSsunWhzi6mBwOvuCCUBK+ggcB/idSWCaXvVvr8=",
         "owner": "nix-community",
         "repo": "nixpkgs.lib",
-        "rev": "2bb0af21f02e8c61a5dded3832b92db47d6a0411",
+        "rev": "022a1e186f42079dba4f00376697158e068abd79",
         "type": "github"
       },
       "original": {
@@ -1602,6 +1628,7 @@
         "nix-github-actions": "nix-github-actions",
         "nix-index-db": "nix-index-db",
         "nix-on-droid": "nix-on-droid",
+        "nix-serve-ng": "nix-serve-ng",
         "nixcord": "nixcord",
         "nixd": "nixd",
         "nixos-jellyfin": "nixos-jellyfin",
@@ -1710,11 +1737,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1744103455,
-        "narHash": "sha256-SR6+qjkPjGQG+8eM4dCcVtss8r9bre/LAxFMPJpaZeU=",
+        "lastModified": 1744518500,
+        "narHash": "sha256-lv52pnfiRGp5+xkZEgWr56DWiRgkMFXpiGba3eJ3krE=",
         "owner": "Mic92",
         "repo": "sops-nix",
-        "rev": "69d5a5a4635c27dae5a742f36108beccc506c1ba",
+        "rev": "7e147a1ae90f0d4a374938cdc3df3cdaecb9d388",
         "type": "github"
       },
       "original": {
@@ -1726,11 +1753,11 @@
     "spotifyplus-src": {
       "flake": false,
       "locked": {
-        "lastModified": 1744035688,
-        "narHash": "sha256-y56Y6u2efw/OwM9Cn/o32nl1vEvWWoU8jAgiMUfHTAw=",
+        "lastModified": 1744475120,
+        "narHash": "sha256-nXnAdt4uBeoBY3w+6lVSmanjZ6KnVR3yoIA9vMXXJX8=",
         "owner": "thlucas1",
         "repo": "homeassistantcomponent_spotifyplus",
-        "rev": "f8e65f272d3c17d332e30a55a5bd8d63c09d0285",
+        "rev": "70fa77270835fb4b998c411b839e72764d3f9e7b",
         "type": "github"
       },
       "original": {
@@ -1825,11 +1852,11 @@
     "tuya-local-src": {
       "flake": false,
       "locked": {
-        "lastModified": 1744282247,
-        "narHash": "sha256-PFNqNeip6rWJG9q2ABekBBwUFmvosr1NjokE0mtxKWo=",
+        "lastModified": 1744526040,
+        "narHash": "sha256-9IC6ZQCa9TNZpsnNw9rhpHuarbegd3w1UQDe3Bi8xPA=",
         "owner": "make-all",
         "repo": "tuya-local",
-        "rev": "7f0ec4821942195c9fcbaa11d6e89f5369ee7875",
+        "rev": "2d3954b9591470d16aad864e4818e5bee169205a",
         "type": "github"
       },
       "original": {
@@ -1857,11 +1884,11 @@
     "vimplugin-roslyn-nvim-src": {
       "flake": false,
       "locked": {
-        "lastModified": 1744134351,
-        "narHash": "sha256-VQYHRD3++0+OU7Eyrfif+k9T+F1vvPv0cSJ9XZBoUtE=",
+        "lastModified": 1744472115,
+        "narHash": "sha256-wYbDdjnFQM/MoXwX7b2vm3jUlO61Pb/31h4TnkksE60=",
         "owner": "seblj",
         "repo": "roslyn.nvim",
-        "rev": "09541daaefaa61a422a4ae979dcc8d1b5cd37e42",
+        "rev": "f64609e4ab21a4cc28af2f526974c961d6adacca",
         "type": "github"
       },
       "original": {
diff --git a/flake.nix b/flake.nix
index e235e407..645538b5 100644
--- a/flake.nix
+++ b/flake.nix
@@ -277,7 +277,7 @@
         treefmt-nix.follows = "treefmt-nix";
       };
       owner = "nix-community";
-      ref = "v2.25.0";
+      ref = "v2.28.1";
       repo = "nix-eval-jobs";
       type = "github";
     };
@@ -321,6 +321,16 @@
       repo = "nix-on-droid";
       type = "github";
     };
+    nix-serve-ng = {
+      inputs = {
+        flake-compat.follows = "flake-compat";
+        nixpkgs.follows = "nixpkgs";
+        utils.follows = "flake-utils";
+      };
+      owner = "aristanetworks";
+      repo = "nix-serve-ng";
+      type = "github";
+    };
     nixcord = {
       inputs = {
         flake-compat.follows = "flake-compat";
diff --git a/inputs/default.nix b/inputs/default.nix
index e30f3dd5..9db4735d 100644
--- a/inputs/default.nix
+++ b/inputs/default.nix
@@ -41,6 +41,13 @@ let
   };
 
   nixTools = {
+    nix-serve-ng = mkInput {
+      owner = "aristanetworks";
+      repo = "nix-serve-ng";
+
+      inputs.utils.follows = "flake-utils";
+    };
+
     nix-fast-build = mkInput {
       owner = "Mic92";
       repo = "nix-fast-build";
@@ -49,7 +56,7 @@ let
     nix-eval-jobs = mkInput {
       owner = "nix-community";
       repo = "nix-eval-jobs";
-      ref = "v2.25.0";
+      ref = "v2.28.1";
     };
 
     nix-index-db = mkInput {
diff --git a/lib/flake/default.nix b/lib/flake/default.nix
index 0d4216fd..d11bf381 100644
--- a/lib/flake/default.nix
+++ b/lib/flake/default.nix
@@ -12,6 +12,9 @@ in rec {
     import nixpkgs {
       inherit system;
       overlays = nixpkgs.lib.unique ([
+          # Needed for nix-version overlay
+          inputs.nix-serve-ng.overlays.default
+
           (inputs.self.overlays.nix-version {inherit nix;})
           inputs.self.overlays.misc-fixes
           inputs.self.overlays.appsPackages
diff --git a/modules/ags/config/default.nix b/modules/ags/config/default.nix
index 2861eac8..45c40905 100644
--- a/modules/ags/config/default.nix
+++ b/modules/ags/config/default.nix
@@ -1,3 +1,3 @@
 {
-  npmDepsHash = "sha256-l9WlbXC4IpYoYI+y8ZrMJLUL2uOKrryJmW066vLv+6M=";
+  npmDepsHash = "sha256-1Tda6a4ktJdZmjuFCziaDpoaXMAUah7qLC8Pv8jIRGw=";
 }
diff --git a/modules/ags/config/package-lock.json b/modules/ags/config/package-lock.json
index 746bc11f..7e106f3e 100644
--- a/modules/ags/config/package-lock.json
+++ b/modules/ags/config/package-lock.json
@@ -33,9 +33,9 @@
             }
         },
         "node_modules/@eslint-community/eslint-utils": {
-            "version": "4.5.1",
-            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.5.1.tgz",
-            "integrity": "sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==",
+            "version": "4.6.0",
+            "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.0.tgz",
+            "integrity": "sha512-WhCn7Z7TauhBtmzhvKpoQs0Wwb/kBcy4CwpuI0/eEIr2Lx2auxmulAzLr91wVZJaz47iUZdkXOK7WlAfxGKCnA==",
             "license": "MIT",
             "dependencies": {
                 "eslint-visitor-keys": "^3.4.3"
diff --git a/overlays/nix-version/default.nix b/overlays/nix-version/default.nix
index 9d0a044f..6ec8bc03 100644
--- a/overlays/nix-version/default.nix
+++ b/overlays/nix-version/default.nix
@@ -1,11 +1,19 @@
 self: {nix ? null}: final: prev: let
-  inherit (builtins) mapAttrs;
+  inherit (builtins) functionArgs mapAttrs replaceStrings;
+  inherit (final.lib) generateSplicesForMkScope head splitString versions;
   inherit (self.inputs) nix-eval-jobs nix-fast-build;
 
   nullCheck = n: v:
     if nix == null
     then prev.${n}
     else v;
+
+  # This is for packages from flakes that don't offer overlays
+  overrideAll = pkg: extraArgs: let
+    pkgFile = head (splitString [":"] pkg.meta.position);
+    args = functionArgs (import pkgFile);
+  in
+    pkg.override (mapAttrs (n: v: final.${n} or v) (args // extraArgs));
 in
   mapAttrs nullCheck {
     inherit nix;
@@ -22,11 +30,27 @@ in
       '';
     });
 
-    nix-fast-build = nix-fast-build.packages.${final.system}.nix-fast-build.override {
-      inherit (final) nix-output-monitor;
+    nix-eval-jobs =
+      (overrideAll nix-eval-jobs.packages.${final.system}.default {
+        srcDir = null;
 
-      nix-eval-jobs = nix-eval-jobs.packages.${final.system}.default.override {
-        inherit nix;
-      };
-    };
+        nixComponents = let
+          generateSplicesForNixComponents = nixComponentsAttributeName:
+            generateSplicesForMkScope [
+              "nixVersions"
+              nixComponentsAttributeName
+            ];
+        in
+          final.nixDependencies.callPackage "${final.path}/pkgs/tools/package-management/nix/modular/packages.nix" {
+            inherit (nix) src version;
+            inherit (nix.meta) maintainers;
+
+            otherSplices = generateSplicesForNixComponents "nixComponents_${
+              replaceStrings ["."] ["_"] (versions.majorMinor nix.version)
+            }";
+          };
+      })
+      // {inherit nix;};
+
+    nix-fast-build = overrideAll nix-fast-build.packages.${final.system}.nix-fast-build {};
   }
diff --git a/scopedPackages/lovelace-components/custom-sidebar/default.nix b/scopedPackages/lovelace-components/custom-sidebar/default.nix
index cc3c342b..c9d3c23b 100644
--- a/scopedPackages/lovelace-components/custom-sidebar/default.nix
+++ b/scopedPackages/lovelace-components/custom-sidebar/default.nix
@@ -35,7 +35,7 @@ in
 
     pnpmDeps = pnpm.fetchDeps {
       inherit (finalAttrs) pname version src;
-      hash = "sha256-izGzoCYMzF3hSIT0rlyw5pYHnZQXYvM251gH1Yz3nHM=";
+      hash = "sha256-Nuig5vUC0UBic2MK2MNac0iD6N1ZaHZCuolQKVCVWDU=";
     };
 
     passthru.updateScript = concatTextFile {