On Tue, Jul 18, 2023 at 5:42 PM Morgan Aldridge
<morg...@makkintosshu.com> wrote:
>
> On On 2023-07-18, Stuart Henderson <stu.li...@spacehopper.org> wrote:
> > On 2023-07-18, Morgan Aldridge <morg...@makkintosshu.com> wrote:
> > > I'm maintaining an OpenBSD X11 window manager (WM) port, but try to
> > > keep my primary workstation on -stable, so do most of my development
> > > there and test in Xephyr. I test & submit patches from an OpenBSD
> > > -current VM running under vmm(4), but since vmm(4) doesn't emulate
> > > video hardware, I haven't been run-testing there.
> > >
> > > I'm already comfortable with x11vnc under OpenBSD, plus Xephyr, but
> > > they both use an existing X display. After studying xenodm(1),
> > > Xvfb(1), x11vnc(1), and a bunch of other X(1)-related manual pages,
> > > plus tons of experimenting, the solution was actually quite simple.
> > >
> > > TL; DR
> > >
> > > I could find much on the Internet, list archives, etc., regarding this
> > > specific situation, so here's my solution for a [slow] X11 virtual
> > > display on a vmm(4) OpenBSD guest, accessible via VNC over an SSH
> > > tunnel:
> > >
> > >   doas rcctl enable xenodm
> > >   doas rcctl set xenodm flags \
> > >     "-server ':0 local /usr/X11R6/bin/Xvfb :0 -screen 1024x768x24 -shmem'"
> > >   doas rcctl start xenodm
> > >   doas pkg_add x11vnc
> > >   doas rcctl enable x11vnc
> > >   doas rcctl start x11vnc
> > >
> > > Hope someone else finds this useful down the road,
> >
> > I recommend putting x11vnc in the bin and using tigervnc if it works for
> > your configuration...
>
> Thanks! TigerVNC's x0vncserver(1) seems to work similarly to x11vnc(1)'s
> default rc.d flags when executed as follows:
>
>   x0vncserver -SecurityTypes None -localhost
>
> This doesn't require a password (WARNING!), but does require an SSH
> tunnel to access. Is certainly snappier too!
>
> Easy enough to copy /etc/rc.d/x11vnc (before uninstalling) and update
> the 'daemon' & 'daemon_flags' values as follows:
>
>   daemon="/usr/local/bin/x0vncserver"
>   daemon_flags="-SecurityTypes None -localhost"
>
> I'm pretty sure 'rc_bg=YES' & 'rc_reload=NO' would need to be retained.

Oops, x0vncserver doesn't automatically find the appropriate
.Xauthority like x11vnc's `-auth guess` does, so while it works when
run as your user and already logged in via xenodm, it doesn't actually
work correctly from rc.d as I suggested above.

I'll investigate and do some further testing, but the nice thing about
x11vnc is that it handles the xenodm login window, plus logging in and
out as various users. Naturally, this is convenient for window manager
& desktop environment testing.

Morgan

Reply via email to