[MacPorts] #67939: tigervnc @1.13.1: VNC session only fills bottom left quarter of window on Retina display when launched using vncviewer symlink (was: tigervnc @1.13.1: does not use full screen on Retina display)

MacPorts noreply at macports.org
Wed Aug 16 03:57:01 UTC 2023


#67939: tigervnc @1.13.1: VNC session only fills bottom left quarter of window on
Retina display when launched using vncviewer symlink
-------------------------------+------------------------
  Reporter:  martin-petermann  |      Owner:  ryandesign
      Type:  defect            |     Status:  accepted
  Priority:  Normal            |  Milestone:
 Component:  ports             |    Version:
Resolution:                    |   Keywords:
      Port:  tigervnc          |
-------------------------------+------------------------
Changes (by ryandesign):

 * status:  assigned => accepted
 * keywords:  ventura arm64 =>


Comment:

 I understand now! Running `/opt/local/bin/vncviewer` bypasses the
 Info.plist, launching the app in high-DPI mode. I can reproduce that on
 macOS Monterey x86_64.

 If you run `/Applications/MacPorts/TigerVNC
 Viewer.app/Contents/MacOS/TigerVNC Viewer` instead this problem does not
 occur.

 In MacPorts in tigervnc @1.13.1_0 and earlier, `/opt/local/bin/vncviewer`
 is a symlink to `/Applications/MacPorts/TigerVNC
 Viewer.app/Contents/MacOS/TigerVNC Viewer`. You'd think the OS would be
 smart enough to follow the symlink and realize that the executable is part
 of an application bundle and use its Info.plist when started through the
 symlink, but apparently it is not.

 As shipped from the developer, `/opt/local/bin/vncviewer` is a separate
 copy of the executable, so there would be no way for the OS to know that
 it is supposed to be part of an application bundle, aside from which
 installing two identical copies of the same executable is a waste of
 space, which is why I changed it to be a symlink in MacPorts, but I was
 not aware at the time that this would not use the Info.plist.

 The solution appears to be to change `/opt/local/bin/vncviewer` to be a
 wrapper script which executes `/Applications/MacPorts/TigerVNC
 Viewer.app/Contents/MacOS/TigerVNC Viewer`. This works for me, launching
 it in low-DPI mode. I'll commit this change shortly. If this doesn't work
 for you, please let us know and reopen the ticket!

-- 
Ticket URL: <https://trac.macports.org/ticket/67939#comment:8>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list