The executor_for_platform() function will return the linux_user_chroot backend if the linux-user-chroot binary exists in PATH.
However, depending on kernel configuration, it may not fully work. We found one case where it ran correctly, unless the --unshare-net flag was passed, when it would exit with clone: Invalid argument. On other kernels it won't run at all because it can't create a mount namespace.
Probably the best way to fix this would be to actually run linux-user-chroot during the autodetection, and test whether that works.