A terminal interface for Tetris
For MacOS, the binary attached to the GitHub release should suffice (instructions). If you are on Debian or similar distros, you can try the Linux binary as well but no guarantees. See the other two options, installing from source and dex.
github release binaries
Here is a quick way to get the one for your OS:
curl -L https://github.com/samtay/tetris/releases/download/0.1.3/tetris-`uname -s`-`uname -m` -o tetris chmod +x tetris sudo mv tetris /usr/local/bin/
install from source
First get stack. Then
git clone https://github.com/samtay/tetris.git cd tetris stack install tetris
install via dex
dex is a really cool application manager that lets you run executables as docker images, so that you don't need to worry about installing them or their dependencies directly.
# get dex if you don't have it curl -L http://get.iceburg.net/dex/latest-0.12.x/dex -o dex chmod +x dex sudo mv dex /usr/local/bin # add tetris as a repo dex repo add tetris https://github.com/samtay/tetris.git # run tetris dex run tetris ### optionally install tetris globally ### export PATH="$HOME/.dex/bin:$PATH" dex install --global tetris tetris
The default game is run by simply executing the
If the unicode characters look a bit
wonky in your terminal, you can also run
tetris --ascii-only # uses  as preview cell # or tetris --preview-chars 'XX' # uses custom characters as preview cell
If you want to skip the level prompt, you can start the game immediately via
tetris --level n
Lastly, to see the current high score, you can run
And of course, see
tetris --help for help.
People seem to have varying levels of success with the linux binary. Please note that it is compiled dynamically and hence should not be expected to work on most distros. If you have other problems, feel free to open an issue.
roll your own
If you like games in your terminal and have an interest in functional programming, write your own! This code is built on top of brick which makes building terminal user interfaces very accessible. I also have a tutorial that can help you get started.