7 open source terminal games for Linux

12 readers like this.
System statistics with sar and the /proc filesystem

ajmexico. Modified by Jason Baker. CC BY-SA 2.0.

Do fancy graphics really make a game better? Can a text-based game for Linux still keep you entertained?

Don't get me wrong, I do occasionally enjoy playing a AAA game release from a major studio. But as I've gotten older, I've found that I really value gameplay (and nostalgia too, admittedly) far more than how photorealistic my gaming experience is.



For me, this has meant replaying some of my classic favorites from the 90s and early 2000s, or newer independent games which pay homage to the styles and gameplay of my older picks. As a Linux gamer, it's had the added bonus of providing a high quality gaming experience with very little effort on a computer that is far from top-of-the-line.

Many of my favorites have had dedicated Linux ports created through the years, and still others run flawlessly on Wine or inside of DOSBox. While the games themselves may not be open source, at least much of the rest of my computing stack is open, and for that matter, also free-as-in-beer.

But lately I've also been thinking about my very early days in computer gaming, which predated such fancy new inventions as mice and color monitors. Gameplay mattered a great deal back then, because it was literally all you had to work with. The allure of watching green specs on a black screen could only hold your attention for so long.

And so I decided to take a look around at some of the simplest open source games for Linux: terminal-based games.


A couple of years ago, 2048 became one of the most popular web-based games hosted on GitHub, with its simple mechanics of sliding blocks providing hours of entertainment. While itself a derivative of other similar games, I began to wonder if the name 2048 was reflective of the number of clones this game itself would generate (here are some of the more entertaining ones).

But 2048 is such a simple game, it lent itself well to a terminal-based implementation, and thus 2048-cli was born. 2048-cli is an MIT-licensed version of the game, written in c, which plays exactly like its web-based big brother.


BSD Games

Unlike the other games in this list, the BSD games collection isn't a single game at all, but rather a package providing many different text-mode games across a variety of themes, ranging from the simple to the complex. Including card games, clones of several well-known older games, and other entertaining applications, BSD games were originally packaged for various BSD distributions (no surprise there), generally under a BSD license (also not-so-shocking). Some of my favorites in the package include worm, snake, mille (a Mille Bornes implementation), cribbage, and backgammon, but you should look through the entire list of included games—there are many more than you might think!


Moon Buggy

Moon Buggy is a GPL-licensed side scrolling game in which you must navigate the crater-covered surface of the moon with your jump-powered car. Modeled after the arcade game Moon Patrol, Moon Buggy is about as simple of a side scrolling driving game as they come, but surprisingly addictive, for the same reason that single-speed navigation games like Flappy Bird are still amusing today.



One could not have a discussion of text-based games and not include Nethack. Nethack is a roguelike adventure game which has kept an active user community still playing it for almost three decades despite the genre spawning many alternatives with more modern graphical interfaces. Nethack is a fantasy game in which you explore a dungeon full of challenges and monsters, but also helpful loot like weapons, armor, scrolls, and potions to help you along the way. It is licensed under the NetHack General Public License, which is similar to the GPL.



Do you miss the classic arcade game Space Invaders? Wish you could play it in your terminal? Well, good news, that's exactly what the GPLv2-licensed nInvaders provides. Fight back invading alien space ships with your single-turret cannon as you move back and forth to avoid being blown up. It's a throwback to one of the best games of the 1970s.



Nudoku is a sudoku-game for the terminal, written in c and licensed under the GPLv3. A logic game of placing numbers in a 9 by 9 grid, Nudoku provides a number of difficulty levels from easy to hard and plays as well as its GUI- (or paper-) based counterparts.


Robot Finds Kitten

Robot Finds Kitten is a GPL-licensed "zen simulation" in which you play a robot tasked with finding a kitten in a world filled with many objects which you must inspect. While so simple that it's not a game in the tradition sense, it's oddly calming to explore a simple world full of entertainingly-described objects in search of your lost cat.


This, of course, only scratches the surface of gaming options at the Linux terminal. There are many, many others. Want to try out the games we discussed here? Most are packaged for major distributions; on my Fedora machine, the following command installs them all:

sudo dnf install -y nethack bsd-games 2048-cli ninvaders nudoku moon-buggy robotfindskitten

Do you have a favorite open source text-mode game for Linux? If so, let us know in the comments below.

Jason Baker
Former Red Hatter. Now a consultant and aspiring entrepreneur. Map nerd, maker, and enthusiastic installer of open source desktop and self-hosted software.


Emacs: tetris and chess. It's all you'll ever need.

Oh, and Ancient Anguish MUD running in tintin++.

All you'll ever need.

Also, Adventure (but I think that may be from BSD Games, so technically already mentioned in the article).

"You are standing at the end of a road before a small brick building.
Around you is a forest. A small stream flows out of the building and
down a gully."

In reply to by sethkenlon

I think I first played Adventure on a Commodore Pet in Jr High school...that famous "computer" that could be damaged by issuing a command (a poke, if I remember right).

In reply to by Jason B

One of my favorites is Flat7, a 2x2x2 slider puzzle flattened to 2-dimensions. You simply arrange the digits 1..7 into proper order, but is trickier than you might think. It's available as puzzle # 14 within the "RufasSlider" collection at


Addendum: a fully retro-text-only-terminal version is at the previously mentioned github web address under the name of "TerminalApps".

In reply to by Rod (not verified)

The BSD games collection includes Canfield solitaire -- I've been playing that since my Linux system was a 386 Laptop with only 2MB of RAM...

I used to play a tornado game in the terminal, can't find it now, but here is what might be an updated version. It supposedly even has multiplayer abilities, lol. I haven't tried this yet: https://kiza.eu/software/tornado/

Um, hello? You're forgetting one of the most important terminal based games of all time... Dopewars! :) Not only a game, but a social commentary!

Okay. I say it every summer, but this time I mean it: I am going to learn Nethack before the fall. Can anyone recommend additional resources?

You forgot the ever popular GoToHell. Not a deep game, but when you are a sophomore in college, were waiting on your punch card program to finish and have had a few beer, it was wildly entertaining...

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.