Skip to content

M4444/TMatrix

Repository files navigation

TMatrix

[Latest GitHub release] [License]

Codacy Badge Language grade: C/C++

TMatrix is a program that simulates the digital rain from The Matrix. It's focused on being the most accurate replica of the digital rain effect achievable on a typical terminal, while also being customizable and performant.

Installation

Packaging status

Install on Arch Linux AUR votes

Install tmatrix-git from the AUR. For example, with an AUR helper such as yay:

yay -S tmatrix-git

Install on any Nix system

nix-env -f '<nixpkgs>' -iA tmatrix

Install on openSUSE Linux

The package can be installed from the community repo:

Note: if you are using other versions insted of Tubleweed uncomment the one you're using and delete the others.

DISTRIBUTION=Tumbleweed
#DISTRIBUTION=Slowroll
#DISTRIBUTION=Leap_15.6
#DISTRIBUTION=Leap_15.5

zypper addrepo "https://download.opensuse.org/repositories/home:kosmonaut2001/openSUSE_${DISTRIBUTION}/home:kosmonaut2000.repo"
zypper refresh
zypper install TMatrix

Download and install on other GNU/Linux distributions

The prebuilt TMatrix uses version 5 of the ncurses library. To install the library on Ubuntu or Debian run:

sudo apt-get install libncurses5

Now that you have the required library you can install and run tmatrix:

wget -q https://github.com/M4444/TMatrix/releases/download/v1.4/installation.tar.gz
tar -zxvf installation.tar.gz
cd installation
sudo ./install.sh

To check if it installed correctly run:

tmatrix --version

Uninstall

sudo rm -f /usr/bin/tmatrix \
           /usr/share/man/man6/tmatrix.6.gz \
           /usr/share/bash-completion/completions/tmatrix \
           /usr/share/zsh/site-functions/_tmatrix

To check if anything was left behind you can run:

locate tmatrix

Build and install from source

Tools

This project uses C++17 so you'll need the latest tools in order you build it:

Library

Commands

git clone https://github.com/M4444/TMatrix.git
cd TMatrix
mkdir -p build && cd build
cmake ..
make -j8
sudo make install

Info

Options

TMatrix is very customizable. You can change the starting title text, the color of the background and the characters, the speed, length and separations of the rain streaks. During execution you can use p to pause and q to quit.

For a full description of all the options run man tmatrix or tmatrix --help.

Contributing

Suggestions, bug reports and patch submissions are all welcome. You can create an issue, send a pull requests of just send an email. For details see CONTRIBUTING.md.

Author

Written and maintained by Miloš Stojanović ([email protected]).

Acknowledgments

Thanks to:

  • Infinisil for creating a Nix package
  • filalex77 for creating a Gentoo Linux package, adding bash, zsh and tcsh completions scripts and a .editorconfig file
  • eliasrg for creating and maintaining the Arch Linux package, clarifying the installation options on Arch Linux, adding CMake install commands for the man page and helping in the creation of completions scripts
  • Makefile-dot-in for fixing a problem linking atomic on Android
  • sebpardo for pointing out a typo in the man page
  • fosspill for correcting the name of the required ncurses library
  • meskarune for the idea and helpful suggestions for creating the 'fade' and 'rainbow' options
  • taschenlampe for creating a openSUSE Linux package and reporting an issue with the install script

License

TMatrix is licensed under the GPL-2.0-only - see the LICENSE file for details.

Donations

If you wish to send a donation you can do so here Liberapay or here PayPal.

How it looks