Windows - issinoho/veetee GitHub Wiki

Windows

veetee runs on 64-bit Windows 10 version 1809 or later. The download is a zip with everything it needs, including GTK 4 and libadwaita; nothing is installed and nothing is written to the registry.

Installing

  1. Download veetee-VERSION-x86_64-windows.zip from the releases page and check it against SHA256SUMS if you like (certutil -hashfile veetee-1.9.1-x86_64-windows.zip SHA256).
  2. Unzip it anywhere, for example to C:\Tools\veetee.
  3. Run bin\veetee.exe, or make a shortcut to it with the options you want, such as bin\veetee.exe --telnet vms1.

veetee.exe and vt-headless.exe are signed with the project's Certum code-signing certificate shortly after each release is published. To check a build, open bin\veetee.exe's Properties → Digital Signatures. SmartScreen may still ask before the first run of a newly signed version (More info → Run anyway) until the download has built a reputation.

What works

Feature On Windows
Emulation, fonts, colour, dual sessions Same as Linux
Local shell Command Prompt (%COMSPEC%) on a Windows pseudo console (ConPTY)
--command Run through cmd /C
--telnet veetee's own Telnet client, as on Linux
--ssh Windows' OpenSSH client (ssh.exe, an optional Windows feature) over pipes, from 1.9.1
--serial COM3 COM ports through the Windows communications API; Break sends a line break
Keyboard map Saved in %LOCALAPPDATA%\veetee\keymap.toml
vt-headless Included in bin

bin\veetee.exe --help prints every option when run from a Command Prompt.

Differences from Linux

  • Local sessions go through ConPTY. Windows' pseudo console re-draws a program's output itself, so console programs such as cmd see a Windows console rather than a raw VT420 line.
  • SSH runs over pipes from 1.9.1, so the host's output reaches veetee as sent, as it does over Telnet and serial lines. Up to 1.9.0 it went through ConPTY too, which lost 132 columns, DEC line drawing, 8-bit controls and the keypad's ENTER; take 1.9.1 if you use SSH on Windows. OpenSSH still asks for passwords, passphrases and new host keys on its console, and veetee shows those prompts and sends what you type to them until the host starts talking.
  • Over SSH the host is not told the window size. Windows' OpenSSH takes the size from a console, and over pipes it has none, so the host keeps its default (usually 80 × 24) and is not told when the window is resized. OpenVMS is unaffected: SET TERMINAL/WIDTH and the 132-column switch work as usual. On a Unix host, run resize or stty cols after resizing.
  • Host-programmed keys (DECPAK) are matched by key position using Windows virtual-key codes, which assume a US layout; on layouts such as AZERTY a programmed letter key may land elsewhere.
  • The numeric keypad reads the extended-key flag that GTK's Windows backend drops, so from 1.9.1 keypad Enter is ENTER and the keypad stays the keypad whichever way Num Lock (PF1) last went. Up to 1.9.0 every other press of PF1 turned the keypad into cursor keys (Keyboard).
  • OpenGL comes from the graphics driver. Very old drivers, remote desktop sessions and some virtual machines offer only OpenGL 1.1; veetee then cannot draw (see Troubleshooting).

How the Windows build is tested

CI builds and tests the whole workspace on Windows for every push, builds the zip, and launches it with software OpenGL to capture a screenshot of a Command Prompt session. Real graphics drivers, COM port hardware and SSH logins are not covered by CI; reports are welcome.