www.chessreviews.com

Navigation
Articles
FAQ
Home
Links
Reviews

Chess Software Sourcebook


Click to subscribe to chessreviews

Linux Chess Software

Home

Linux and Chess

Links Updated 11/30/03, Article dates from 1999 

A few weeks ago, I held a poll concerning whether people were interested in Linux chess programs. While the response was not overwhelming, it did show a couple of things. First it showed that many readers of the page did not know what linux was. The second finding was that there is probably a (very small) market among linux users for some decent software.

For those that do not know, linux is a free operating system that you can get for your computer. You can go download it at various sites on the internet, but it will take you a long time to do so. You can also purchase a CD containing linux for about $2. For this modest outlay of cash (and a less modest outlay of time) you will get software that will make your computer more powerful and stable.

Why should you even care about some free operating system that a few computer geeks like to use? Well, even the computer industry is divided about how much of the market linux can take, but many think linux is viable for a few reasons. The most powerful of these is that the cost of computers has been coming down in recent years. We already have PCs that cost manufacturers about $200. Microsoft charges $50 for each OEM license of windows. This means that the OS constitutes an appreciable amount of the total cost of the system. So, manufacturers are looking at the bottom line, and they see a way to shave off 25% of the system cost. They also see a way to get the Microsoft monkey off their backs. IBM, HP, and Corel (to name a few companies) have all started investing in linux.

Another reason is that the pace of linux development is accelerating. Linux has gone from something only a mother could love to something that is aesthetically more pleasing than windows (see www.kde.org for examples).

This article will discuss several topics in turn. I first intend to discuss whether it is worthwhile for you to even try linux. Then I will put forth a few tips (for those that decide to take the plunge). Next I will discuss which programs are available for linux, and which windows chess programs will run using windows emulation. Finally, I will gaze into my cloudy crystal ball, and attempt to guess at what the future holds.

Should I try Linux?

If you are a computerphobe, then the answer is no. If you are the kind of person that is comfortable with a command line, or has previous UNIX experience, then you should definitely give it a shot. Don’t install linux for the chess software though, because you will be ultimately disappointed when you compare them to windows offerings.

What Linux will give you is a well-documented computer system. You will still be able to run all your windows software, it you chose what is called a "dual-boot" setup. Even if you do not use the dual-boot option, there are some native Linux and DOS/Windows programs that will run using wine (a windows emulator program) and dosemu (a dos emulator program). You also have another option called a virtual machine emulator (more on this later).

Linux does not work well with newer hardware, like USB peripherals. This should be changing in the new future, but you should be aware of this. Linux also cannot use winmodems, which are a controller-less modem that have become very popular in recent years. Your best bet is to scrounge up an external modem, and hook it up to your serial port.

A few tips if you decide to try it

Linux comes in various flavors called "distributions". Each is slightly different from another, so that there are advantages to picking one over another. Popular distributions include (but are not limited to) Redhat, Caldera, Debian, SuSe and Mandrake. These distributions are available at several cost levels. Depending on your level of expertise, the easiest thing to do may be to just purchase a linux distribution from your local computer store (then you get installation instructions, support and documentation). If you are technically savvy, then just go get a $2 CD from www.linuxmall.com, and download instructions off the internet.

I have had the best luck with Redhat, but I don’t want to get into a long debate over which distribution is "the best". Right now, though, the easiest distribution to install is probably Caldera. So, I would recommend going with that if other factors don’t dictate another distribution.

When you install, use the dual-boot option, and you will still be able to run all your windows software. Make sure that you have backups of your important files, because it is possible to mess up your partition table or format your hard drive!

You should also install one of the graphical windows managers, like KDE, GNOME, or Window Maker. This will give you a nice GUI for your computer (in Linux, the GUI is separate from the operating system itself, in windows they are combined). Install a number of the development tools like gcc (a C compiler) and Tcl/Tk (for building GUIs), because you will need them if you want to compile programs for your machine. You may end up doing this more often than you’d like, because some software will only be available in source-code format, and you will have to make your own binary.

Also make sure that you mount some of your DOS partitions so that they can be accessed from Linux. This will give you a way to pass information back and forth when you are running a dual-boot system.

If you intend to run windows programs in emulation mode under linux, then make sure you install wine (usually available on most linux CDs, but you can get it from www.winehq.com). You will have to edit the file wine.conf to tell wine where to find disks and important windows directories. It’s not too difficult for anyone that’s edited autoexec.bat or config.sys on their dos machine. Additionally, wine is not perfect, so you can only expect to run a few programs with it. The next section will talk more fully about this subject.

How do I run my Windows/DOS Chess Software Under Linux?

Here you have several alternatives. The simplest is really cheating – you boot into windows/DOS instead of linux. To do this, you need to have a program like partition magic or LILO (the linux loader, a discussion of which is beyond the scope of this article). So you need to reboot whenever you want to do chess tasks.

