karakeep: changing cache dir location away from nix store

This commit is contained in:
Anton Tetov
2026-03-08 19:13:09 +01:00
committed by Sandro Jäckel
parent 0f973abbd1
commit ce751b2e38
3 changed files with 25 additions and 1 deletions
+5 -1
View File
@@ -169,11 +169,15 @@ in
"karakeep-workers.service"
];
partOf = [ "karakeep.service" ];
environment = karakeepEnv;
environment = {
NEXT_CACHE_DIR = "%C/karakeep";
}
// karakeepEnv;
serviceConfig = {
ExecStart = "${cfg.package}/lib/karakeep/start-web";
User = "karakeep";
Group = "karakeep";
CacheDirectory = "karakeep";
StateDirectory = "karakeep";
EnvironmentFile = environmentFiles;
PrivateTmp = "yes";
+6
View File
@@ -80,6 +80,12 @@ stdenv.mkDerivation (finalAttrs: {
runHook postBuild
'';
preInstall = ''
# provide a environment variable to override the cache directory
# https://github.com/vercel/next.js/discussions/58864
patch -p1 -i ${./patches/cache-from-env-not-nix-store.patch}
'';
installPhase = ''
runHook preInstall
@@ -0,0 +1,14 @@
diff --git a/apps/web/.next/standalone/node_modules/next/dist/server/image-optimizer.js b/apps/web/.next/standalone/node_modules/next/dist/server/image-optimizer.js
index cba8876..c3d7c43 100644
--- a/apps/web/.next/standalone/node_modules/next/dist/server/image-optimizer.js
+++ b/apps/web/.next/standalone/node_modules/next/dist/server/image-optimizer.js
@@ -409,7 +409,8 @@ class ImageOptimizerCache {
]);
}
constructor({ distDir, nextConfig }){
- this.cacheDir = (0, _path.join)(distDir, "cache", "images");
+ const cacheDir = process.env["NEXT_CACHE_DIR"] || (0, _path.join)(distDir, "cache");
+ this.cacheDir = (0, _path.join)(cacheDir, "images");
this.nextConfig = nextConfig;
}
async get(cacheKey) {