A minimal new SSH client for Mac OS 7/8/9
Find a file
2025-03-01 15:10:37 -05:00
libvterm@e3bf622bd2 bump libvterm 2025-02-16 16:45:30 -05:00
opentransport-libssh2@2b176f2191 include my libssh2 and mbedtls as submodules and cmake it up 2024-10-26 17:29:11 -04:00
opentransport-mbedtls@01162ec6e5 include my libssh2 and mbedtls as submodules and cmake it up 2024-10-26 17:29:11 -04:00
.gitignore pull in libvterm as a submodule and fix build issues 2025-02-16 12:09:03 -05:00
.gitmodules fix libvterm submodule 2025-02-16 16:43:48 -05:00
build-ssheven.bash make builds parallel if possible due to addition of the big libs 2024-10-26 17:29:58 -04:00
CMakeLists.txt pull in libvterm as a submodule and fix build issues 2025-02-16 12:09:03 -05:00
LICENSE init 2020-06-08 12:53:38 -04:00
README.md update readme 2025-02-16 16:53:42 -05:00
ssheven-console.c normalize some easy unicode characters via giant lookup table 2025-03-01 15:10:37 -05:00
ssheven-console.h add menu/shortcut capability to connect/disconnect/reconnect 2021-12-29 20:32:01 -05:00
ssheven-constants.r bump version 2025-02-16 17:09:01 -05:00
ssheven-debug.c fix copy/paste error in debugging messages 2021-08-03 12:05:57 -04:00
ssheven-debug.h code cleanup/rearrangement 2021-01-09 17:22:40 -05:00
ssheven-icons.r preferences dialog with color settings 2020-10-04 12:19:49 -04:00
ssheven-net.c fix whitespace 2024-10-26 18:34:56 -04:00
ssheven-net.h code cleanup/rearrangement 2021-01-09 17:22:40 -05:00
ssheven-unicode.h normalize some easy unicode characters via giant lookup table 2025-03-01 15:10:37 -05:00
ssheven.c fix title setting 2024-10-21 19:39:32 -04:00
ssheven.h fix title setting 2024-10-21 19:39:32 -04:00
ssheven.r add menu/shortcut capability to connect/disconnect/reconnect 2021-12-29 20:32:01 -05:00

ssheven box

ssheven

A minimal new SSH client for Mac OS 7/8/9.

Project status: as of 0.8.0 (see github releases), fairly secure and usable, but without a polished UX or all planned features. Versions prior to 1.0.0 should be considered alpha/beta quality.

ssheven screenshot

system requirements

  • CPU: Any PPC processor, or at least a 68030 (68040 strongly recommended).
  • RAM: 2MB.
  • Disk space: fits on a floppy.
  • System 7.1 or later. Versions below 7.5 require the Thread Manager extension.
  • Open Transport networking required, latest version possible highly recommended.

features that might happen

  • improved unicode support
  • basic scp file transfer
  • configurable terminal string
  • configurable/auto-choosing SSH buffer size (improves feel for faster machines)
  • nicer error presentation for more failure cases
  • add known_hosts reset option
  • read Apple HIG and clean up UI/UX
  • all license info in an about box type thing
  • finish and upload papercraft box, floppy sticker artwork, icon/logo svg
  • more complete color support
  • keyboard-interactive login
  • better debug output
  • multiple terminal windows open at once

known problems

  • drawing the screen is somewhat slow
  • input latency feels high because redrawing the screen is slow (along with all the encryption, which is also slow)
  • receiving a large amount of data may break the channel or cause lockups (e.g. cat /dev/zero)
  • non-US keyboard input may or may not have issues

build

Uses Retro68 (requires the Universal headers) and cmake.

Requires mbedtls, libssh2, and libvterm, see my (cy384's) hackjobs of those libraries for details. These are now pulled in as submodules, and everything should get built with a single CMake build.

The script build-ssheven.bash can be used to build a fat binary, or just as reference for build commands.

license

Licensed under the BSD 2 clause license, see LICENSE file.