Detects if it was already wrapped, so it re-wraps correctly now.
[ -n "$1" ] || { printf "Usage: wrapFactor <factor-root>" ; return; }
local root="$(realpath $1)"
local binary="''${root}/factor"
+ local wrapped="''${root}/.factor-wrapped"
+ # Remove the wrapped binary if a new VM has been compiled
+ ${lib.getBin file}/bin/file $binary |grep ELF >/dev/null && rm -f "$wrapped"
+ # Restore the factor binary if it was already wrapped
+ [ -e "$wrapped" ] && { mv "$wrapped" "$binary" ; }
wrapProgram "$binary" --prefix LD_LIBRARY_PATH : ${runtimeLibPath} \
--argv0 factor
ln -sf "''${root}/factor.image" "''${root}/.factor-wrapped.image"