filebot: fix mediainfo

force filebot to use libmediainfo.so from nix
This commit is contained in:
vik
2025-07-29 10:41:57 -07:00
parent 33a8ce8caa
commit 13266e265f
+17 -1
View File
@@ -56,7 +56,23 @@ stdenv.mkDerivation (finalAttrs: {
installPhase = ''
mkdir -p $out/opt $out/bin
# Since FileBot has dependencies on relative paths between files, all required files are copied to the same location as is.
cp -r filebot.sh lib/ jar/ $out/opt/
cp -r filebot.sh jar/ $out/opt/
# Copy lib based on platform and force filebot to use libmediainfo.so from nix
local platformDir
case "${stdenv.hostPlatform.system}" in
"x86_64-linux")
platformDir="Linux-x86_64"
;;
"aarch64-linux")
platformDir="Linux-aarch64"
;;
esac
if [ -n "$platformDir" ]; then
mkdir -p "$out/opt/lib"
cp -r "lib/$platformDir" "$out/opt/lib/"
rm "$out/opt/lib/$platformDir/libmediainfo.so"
ln -s "${libmediainfo}/lib/libmediainfo.so" "$out/opt/lib/$platformDir/"
fi
# Filebot writes to $APP_DATA, which fails due to read-only filesystem. Using current user .local directory instead.
substituteInPlace $out/opt/filebot.sh \
--replace 'APP_DATA="$FILEBOT_HOME/data/$(id -u)"' 'APP_DATA=''${XDG_DATA_HOME:-$HOME/.local/share}/filebot/data' \