Is there a way to get tightvnc to host the native display :0?

No, it is not possible with tightvnserver. Most vncservers will try to build a whole WM (=window manager), while your :0 display has, apparently, all of this.

You can check this by not starting your X server at boot, and before issuing the usual startx command, to start tightvncserver on :0. It will work then.

On the other hand, if you are keen on using display :0, you can try x11vnc, which is what I do.


Try x0vncserver. i.e. On arch:

x0vncserver -display :0 -passwordfile ~/.vnc/passwd

http://tigervnc.org/doc/x0vncserver.html

https://wiki.archlinux.org/index.php/TigerVNC