How to install SyncTERM for Linux from source

SyncTERM is one of the better terminal clients for connecting to a BBS via Telnet or SSH in my opinion, and I have installed it on both my MacBook Pro and my Lenovo Thinkpad T440p running Ubuntu 18.04.1 LTS.

It wasn’t difficult to build it from source and install it, but it did require building, not just installing, and therefore I have posted (below) instructions for anyone interested on how to build and install this application from source.

Create a new file called “get_SyncTERM.sh” or something else of your choosing into your favourite text editor, eg “nano get_SyncTERM.sh” and copy and paste the following in:

#!/bin/bash

# To Install apps/libraries used to compile
echo "Preparing to install relevant libraries..."
sudo apt-get install wget libncurses5-dev libncursesw5-dev gcc libsdl1.2-dev

# To Pull source
echo "About to download the syncterm application source..."
wget http://syncterm.bbsdev.net/syncterm-src.tgz

# To extract tgz file
echo "Extracting the source now..."
tar xvzf syncterm-src.tgz

# Change directory to
echo "Change into the 'make' folder"
cd syncterm-$(date +%Y%m%d)/src/syncterm

# To get full path src
echo "Set st_path variable for the SRC_ROOT path..."
st_path=$(pwd | sed 's/\/syncterm$//g')

# Time to compile!
echo "Make SRC_ROOT with path: $st_path"
sudo make SRC_ROOT=$st_path

# Install SyncTerm
echo "Install SyncTERM..."
sudo make install

# Find out where Syncterm was installed
echo "Find out where SyncTERM installed"
which syncterm

Now save and exit your text editor, you will need to make this script executable. To do this, run the command “chmod +x get_SyncTERM.sh”. Verify that this is now executable by listing the current folder showing attributes, eg “ls -l get_SyncTERM.sh” and you should see the filename now has the attributes “-rwxr-xr-x”

Now you can run this file by doing “./get_SyncTERM.sh”.

After a few moments, you will have built and installed SyncTERM, and the last output from the script will show you where it’s located (but it should be in the path anyway), so you can just run “syncterm” from the CLI.