It seems there is a bug in the Linux build of `xm8.so` with locating the `ExileXM8Key.cfg` on the disk. Using `strace` it can be seen that `xm.so` is attempting to open the file using a relative path, which is incorrect as the current working directory is `/home/steam/arma3`. Clearly the file exists as `stat` succeeds.
steam@arma:~$ strace ./start.sh 2>&1 | grep ExileXM8Key
stat64("/home/steam/arma3/@ExileServer/ExileXM8Key.cfg", {st_mode=S_IFREG|0644, st_size=81, ...}) = 0
stat64("/home/steam/arma3/@ExileServer/ExileXM8Key.cfg", {st_mode=S_IFREG|0644, st_size=81, ...}) = 0
open("ExileXM8Key.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
Please advise.
Edit: I worked around this bug by sym-linking the file in the arma3 directory:
ln -s \@ExileServer/ExileXM8Key.cfg ./
While I am at it, can I please request that xm.so be rebuilt against libcrypto 1.1 as 1.0 is quite old and most modern distributions have dropped support for it.