Terminal based "The Matrix" like implementation


CMatrix is based on the screensaver from The Matrix website. It shows text flying in and out in a terminal like as seen in "The Matrix" movie. It can scroll lines all at the same rate or asynchronously and at a user-defined speed.

CMatrix by default operates in eye candy mode. It must be aborted with control-c (Ctrl+C) or by pressing q. If you wish for more of a screen saver effect, you must specify -s on the command line. For usage info, use cmatrix -h.

Build Status


You'll probably need a decent ncurses library to get this to work.

Building and installing cmatrix

To install cmatrix, use either of the following methods from within the cmatrix directory.

Using configure (recommended for most linux user)

autoreconf -i  # skip if using released tarball
make install

Using CMake

Here we also show an out-of-source build in the sub directory "build".

mkdir -p build
cd build
# to install to "/usr/local"
cmake ..
# or to install to "/usr"
make install

Running cmatrix

After you have installed cmatrix just run cmatrix to run cmatrix :)

To get the program to look most like the movie, use cmatrix -lba To get the program to look most like the Win/Mac screensaver, use cmatrix -ol

Valuable information

If you have any suggestions/flames/patches to send, please feel free to open issues and if possible solve them in PRs via Github.

Note: cmatrix is probably not particularly portable or efficient, but it wont hog too much CPU time

0 (0)
Article Rating (No Votes)
Rate this article
There are no attachments for this article.
There are no comments for this article. Be the first to post a comment.
Full Name
Email Address
Security Code Security Code
Related Articles RSS Feed
What is yum-cron ?
Viewed 1794 times since Fri, Oct 26, 2018
stunnel Securing telnet connections with stunnel
Viewed 441 times since Sun, Dec 6, 2020
How to enable automatic security updates on CentOS 7 with yum-cron
Viewed 1395 times since Fri, Oct 26, 2018
Configuring VLAN interfaces in Linux
Viewed 3432 times since Mon, May 21, 2018
ZFS: Grow/Shrink an existing zfs filesystem
Viewed 2806 times since Sun, Jun 3, 2018
ZPOOL: Grow a zpool by adding new device(s)
Viewed 4302 times since Sun, Jun 3, 2018
Linux - How to get network speed and statistic of ethernet adapter in Linux
Viewed 994 times since Fri, Jun 8, 2018
Linux – Securing your important files with XFS extendend attributes
Viewed 6615 times since Wed, Jul 25, 2018
Red Hat Enterprise Linux - Allow Root Login From a Specific IP Address Only
Viewed 1501 times since Wed, Oct 3, 2018
linux aix Killing a process and all of its descendants
Viewed 1645 times since Tue, May 5, 2020