Nearly ready for a pull request with a focus on improving test coverage - with tests coverage up to 67% on this branch.
One issue I ran into when running this on my Ubuntu server is that same X11 error similar to this one. Seems like it's related to when you're not using an x11 display. Trying to think creatively about how to solve this. The current code on this branch just automatically adds it in if it's a linux system on the ODK CL options where I was getting an error (see lines 136-140 here). This would, however, create a new dependency on linux systems for xvfb. It's purpose is basically to create a virtual display, which is, for some reason, needed.
There's probably a few ways to address this.
Automatically
I think if xvfb was a requirement on linux, the current command would always work.
could potentially add to the conditional statement with something like capabilities("X11") returning false before it's used, but I'm not sure exactly how this behaves on an Ubuntu or other debian linux desktop.
Manually
could allow users to manually add a tag like no.x11 = TRUE to add the additional command in, put in a couple warnings / messages to inform users about reasons for failure if they try to run it without xvfb installed, or if they don't have x11 capabilities and try to run the command without the no.x11 argument.
Whatever route was taken, it would only affect Linux systems.
@rapidsurveys @ernestguevarra
Nearly ready for a pull request with a focus on improving test coverage - with tests coverage up to 67% on this branch.
One issue I ran into when running this on my Ubuntu server is that same X11 error similar to this one. Seems like it's related to when you're not using an x11 display. Trying to think creatively about how to solve this. The current code on this branch just automatically adds it in if it's a linux system on the ODK CL options where I was getting an error (see lines 136-140 here). This would, however, create a new dependency on linux systems for xvfb. It's purpose is basically to create a virtual display, which is, for some reason, needed.
There's probably a few ways to address this.
Automatically
Manually
no.x11 = TRUE
to add the additional command in, put in a couple warnings / messages to inform users about reasons for failure if they try to run it without xvfb installed, or if they don't have x11 capabilities and try to run the command without theno.x11
argument.Whatever route was taken, it would only affect Linux systems.