This is the main development repository for the
terminal++ and its suppport repositories.
Please note that
tppis in an alpha stage and there may (and will be) rough edges. That said, it has been used by a few people as their daily driver with only minor issues. Notably the font detection is lacking and unless you have the Iosevka font tpp uses by default the terminal might look very ugly before you edit the settings file.
Building From Sources
cmake is used to build the terminal and related projects as well as to orchestrate the generation of installation packages. First the related projects must be fetched, i.e. :
tpp-bypass- containing the Windows ConPTY bypass directly to
ropen- a simple app that transfers remote files through the terminal connection so that they can be opened locally
To clone them all, the
scripts/setup-repos.shscript can be executed (works with
cmd.exe), which uses the
httpsconnection. In case
sshkeys are used the
scripts/setup-repos-ssh.shshould be executed instead.
tpp has very minimal dependencies. On Windows latest Visual Studio must be installed (or Visual Studio Code with
c++ support) and cmake, while the packagres required on Linux can be automatically installed via the
Building via CMake
The whole build process on all platforms is automated via
cmake. The following are examples on how to create release build for the supported platforms:
A good way to start is to look at the CI configurations in
.github/workflowsfolder where build steps for each supported platform are detailed.
mkdir build cd build cmake .. cmake --build . --config Release
mkdir -p build/release cd build/release cmake ../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc-8 -DCMAKE_CXX_COMPILER=g++-8
Building Installation packages
By default, installation packages for
terminalpp are created for the given platform and subject to the availability of the package creation tools (
WIX toolset for Windows,
snapcraft, and DEB and RPM tools on Linux).
To create them, build the
cmake --build . --target packages
cpackis not able to create multiple packages during a single build, multiple conditional builds must be executed.
To build installation packages for
bypass, the project must be reconfigured with the
Once the package to be creates has been selected via
-DPACKAGE_INSTALL (or left default), the default
install target can be used to install the respective applications (Linux only):
sudo cmake --build . --target install