The next alternative is to run a program that creates a virtual machine (sort of like a computer within a computer) under linux. If you go this route, you will see a separate window on your desktop that runs all your windows 9X/NT programs. You will actually have to "boot" windows within this virtual machine. So far there are only a few virtual machine programs for linux. I have had some experience with vmware (www.vmware.com) All the windows programs I have tried run fine using this program. Some DOS programs have a little trouble with the mouse, but that will probably improve.

The third alternative is to run wine (see previous section of this article). If you have installed and configured wine properly, then you can run the following programs:

  • Genius 4.0 - You can find genius 4.0 on the genius gold CD.
  • Shredder 3.0 - Needs to be installed under linux, due to CD-based copy protection, but YMMV.
  • Blitzin – I have not verified it, but winehq shows blitzin as running under wine.
  • Chessbase demo - I also have seen a report that the old chessbase demo runs under wine. I have not tried this though.

Chessmaster 5500, 6000, Fritz 4-5.32, Chessbase 7.0, Chess Assistant 3.0, 4.0, Studies, Chess Mentor, Power Chess, CT-ART, Middlegames and Chessica do not currently run under wine. This may change in the future, because wine is constantly evolving.

A program called dosemu can also be used to run DOS-based chess software. I have seen reports of early versions of Fritz, Genius and Mchess running under dosemu. Rebel does not run under dosemu. . I personally have not verified any of these reports, because I have not yet installed dosemu on my machine.

Linux Native Chess Programs

Here your choices are somewhat restricted. There are a few playing programs, and two database programs available (one of which is fairly mature). As of this moment, all of them are free. Most of the playing programs use Xboard (a free GUI for chess engines) as their user interface. Xboard provides a graphical board, along with menus for changing time controls, loading PGN games, etc. However, you will need to read some documentation to figure out how to set up and use the program. The best source of Xboard information is Tim Mann’s web page.

So you should first download and install Xboard. The easiest way is to probably install it from your linux CD – because Xboard is included with many distributions. Once you have Xboard installed, you should troll around the net and download some Xboard engines. While some of the engines will need to be compiled, most are provided in binary form. Currently, Crafty, Phalanx and Gnuchess are probably the most popular. You can get crafty from various sources, or you can just go to Bob Hyatt’s web page directly.

You can also use Xboard as an interface to the internet chess servers. If you do this, you’ll also want to download the timeseal program from the FICS site.

Currently, the most mature linux database program in existence is Scid. You can get Scid from Shane Hudson’s web page. You will need to compile it for your system - however, it is worth the trouble. Scid has support for variations in the game score, header, position and material searches along with a chess tree! If you have used CDB for windows, then you have an idea of the level of functionality that Scid provides. You can also use crafty (or other Xboard compatible engines) for analysis. Shane is also coming out with a new version soon, which will incorporate many wondrous new features.

Here are some other links of interest.

Crafty - A famous freeware program, available from Bob Hyatt's site. Crafty also supports multiple processors. There are some RPMs available out on the net, if you don't want to compile it.
Yet Another Chess Database - I haven't gotten a chance to look at this program yet, but check it out.
Gnome Chess - It looks like an Xboard clone, but with Gnome look and feel.
Knightcap - This playing program has been around a while, go check it out..
KDE Applications - Check here - there are some new KDE chess programs becoming available.
X11 Network Chess - for playing over the net without using an ICS
Knight's Chess - A KDE-based ICS interface
Chessbrain - An effort to create a chess engine using a distributed computing framework

The Future?

As you can see from this article, Linux is not quite ready for prime time. However, it is moving quickly, and there are market forces at work which will propel it farther. Clearly, there is intense interest in the OS, but the lack of chess programs is a troubling problem for readers of this page. This is and unfortunate example of the "chicken before the egg" principle. Most developers do not want to take a "build it and they will come" attitude because of the time and effort involved with constructing a useful chess program.

Currently, there are a reasonable number of chess engines for Linux. However, most of them employ Xboard as a front-end. While Xboard is a very good program, it is still tough to use for many people (witness the number of winboard questions on the newsgroups and in CCC). Xboard needs to become easier to use, or another UI (possibly using the Xboard protocol) needs to be constructed. This UI should support things like variations in the game score, an opening book editor, and rudimentary database capabilities.

As far as databases go, Shane Hudson has really done an excellent job with Scid. It has most of the functionality that people require to do game analysis. It is missing some bells and whistles, but the program gives you about 75% of what the commercial windows offerings have.

Right now there are no tutorial programs for Linux. None of the current tutorials run under wine, so there is a job or maybe "opportunity" for someone here. I’m no expert, but it seems as though a decent tutorial program could probably be written entirely in Tk/Tcl.

Well, that’s it for all. I hope you’ve gotten something useful out of this article!

Resources for developers

Linux Development Tools
GUI Development under Linux
Linux Online Development Resources
Mainsoft - they are coming up with a way to directly port programs developed for win32s

Click on my name to send me e-mail (must have javascript on)