Skip to content
Switch branches/tags

Latest commit


Failed to load latest commit information.
Latest commit message
Commit time


Windows build Linux build macOs build QT packages

Codacy grade LGTM Grade Sonar Quality Gate Sonar Coverage

Please note that terminalpp is in beta 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. If you encounter a problem, please file an issue!

This is the main development repository for the terminalpp and its suppport repositories. For more details about how to install terminalpp on your machine please visit the homepage. This readme provides information on how to build the repository from source only.

Supported Platforms

Platform Renderer Notes
Windows Native uses DirectWrite
Linux Native uses X11
macOS QT limited testing as I do not have real Apple computer

Building From Sources

cmake is used to build the terminal and related projects as well as to orchestrate the generation of installation packages. Following sections describe the build process on the different platforms:

A good way to start is to look at the CI configurations in .github/workflows folder where build steps for each supported platform are detailed.


The latest Windows 10 stable version is always supported. terminalpp may run on older Windows 10 versions since Fall 2018 (first ConPTY release). Visual Studio 2019 for C++ and Win32 apps must be installed.

Build process:

mkdir build
cd build
cmake ..
cmake --build . --config Release 

For details about how to build the tpp-bypass app, refer to the Linux instructions below as bypass is built inside the WSL it is intended for.


Tested on latest and LTS versions of Ubuntu. Before building the prerequisite packages must be installed via the script, i.e.:

bash scripts/

Then build the application using the following commands:

mkdir -p build/release
cd build/release
cmake --build .


macOS Catalina 10.15 and above is supported (due to lack of std::filesystem in previous releases). On macOS native rendere is not available and QT must be used instead. Before installation, brew must be available. To install prerequisites, run the setup script, i.e:

bash scripts/

Then build the application using the following commands:

mkdir -p build/release
cd build/release
cmake ../.. -DCMAKE_BUILD_TYPE=Release
cmake --build . 

If QT is not found, try adding adding the following to the cmake command -DCMAKE_PREFIX_PATH=/usr/local/opt/qt.

Building Installation Packages

Use the packages target and -DINSTALL=xxx cmake configuration option to determine which packages should be built (xxx can be terminalpp (default), ropen, or tpp-bypass).

Depending on the availability of the packaging tools (WiX, MakeAppx.exe, rpmbuild, snapcraft, etc.) the respective packages will be created in the packages directory inside the build.

For more details see the github action packages.

Manual installation

Once the package to be created has been selected via -DINSTALL=xxx, the default install target can be used to install the respective applications (Linux only):

sudo cmake --build . --target install