Interlisp / medley

The main repo for the Medley Interlisp project. Wiki, Issues are here. Other repositories include maiko (the VM implementation) and Interlisp.github.io (web site sources)
https://Interlisp.org
MIT License
376 stars 19 forks source link

Add linux support for --vnc flag in medley script #1825

Closed fghalasz closed 2 months ago

fghalasz commented 2 months ago

Previously --vnc flag in medley script worked only on WSL.

With this PR, the --vnc flag works on (non-WSL) linux platforms - any linux distro that support the TigerVNC server and viewer.

To use this feature you must first install both the TigerVNC server and TigerVNC client on linux. On Debian-based distros (e.g., Ubuntu and Mint): sudo apt install tigervnc-standalone-server tigervnc-viewer

pamoroso commented 2 months ago

From the Linux shell I updated my local repos with git pull and checked out the PR with gh pr checkout 1825 but got this error because of an unresolved 2021 GitHub CLI issue:

paolo@lispmachine:~/medley/medley$ gh pr checkout 1825
remote: Enumerating objects: 28, done.
remote: Counting objects: 100% (20/20), done.
remote: Compressing objects: 100% (1/1), done.
remote: Total 10 (delta 9), reused 10 (delta 9), pack-reused 0 (from 0)
Unpacking objects: 100% (10/10), 2.91 KiB | 426.00 KiB/s, done.
From https://github.com/Interlisp/medley
 * [new branch]      fgh_vnclinux -> origin/fgh_vnclinux
fatal: cannot set up tracking information; starting point 'origin/fgh_vnclinux' is not a branch
failed to run git: exit status 128

The suggested workaround worked and I was able to check out the PR. Now I need to figure how to start the TigerVNC, I'll let you know how Medley works with VNC.

pamoroso commented 2 months ago

I'm very happy to report VNC Medley works flawlessly on my Linux Mint system (and doesn't lock me out of my account 😀).

With VNC I can now type all the characters by pressing the corresponding keys on my Italian keyboard, the same way as with Medley Online. But, weirdly, there's still a character I can't type neither with Online nor VNC: <. Typing > works fine though.

The startup time of VNC Medley is slightly longer than without VNC, i.e. one second or so. On the same Linux system, rendering on VNC seems as fast as SDL which is faster than X11. I assess the rendering performance with my benchmark of opening DInfo and paying attention to how long it takes to draw the TOC tree.

Here's what VNC Medley looks like on my Linux when started with medley -a -e -n -v + &:

vnc-medley-linux

VNC is now a simple and practical workaround for users with non English keyboards.

pamoroso commented 2 months ago

Executing medley -a -e -n -s 1920x1080 -v + & and turning on TigerVNC's full screen option I can make the Medley desktop fit the full screen area of my 1080p monitor, with no visible title bar, black bands, or other Linux user interface element.

vnc-medley-linux-1080p

pamoroso commented 2 months ago

The connection info dialog of the TigerVNC client.

tigervnc-connection-info

pamoroso commented 2 months ago

VNC on Linux works fine with Maiko's -fg and -bg color options:

medley-vnc-linux-color