Running medley on a VM on an M1 mac

18 views
Skip to first unread message

Tim Bradshaw

unread,
Aug 10, 2022, 7:25:06 AM8/10/22
to Interlisp (Xerox Lisp environment)
I've finally got to the point where I want to try running Medley. I'm trying to run it on an arm64 Ubuntu instance (a VM) displaying back to the mac that's hosting the VM. Don't ask why I'm not installing it on the mac: there are reasons. It looks like it's a pain to get an Ubuntu *desktop* arm64 version: there is no precanned one, and also the *only* graphical app I want to use on this thing is Medley.

So I thought I would try the docker approach (I want to learn something about docker anyway), and this makes pretty good working noises: I installed Docker on the Ubuntu machine and then just did the incantation mentioned in the documentation with the sole exception that I didn't set DISPLAY as the machine is headless.

I'm then trying to use the built-in (I think) VNC client on the mac, by simply telling the Finder to go to vnc://<ip-address>/

This starts to work, but then goes nowhere. I get a password prompt from the mac VNC client, I give it an empty password and then it just hangs saying 'connecting'. In the mean time Docker says

10/08/22 11:13:53 Got connection from client 10.211.55.2
10/08/22 11:13:53 Using protocol version 3.3
10/08/22 11:16:11 rfbProcessClientInitMessage: client gone
10/08/22 11:16:11 Client 10.211.55.2 gone
10/08/22 11:16:11 Statistics:
10/08/22 11:16:11 framebuffer updates 0, rectangles 0, bytes 0

10/08/22 11:16:11 Got connection from client 10.211.55.2
10/08/22 11:16:11 Using protocol version 3.3

So it looks as if it gets a connection, gets *another* connection and then things just stall.

Does anyone know what I'm doing wrong, if it is not 'everything'.

Thank you

--tim

John Cowan

unread,
Aug 10, 2022, 9:50:05 AM8/10/22
to Tim Bradshaw, Interlisp (Xerox Lisp environment)
The obvious thing to try (and I have no idea if this will work, but it should) is to set DISPLAY to <ipaddress>:0 and run an XQuartz X11 server on your Mac.  Make sure to use xauth to authorize access to the X11 server; it's easy to forget.

--
https://Interlisp.org for more details
---
You received this message because you are subscribed to the Google Groups "Medley Interlisp Users/Interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to interlisp+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/interlisp/A7B3E388-FFB1-45A9-86F1-A5371E30206A%40tfeb.org.

Tim Bradshaw

unread,
Aug 10, 2022, 12:27:58 PM8/10/22
to John Cowan, Interlisp (Xerox Lisp environment)
I've solved it.  The mac vnc client (the thing it calls 'Screen sharing') *really* wants to do authentication, and was obviously having some kind of silent tantrum when the VNC server didn't ask for it.  So I have slightly modified the Dockerfile to create a VNC password and tell the server to do authentication.  With that, it just works.

Unfortunately this is an incompatible change, really: the Xvnc either wants authentication or it doesn't.

Of course, not having used Interlisp since I used it on an 1186 more than 30 years ago I'm now completely lost.

Not to mention I now need to understand how docker works if I want to actually persist the thing I just built.

But it does work.

--tim

Larry Masinter

unread,
Aug 10, 2022, 12:58:18 PM8/10/22
to John Cowan, Tim Bradshaw, Interlisp (Xerox Lisp environment), STEPHEN KAISLER, Bill Stumbo
I think the current documentation recommends VNC with docker, but using vnc goes through the Xvnc translation gateway. It turned out for online.interlisp.org that the browser-vnc (noVNC) than the browser-X implementation, probably because the browser doesn/t make a very good server.

The documentation is in transition from the Medley Wiki (https://github.com/Interlisp/medley/wiki) via gitbook (https://docs.interlisp.org) and various repositories of Google drive and google docs, with the idea of consolidating under a hugo-based (https://interlisp.org/hugo)

On a Mac and Windows and Linux, using X is better. For the Mac XQuartz seems to be it; it's gotten more reliable. We need to find and link in the discussion of XQuartz settings on the mac and a discussion of keyboard handling.

On Windows, there are a lot of X servers that you can run on the Windows side. If you're running WSL in Windows 11 Pro there's one built in. My Windows machine won't upgrade to 11, though, and I imagine there are others.

 I've tried several. Lately I've been liking X410 which isn't free, but works with a utility on the linux side. (socat) so the connection doesn't die when my machine goes to sleep.

I'm thinking of turning on the SaveVM-when-Idle that is part of the Online init -- i wish there was more of a ring-buffer of VMs though.




Tim Bradshaw

unread,
Aug 10, 2022, 1:04:55 PM8/10/22
to Larry Masinter, John Cowan, Interlisp (Xerox Lisp environment), STEPHEN KAISLER, Bill Stumbo
I wanted to use VNC because it's native to the mac (mac screen sharing is VNC), so all of the changes I make to anything are in the VM, which has snapshots etc.

(Curiously my very first experience with the joys of being able to snapshot entire machine states so I can't hurt myself, which I now completely rely on, was VMEM.PURE.STATE on an 1186.)

Larry Masinter

unread,
Aug 10, 2022, 1:29:50 PM8/10/22
to Tim Bradshaw, John Cowan, Interlisp (Xerox Lisp environment), STEPHEN KAISLER, Bill Stumbo
the sysouts don't care and don't even know whether the UI is being displayed using X or VNC. You should be able to start on one and -- after a LOGOUT or SYSOUT or a SAVEVM -- restart with another. 

Now it's feasible to run many instances at the same time, and so we probably should parameterize or timestamp the lisp.virtualmem file name.

With Docker on the same machine as the UI, you can use docker's mount facility to mount (part of) your local disk to pick up local init files and save things you're working on. 

(At the time, the idea you could move a SYSOUT from one machine/architecture/hardware to another was pretty novel. )


Reply all
Reply to author
Forward
0 new messages