diff --git a/pkgs/by-name/im/immich/package.nix b/pkgs/by-name/im/immich/package.nix index 324e5b9790ba..bb1778ee207f 100644 --- a/pkgs/by-name/im/immich/package.nix +++ b/pkgs/by-name/im/immich/package.nix @@ -18,12 +18,12 @@ cacert, unzip, # runtime deps + exiftool, jellyfin-ffmpeg, # Immich depends on the jellyfin customizations, see https://github.com/NixOS/nixpkgs/issues/351943 imagemagick, libraw, libheif, vips, - perl, }: let buildNpmPackage' = buildNpmPackage.override { inherit nodejs; }; @@ -174,7 +174,7 @@ buildNpmPackage' { makeCacheWritable = true; preBuild = '' - cd node_modules/sharp + pushd node_modules/sharp mkdir node_modules ln -s ${node-addon-api} node_modules/node-addon-api @@ -183,8 +183,13 @@ buildNpmPackage' { rm -r node_modules - cd ../.. + popd rm -r node_modules/@img/sharp* + + # If exiftool-vendored.pl isn't found, exiftool is searched for on the PATH + rm -r node_modules/exiftool-vendored.* + substituteInPlace node_modules/exiftool-vendored/dist/DefaultExifToolOptions.js \ + --replace-fail "checkPerl: !(0, IsWin32_1.isWin32)()," "checkPerl: false," ''; installPhase = '' @@ -205,7 +210,7 @@ buildNpmPackage' { --set IMMICH_BUILD_DATA $out/build --set NODE_ENV production \ --suffix PATH : "${ lib.makeBinPath [ - perl + exiftool jellyfin-ffmpeg ] }"