Updated: August 12, 2009
This article will teach you several simple, common methods of obtaining games for Linux, all legal. In other words, let's say you have one or another Linux distribution installed on your machine. What more, you are a gamer and would like to play games on Linux. You are aware of a large number of available titles, having read my Linux gaming section, but you are not really sure how to get these games installed and configured.
In this article, I will teach you the methods and ways of getting Linux games installed and running on your Linux box. While this kind of tutorial may seem trivial to hardcore gamers, I have received quite a few emails from readers asking me how to get the games installed.
Sometimes, the installation is as trivial as double-clicking on an RPM or a DEB installer. Sometimes, though, you may have to enable extra repositories or chmod the files with the executable bit or copy files to this or that directory or make sure you have Flash installed first or configure WINE for Windows games ... Worry not, I will carefully cover each approach, step by step. For now, you need not know what RPM, DEB or any other phrase mentioned above means. The only important thing is: you are a Linux user and you have a game you want to play. Just remember the game title. I'll take care of the rest. Follow me.
Table of Contents:
- Games developed to run natively on Linux
- Windows games
- DOS games
- Browser games
- Other suggestions
Games developed to run natively on Linux
If the game you wish to install can be found in the software repositories, the installation process will be simple. You will just have to select the desired package, let it download and install. After that, you can begin to enjoy your new game. For example, see below the results on Ubuntu 9.04 and Sabayon 4.1.
Search for games
It is quite likely that you do not know specific games titles and are interested in a wide range of games, generally, across the board. Software repositories are a great source of information that will aid you in your quest. You can look for games by typing names, full or partial, key words, and anything else that comes to mind. Indexed results will be displayed to you.
To help you choose, a number of distributions also display a game star rating, the prominent among them being Ubuntu, via its Add/Remove Applications utility. Let's take a look at the Jaunty Jackalope results once again. The Popularity column is a good indicator of how good the game is. As a rule of thumb, the more people play, the better it will be. This does not mean you can't find good titles with three or four stars rating, a good example being Alien Arena listed below.
It is possible that your distribution does not have game titles listed, no matter how hard you look. This can be simply because additional repositories containing games have not been added by default. A case example is openSUSE 11.0. To overcome the problem, you will have to enable these repositories. You can see example of how it is done below; I have chosen to enable VideoLAN and, more importantly, openSUSE BuildService - Games repository.
You can also manually download games for Linux. They will usually come in two flavors: executable .DEB or .RPM packages and zipped archives. You will rarely encounter source archives (tarred and zipped as .tar.gz). The former are very simple. Just execute the installer as you would on Windows. Double-click and you're done.
Zipped files can be either very simple or just slightly complicated. Your first step is to extract the archive contents. And then you will face two options: The game will contain a number of executable files, usually in the form of game name + .bin extension. Alternatively, you may also see .i386 or .x86_64 suffices. A good example is OpenArena:
P.S. The text is not very clean on a transparent background, which is something one of my readers wisely pointed out. However, the article was written before his email, so you will have to bear with me. Anyhow, the game comes zipped, to conserve space, but once you extract the archive it is ready to play. In fact, the game comes in a generic, all-platform format, making it playable on all operating systems. The only difference that you will run different executable files on different platforms.
But the core game files, the libraries and the graphics, all remain the same. But to the user, this is transparent. Thus, on Linux, you either run the .i386 or .x86_64 files. On Windows, you run .exe. Simple. So, for example, to run 32-bit Linux version of OpenArena, you will have to run its executable:
Now, it is likely that this won't work. This is because as a security precaution some games ship with their executable files disabled. If you are unfamiliar with Linux internals, you will find this notion strange, but it actually makes perfect sense. Files have three modes of work - read, write and execute. Disabling or enabling these modes allows you to control what the file can do. If an executable file does not have its executable bit enabled, it can't run. This prevents accidental running of malicious files. Thus, if you encounter the seemingly terrible malfunction of a game executable, make sure it has the executable bit enabled.
You can identify the executable bits by x. Without going into too many details why there are so many little letters, let's focus on the job at hand. We need to enable the execution of our file. Run the following command:
As you can see, the listing of letters in the first column has changed. We can see a number of x letters showing and the file name has changed color. This means that it is executable now - you can actually run it. Now run the game and enjoy.
Identify game files
One more snag you may hit is identifying which file to run. Now, there is a remote chance that a gamer won't recognize the file he/she needs to run, but if this happens, you can always resort to a bit of research in trying to locate the correct game executable. This is done by using the file system command. Run against files, it will report back their type. Below, I've run the command against the Dwarf Fortress executable. Now, we learn that it is a Windows executable, so I will have to use WINE. We will talk more about WINE soon enough, in a jiffy.
You will definitely want to know the best places for getting Linux games and learning about them. Going through the repositories is one way of doing it, but without really knowing what to look for, you will be hard pressed to find the games you want. Here are several good online sources that should help you learn more about Linux games. These websites contain game reviews, offering you an insight into genres, system requirements, quality, ease of installation, and other useful tips.
Ubuntu Gamer Arena
I have already mentioned this website in my Greatest sites list. So read yonder please.
While this website has not been updated in a while and it has a feel of a semi-finished project, it contains a reasonable list of game titles. Even if Playdeb game repository is outdated for modern releases of Debian and Ubuntu, it can be a good start in your quest after Linux games.
Important note: I have been informed by a fellow forum member that Playdeb has recently undergone a major overhaul. Indeed, the website has changed significantly, both in its looks and functionality. The new repositories now serve the current Ubuntu 9.04 edition and the upcoming 9.10 release. Therefore, my previous assessment in the paragraph above about the game repository relevancy no longer applies. Playdeb is a very useful source of Linux gaming. Thanks go to 569874123 for this update!
Ubuntu forums, Gaming & Leisure section
In this forum, you will lots of useful information about games. Not only will you hear about many new exciting titles, you will be able to hear options and impressions from forum users around the world, read about installation and use problems and learn how to troubleshoot them.
Dedoimedo, Linux gaming section
My own site, of course. If you have stumbled upon this article without going through my entire Linux gaming section, I warmly recommend you hop there and read a few articles. Self promotion, yes, but you will find a large number of detailed reviews, including single games and collections. So far, I have written seven compilations, which detail the following:
Linux gamers - First Person Shooters - This article introduces three FPS games, OpenArena, Sauerbraten and Nexuiz. These three titles are among the most popular and well known FPS for Linux, having been around for quite some time.
Linux gamers - First Person Shooters - Part Deux - This article introduces two more FPS games, AssaultCube and Urban Terror. The latter title is a mature, grown game, with thousands of people playing it daily in hundreds of servers online.
Linux gamers - First Person Shooters - Part Three - This article introduces two more shooters, Alien Arena 2008 and Warsow.
Linux gamers - Lots of great choices - This article is a massive compilation across genres, including two FPS titles, Tremulous and America's Army, two racing games - Torcs and ManiaDrive, two flight/space simulators - FlightGear and Vega Strike, three real-time strategy games - Warzone 2100, The Battle of Wesnoth, and the open-source clone of Transport Tycoon Deluxe known as Open Transport Tycoon (OpenTTD), an Worms-style artillery game called Wormux, a scattering of board games, and some basic tips on how to search for Linux games.
More about Linux games - Part 5 - This is another big collection, covering the following games: Toribash - a ragdoll physics violence game, Phun - 2D physics sandbox, Hitchhiker's Guide to the Galaxy - a Java-version remake of the legendary title, FreeCiv - A Civilization-style world-building game, TuxRacer - a Penguin racer game, Glest - a 3D real-time strategy somewhat similar to Warcraft, Lincity - a city-building game similar to older versions of SimCity, and Savage 2, a beautiful, complex, unconventional FPS game with stunning graphics and semi-RPG elements.
Another superb collection of Linux games - This article introduces yet more fine Linux titles: Yo Frankie! and World of Padman FPS games, VDrift - a racer game with serious physics, Vendetta Online - a payware space simulator played by thousands of people in a vast universe, Dwarf Fortress - an unusual, extremely realistic and hard strategy game played in terminal, Kapitalist - a monopoly game, and a slew of Flash games, although not strictly Linux, still fun and enjoyable on Linux platforms, including Armor Games, Scriball and Line Rider.
Linux games mega collection - part 7 - This article has it all: Wolfenstein: Enemy Territory, Smokin' Guns, Postal 2, UFO: Alien Invasion - a remake of the legendary DOS-era UFO: Enemy Unknown, Scorched 3D - also a remake, of Scorched Earth, the Mother of All Games, a couple of Liero clones, Ultimate Stunts - a racing game, Brutal Chess, Foo Billard and Trackballs 3D board games, Soldat 2D platform/shooter game, a Worms-like clone called Hedgewars, and a pair of real-time tactics/strategy games - Bos Wars and NetPanzer.
I must warn you before I begin: there is absolutely no guarantee that your favorite Windows games will run on Linux. None whatsoever. Furthermore, if you do get your Windows games running on Linux, you may experience reduced performance or unpredictable visual glitches resulting from a sub-optimal migration. Now that you know this, we can safely dive into this section. I will show you a number of methods/tools that allow you to play Windows games on Linux. Some of the games will run smoothly, others may not run at all.
CrossOver is a payware solution with a 7-day trial intended to allow Linux and Mac users to run Windows games and applications without resorting to full-blown virtualization. CrossOver comes in a number of flavors, including specifically CrossOver Games. Installing CrossOver is a very simple affair. Register on the website, download the package (.DEB, .RPM) and install it. After that, run CrossOver and start installing Windows games.
Cedega is another payware solution that should help you install Windows games on Linux. It, too, has a trial, allowing you to test the software before buying. Again, like CrossOver, Cedega might not work with all games. My experience shows that it works well with a relatively small subset of games, plus it does not always detect inserted game discs. It is also a little more complicated than CrossOver to setup, but it has a visually more pleasing GUI.
WINE is a translation layer or a program loader, capable of running Windows applications on Linux and other UNIX-based systems. It is a freeware solution that should help you enjoy Windows games. We have already seen WINE in action when we configured Internet Explorer to run on Ubuntu. If you're interested, you may want to take a look at my IEs4Linux tutorial.
Now, here's an example of WINE running Dwarf Fortress, as featured in my review: Another superb collection of Linux games. The first thing we did was to download and install the WINE packages from the repositories. It is included with most repositories of modern, popular distributions. After that, we executed wine against the Dwarf Fortress executable, which you have seen earlier in the file command example.
WINE is free and should be your first choice when trying to post Windows games. However, it does require a little more configuration than either CrossOver and Cedega. Working on the command line may not appeal to everyone, especially new users. WINE has a rich configuration menu, allowing you to control many aspects of the games behavior.
This is the hardcore part of porting Windows games to Linux. Virtualization allows you to run entire operating systems as guests on top of other (host) operating systems. For Linux users, this is a very good solution to solving many problems with Windows applications that cannot be easily run on their distro.
One possible problem with virtualization is that virtual machines running guest operating systems do not see the real physical hardware; instead, they use virtualized hardware, including generic graphics drivers. This means that 3D acceleration support may be limited. However, recently, quite a lot of effort has been invested in enabling 3D acceleration in virtual machines, most notably by Sun and their excellent product VirtualBox. You should definitely invest a few minutes and read my VirtualBox & Compiz and VirtualBox & DirectX articles, which explain in great and lovely detail how you can enable 3D acceleration in virtual machines and enjoy reasonable gaming performance.
In fact, VirtualBox has also supported OpenGL acceleration for quite some time, allowing you to play games inside virtual machines for quite some time, although you would rarely want to do this, since most games developed to use OpenGL rather than DirectX are cross-platform anyway. Additionally, VMware Server/Workstation also support limited, experimental DirectX support for Windows guests.
This means that you can also try playing Windows games inside Windows virtual games. The performance will be less than when ran natively on your physical hardware, but it can be quite acceptable. Furthermore, some games may not run or run with only some of the 3D acceleration features. The field of 3D virtualization is still in its infancy, but it is evolving fast.
DOS games is all about games that used to run on Microsoft DOS and early versions of Windows. While many companies have long abandoned these games, some of them are still very much popular. Millions of people continue playing these games, including timeless titles like Transport Tycoon, Civilization 2 or UFO: Enemy Unknown. Luckily, playing DOS games on Linux is rather simple. This is thanks to a powerful utility called DOSBox.
DOSBox is a powerful, robust, full-blown x86 PC emulator, complete with graphics, sound, mouse, and modem, allowing you to run old DOS-based games that are no longer supported by modern operating systems. DOSBox is available for all major operating systems, including Linux. You can find DOSBox in the repositories. After that, it's good ole fun playing. However, do take a look at the Working with DOSBox sub-section below, to learn how to use DOSBox to actually find the DOS games and run them.
It also supports IPX and Serial multiplayer modes. Let this information sink in. You can enjoy multiplayer games with DOSBox, playing on separate computers! Just so you can appreciate the importance of these features, DOSBox has finally allowed me to play the 1989 F-16 simulator called F16 Combat Pilot in its full Serial multiplayer glory. I have waited nigh two decades to be able to do this!
Likewise, you may want to play games that support IPX. Two examples that come to mind are the original Warcraft and Red Alert. With DOSBox, you can once again enjoy these timeless beauties in the comfort of your modern home.
If you're interested, you can read more about DOS games that I have tested in DOSBox in these two articles, including Serial and IPX multiplayer mode setups. Furthermore, for a number of reviews on legendary DOS titles, you may be interested to read the following game reviews: 1942: The Pacific Air War, a beautiful WWII simulator; the article also features two video recordings showing my humble piloting skills in classic dogfight action. UFO: Enemy Unknown - Recipe for primal fear, the cunning, complex turn-based futuristic strategy where you defend the world against alien invasions; the article also has a remix of the game's frightening music available for download. Open Transport Tycoon Deluxe, the modern clone of the old Chris Sawyer's masterpiece business tycoon/transport building simulation.
Working with DOSBox
Working with DOSBox is quite easy if not trivial. You do need to master a few command lines to be able to run the DOS games. After loading DOSBox, you will have to mount a directory that contains your old DOS games. This is the hard part of the whole affair. After that, you will be able to use the standard DOS commands to navigate directories (cd) and find the game you want to play. So the tricky bit is to mount the directory where your DOS games are kept:
Please note that this command is different for Windows and Linux. On Windows, you would use c: instead of just the letter and use backslashes instead of forward slashes to navigate to the games directory. Here's a screenshot how it is done. Then, simple move to C drive (c:, Enter), cd into the game directory and start playing.
Browser games are not Linux. I must reiterate this, as I have drawn flak over this issue many times over. Browser games are browser games and will run wherever your browser runs. And since most browser games are based on the cross-platform Flash and Java, this means that you can play browser games on any browser on any operating system anywhere. So why include browser games in the first place? There are several reasons for this:
- Finding good browser games is difficult. Similarly, finding good Linux games is not easy, especially for newbies. This allows me to place the quest for good games, Linux and browser alike, under the same umbrella.
- Getting browser plugins like Flash and Java installed and running properly causes quite a bit of apprehension among Windows users and new converts. My goal is to show them that these setups are easy - no different than getting the same plugins configured on Windows.
- Many Linux users run their distros on older hardware, mainly because Linux can run well on older hardware, allowing them to squeeze the maximum from platforms considered too weak for Windows. However, these older machines usually cannot support modern 3D games. Board games, or the so-called small games as I like to name them, 2D games, and browser games make a good choice for people who are less interested in elaborate titles or high-end gaming. Making browser games available to Linux users make more sense due to the nature of its users and the hardware deployed.
- Frankly, Linux gaming is inferior to Windows. Despite my best efforts to show you a handful of great games, overall, the Linux gaming scene lags behind its Windows counterparts, both in quality and quantity of available content. Most Linux games tend to be simpler, less elaborate and with somewhat less polished graphics, although this is constantly changing, with games like Urban Terror, Savage 2, Yo Frankie!, and Vendetta Online being good examples of carefully detailed content made for Linux. Therefore, Linux users are more likely to play simpler games than their Windows peers.
For all these reasons combined, talking about browser games in the context of Linux gaming makes more sense. That said, I believe I will make a few dedicated articles that focus on browser games in general. As you can see, the more I write about Linux games, the more I become versed in finding high-quality sources myself. It is a journey we share together, you and I. While I'm helping educate you on the subject, I am myself learning new things every day.
If you take a look at my Linux games - Lots of great choices article again, you will notice that I have only briefly mentioned the so-called small games, Flash and useful online sources. Written half a year later, my article Another superb collection of Linux games features a much richer assortment of online sources, with more and better references. And today, we discover yet more. It's a learning process and we share it together. Now, let's see what you can do with your browser.
Flash games are very popular today. Finding great titles is not easy. I must say it took me quite a while to find reasonable gaming sites that offered more than just mediocre Flash animations, and I mainly succeeded because of the help provided by fellow readers and forum members. I appreciate your input and hope for more great suggestions.
Install Flash Player
The first thing you will want to do is install a Flash Player (most likely Adobe) in your browser. Being the prime open-source choice, Firefox seems like the most likely candidate. I recommend you read my Flash tutorial for Firefox on Linux to bridge the first step.
I intend to add this site in my Greatest sites article. This online repository contains a huge number of Flash games. Not surprisingly, some are trivial and boring. But some of the games are really fun to play, addictive, well done, with reasonable visual detail and complexity.
Armor Games offers dozens of titles across a range of categories. While I must admit I have played only a small selection for a brief period, I was impressed by the quality of content offered. I truly believe you can find plenty of useful games and gamelets that should amuse you for quite a while. Another alternative is Miniclips (see below). For some reason, I find Armor Games to be more fun.
Miniclips is another large online repository of Flash games, similar to Armor Games. Again, the quantity and quality of content will vary, depending on your taste. But it is quite likely you will stumble across a few worthy candidates, like the Commando game shown below. The most popular games are a good indicator of where to start looking. My thanks go to Gaeko for showing me this game.
This is a very simple, no-nonsense game with a few twists of its own. You own a Brute, who has a number of fights each day. The fights are fully automated and depend on the level of your character. When you win, you gain points, allowing you to advance in levels and buy additional weapons and bonuses that should help you in your future fights. The game has no point except the pure joy of watching cartoon-like characters contents in a Mortal Kombat style arena. Nevertheless, it is quite addictive in a sick, perverse sort of a way. Not suitable for children, mind. Overall, My Brute can be a useful time waster, especially if you're at your workplace. Thanks to ance for his/her suggestion.
Then, let's not forget Scriball and Line Rider mentioned in the Another super collection game review. In both these titles, you control the physics of the game by freely drawing lines that determine the path of game objects, a ball in the former and a bob sleigh rider in the latter. Simple, geeky and very much fun. Please take a look at the article for more details about these two games.
Install Java Runtime Environment (JRE)
Again, your first task will be to install the Java runtime engine. This task used to be difficult in the past, but it has grown simple in the recent releases of most popular distributions. You may want to take a look at my Jaunty review to see how this is done.
I do not have any Java-based game sources to offer (yet), save for the phenomenal Hitchhiker's Guide. If you do have suggestions for reasonable Java games, which are both well made, aesthetically pleasing and varied enough, feel free to email me. For now, Hitchhiker's Guide to the Galaxy:
That's about it. I think I have covered every possible aspect of Linux gaming and gaming on Linux. The only thin remaining is a few general tips and tricks.
Disable Compiz when playing
If you're running Compiz, it may clash with some of the games, causing flickers and jitters. Furthermore, if your machine is not the most speedy one, Compiz will slice off a few frame per second, reducing the smoothness of the games. This is not a must, but if you encounter games that experience glaring visual glitches, test if disabling Compiz temporarily solves the problem.
Visit game forums
While this suggestion is geeky and few games really bother trying to troubleshoot their games, if you care about the title you want to play and are experiencing difficulties, browsing through the games forums for a few minutes can make a big difference.
I sincerely hope you have enjoyed this article. I believe it is very detailed and thorough and helps make sense of what Linux gaming is really about. As you can see, it is not a trivial matter. There are many ways of going about Linux games, some very simple and trivial, others more complicated. Some might also cost you money.
However, now you know how to tackle the problem. It's a layered approach. Use the repositories first. After that, try manually downloads while reading game reviews to get a sense of what you're up against. Resort to some command line tricks when you encounter issues running games. Use WINE and its payware alternatives to run Windows games. Virtualization can also be of help. DOS and browsers games should be fairly trivial to setup and play. If you liked this article, feel free to spread the word - and send one of encouragement. It takes time writing game article, thricely more so than software articles. Furthermore, if you have suggestions, do email them. See ya around!