I am having the same issue now. Worked fine until I did a zypper dup (Update OS)
insync start --no-daemon gives the same error as JZ_H. insync start --no-daemon --headless works OK.
Here is what I think is the relevant strace entries:
connect(7, {sa_family=AF_UNIX, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0
getpeername(7, {sa_family=AF_UNIX, sun_path=@"/tmp/.X11-unix/X0"}, [124->20]) = 0
uname({sysname=“Linux”, nodename=“motop.codejunkie.net”, …}) = 0
access("/tmp/xauth-1001-_0", R_OK) = 0
openat(AT_FDCWD, “/tmp/xauth-1001-_0”, O_RDONLY) = 8
fstat(8, {st_mode=S_IFREG|0600, st_size=50, …}) = 0
read(8, “\1\0\0\5motop\0\0010\0\22MIT-MAGIC-COOKIE-1”…, 4096) = 50
read(8, “”, 4096) = 0
close(8) = 0
fcntl(7, F_GETFL) = 0x2 (flags O_RDWR)
fcntl(7, F_SETFL, O_RDWR|O_NONBLOCK) = 0
fcntl(7, F_SETFD, FD_CLOEXEC) = 0
poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
writev(7, [{iov_base=“l\0\v\0\0\0\0\0\0\0\0\0”, iov_len=12}, {iov_base="", iov_len=0}], 2) = 12
recvfrom(7, 0x55b31c23e800, 8, 0, NULL, NULL) = -1 EAGAIN (Resource temporarily unavailable)
poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN|POLLHUP}])
recvfrom(7, “\0\26\v\0\0\0\6\0”, 8, 0, NULL, NULL) = 8
recvfrom(7, “No protocol specified\n\0\0”, 24, 0, NULL, NULL) = 24
write(2, “No protocol specified\n”, 22No protocol specified
) = 22
shutdown(7, SHUT_RDWR) = 0
close(7) = 0
write(2, “insync.py: cannot connect to X s”…, 41insync.py: cannot connect to X server :0
) = 41
write(6, “@”, 1) = 1
close(6) = 0
close(5) = 0
rt_sigaction(SIGCHLD, NULL, {sa_handler=0x7f60090ec950, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO|SA_NOCLDSTOP, sa_restorer=0x7f600fb27270}, 8) = 0
rt_sigaction(SIGCHLD, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f600fb27270}, NULL, 8) = 0
exit_group(1) = ?
+++ exited with 1 +++
sgonzalez@motop:~> ls -l /tmp/.X11-unix/X0
srwxrwxrwx 1 root root 0 Feb 6 16:20 /tmp/.X11-unix/X0