2020-07-17 02:32:31 +01:00
![ssheven box ](http://www.cy384.com/media/img/ssheven_box_front_small.png )
2020-06-08 17:53:38 +01:00
ssheven
-------
2020-07-25 23:57:03 +01:00
A modern SSH client for Mac OS 7/8/9.
2020-06-08 17:53:38 +01:00
2020-09-06 21:06:00 +01:00
Project status: as of 0.5.0 (see github releases), a functional SSH client with decent terminal emulation, able to run programs like `htop` and `nano` . See "to do" section below for upcoming work.
2020-06-08 17:53:38 +01:00
2020-09-06 21:06:00 +01:00
![ssheven screenshot ](http://www.cy384.com/media/img/ssheven-0.5.0-screenshot.png )
2020-08-06 04:27:28 +01:00
2020-07-21 06:10:47 +01:00
system requirements
-------------------
2020-08-29 03:14:43 +01:00
* CPU: Any PPC processor, or a 33 MHz 68040 (maybe a 68LC040, maybe 25 MHz).
2020-08-22 22:39:03 +01:00
* RAM: 2MB
* Disk space: 1MB for the fat binary
2020-07-21 06:10:47 +01:00
* System 7.5 recommended, earlier System 7 versions possible with the Thread Manager extension installed
2020-08-22 22:39:03 +01:00
* Open Transport networking required, version 1.1.1 or later recommended
2020-07-21 06:10:47 +01:00
2020-07-25 23:57:03 +01:00
to do
-----
2020-08-22 22:39:03 +01:00
* refactor libssh2 usage to handle errors and centralize network ops
2020-09-06 21:06:00 +01:00
* key authentication, and radio buttons on connection dialog for password vs key
2020-07-25 23:57:03 +01:00
* preferences
2020-08-22 22:39:03 +01:00
* saving/loading connection settings
* check server keys/known hosts/keys
2020-09-06 21:06:00 +01:00
* nicer error presentation for issues like wrong password or bad connection (not connected to network, no dns, etc.)
* read Apple HIG and obsessively optimize placement of all GUI elements
* improve draw speed (big refactor, need to use an "offscreen graphics world" framebuffer, also hook scrolling into vterm)
2020-09-01 03:53:06 +01:00
* figure out retro68 mcpu issue, improve 68k connection performance (rewrite `mbedtls_mpi_exp_mod` in assembly)
2020-08-22 22:39:03 +01:00
* font size options
2020-09-01 03:53:06 +01:00
* hook in more libvterm callbacks
* text selection + copy
2020-08-29 03:14:43 +01:00
* color
2020-07-25 23:57:03 +01:00
2020-06-08 17:53:38 +01:00
build
-----
Uses Retro68 and cmake.
2020-08-22 22:39:03 +01:00
Requires mbedtls, libssh2, and libvterm, see my (cy384's) ports of those libraries for details. Note that you need to build/install each for both platforms (m68k and PPC).
2020-06-08 17:53:38 +01:00
* `mkdir build && cd build`
* `cmake .. -DCMAKE_TOOLCHAIN_FILE=/your/path/to/Retro68-build/toolchain/powerpc-apple-macos/cmake/retroppc.toolchain.cmake` or `cmake .. -DCMAKE_TOOLCHAIN_FILE=/your/path/to/Retro68-build/toolchain/m68k-apple-macos/cmake/retro68.toolchain.cmake`
* `make`
2020-08-22 22:39:03 +01:00
Use Rez to build the fat binary: join the data fork from the PPC version and the resource fork from the m68k version.
I have some build scripts that I'll clean up and publish with the 1.0.0 release.
2020-09-06 21:06:00 +01:00
note to self: binary resources can be extracted in MPW via: `DeRez "Macintosh HD:whatever" -skip "'CODE'" -skip "'DATA'" -skip "'RELA'" -skip "'SIZE'"` etc., this is especially useful for icons
2020-06-08 17:53:38 +01:00
license
-------
Licensed under the BSD 2 clause license, see LICENSE file.
2020-07-17 02:32:31 +01:00