Thursday, January 10, 2013
Most people with any sort of interest in computers have seen The Matrix. One of the most popular things from that movie is the scrolling Matrix code. It quickly became a screen saver on many different operating systems. cMatrix isn’t a screen saver, but it allows you to run the scrolling Matrix code from within your command line.
Unfortunately, cMatrix does not appear to be actively developed anymore. The last news update on the maintainer’s website is from March 31, 2002.
Luckily, the source code is still available from the maintainer’s website and can still be compiled on modern Linux distributions. In addition, pkgs.org hosts cMatrix RPM, DEB, and XZ packages for Fedora, Debian, Ubuntu, and Arch, and can be found at the link below.
If you want to get cMatrix installed quickly, installing it from the pkgs.org repository will be the easiest method of installation. These packages contain additional patches to properly install the mtx.pcf font on modern Linux distributions.
The following compile process has been successfully tested on Fedora 17.
Install the following repository packages:
yum install gcc make autoconf automake ncurses-devel
Download and un-tar the source code:
wget https://www.asty.org/cmatrix/dist/cmatrix-1.2a.tar.gz tar xvzf ~/cmatrix-1.2a.tar.gz cd ~/cmatrix-1.2a
Generate aclocal.m4 man page:
Generate configuration scripts:
Generate Makefile.in for configure from Makefile.am:
Configure, make, and make install the binary:
./configure make sudo make install
Jump to the Using cMatrix section below if you did not have any problems during the compile or installation process.
automake -a are not run before
./configure the following errors may result:
configure: warning: *** No termcap lib available, consider getting the official ncurses *** distribution from ftp://ftp.gnu.org/pub/gnu/ncurses if you get *** errors compiling nano. checking for use_default_colors in -l... (cached) no
cmatrix.o: In function `finish': ... ~/cmatrix-1.2a/cmatrix.c:602: undefined reference to `wattr_on' ~/cmatrix-1.2a/cmatrix.c:603: undefined reference to `stdscr' ~/cmatrix-1.2a/cmatrix.c:603: undefined reference to `waddch' ~/cmatrix-1.2a/cmatrix.c:605: undefined reference to `stdscr' ~/cmatrix-1.2a/cmatrix.c:605: undefined reference to `wattr_off' ~/cmatrix-1.2a/cmatrix.c:493: undefined reference to `LINES' ~/cmatrix-1.2a/cmatrix.c:509: undefined reference to `LINES' ~/cmatrix-1.2a/cmatrix.c:516: undefined reference to `LINES' collect2: error: ld returned 1 exit status make: *** [cmatrix] Error 1
To use cMatrix, run
cmatrix from your shell and show everybody how all you see is blond, brunette, redhead.