Chess
Recommended articles
Related articles
Applicable from openSUSE-42.3 to 15.1
Chess
Linux chess software generally is separated into a "front end" application and a "chess engine". There are also "chess databases". While only gnuchess and phalanx "chess engines", and gnome-chess & knights chess "front ends", and chessx "chess database" come with openSUSE, there are many "chess engines" and "chess databases" that run under openSUSE and most important ones are in the packman repositories. This openSUSE chess game guide provides a list of some of these chess applications.
As a number of these applications are only available now on the Packman repositories from openSUSE-11.x it is suggested you add these to your repository list in YAST or go to the appropriate Packman web page and install them via the one click install. In particular the Xboard front end is now there.
Front End Applications
Front end applications include:
- Gnome-chess is a chess client for Gnome and is in 15.1 repository.
- Knights is a chess client for KDE - rpm available SUSE 10.x onwards
- Polyglot is a a "UCI adapter". It connects a UCI chess engine to an xboard interface such as WinBoard or xboard itself. The Packman repository has Polyglot packaged for openSUSE-11.x onwards.
- XBoard runs in any X window environment - rpm was packaged with SUSE 10.x but is now obtained from the Packman repository from openSUSE-11.x onwards. Various examples of how to use xboard are given later.
Chess Engines
Chess Engine Overview
A chess engine of which there are many, including some commercial that can interact with the above front ends as they use the Xboard or UCI protocol. They include:
Crafty
Crafty is available in the Packman repository packaged for openSUSE-11.x onwards as an rpm.
In addition, with that openSUSE Education or Packman repository packaged version of crafty installed, and with xboard installed, crafty can then be run by the command:
xcrafty
or alternatively with xboard installed, run in the more traditional manner with
xboard -size medium -fcp crafty
Some more guidance on Crafty use is given here
Fairymax
Fairymax is available in OpenSUSE 15.1 from repository. It uses Xboard. See FairyMax. It was developed from micro-Max.
Fruit
Fruit is available as freeware in Linux and Windows versions. The Windows versions runs with the "arena" GUI frontend and wine. The "MS-Windows" executable has been successfully tested with "wine" on openSUSE-10.3 and 11.0. Fruit21 is available in the Packman repository packaged for openSUSE-11.x onwards as an rpm.
Fruit needs the front end combination polyglot/xboard installed to run (see above Front End section in this wiki). With those two front ends installed, the Packman packaged version of fruit can be run with the command:
xfruit21
or alternatively with polyglot/xboard run with the more traditional method to create a polyglot-compatible ini-File and run:
xboard -size medium -fd '/PATH_TO_INI_FILE/' -fcp 'polyglot NAME_OF_INI_FILE.ini'
for example:
xboard -size medium -fd '/usr/share/fruit21' -fcp 'polyglot fruit21.ini'
Glaurung
Glaurung was originally a chess program for Mac OS/X which can be made to run under Linux with XBoard and PolyGlot. It is not not provided with openSUSE 15.1 but it was historically packaged by Packman packagers.
Glaurung needs the front end combination polyglot/xboard installed to run (see above Front End section in this wiki).
GNUChess
GNUChess is packaged with openSUSE-10.x onwards. Simply install the openSUSE provided rpm from OSS repository or one's installation DVD:
Phalanx
Phalanx is packaged with openSUSE-10.x onward. Simply install the openSUSE provided rpm from OSS repository or one's installation DVD.
Stockfish
- Stockfish 10 is in the open-SUSE 15.1 repositories as stockfish. This has evolved into the strongest chess engine being based on glaurung 2.1 and it can be made to run under Linux with XBoard and PolyGlot. Most would also use it with Scid to analyse their own games. Stockfish 2 is packaged as stockfish20 in the Packman repository packaged for openSUSE-11.x onwards as an rpm.
Chess Databases
Scid
The chess database scid ("Shane's Chess Information Database") also comes (and works ok) is available in the Packman repository packaged for openSUSE-10.x onwards as an rpm. In addition to recording games in a database, Scid can be used with a chess engine to playback and analyze the moves in a game.
- Scid sourceforge: http://scid.sourceforge.net/
- Packman: http://packman.links2linux.de/package/scid
Scid is packaged with openSUSE and can be installed from the OSS-repo via YaST or with
zypper install scid
Implementation Catches
The software might have bugs. For example Knights was unstable in openSUSE 10.3. The stability issue may be resolved by installing jack audio libraries. Xboard defaults to using crafty which was fine in openSUSE 10.2 as it is supplied, but as it is not in default openSUSE 10.3 you had to set it up to call GNUChess vis:
xboard -fcp gnuchessx -fd /usr/share/gnuchess -size medium
Alternatively in 10.3 and 11.0 you can custom compile crafty (as explained above), add the crafty executeable to your PC's path, and the Xboard call to crafty will work. Or in 11.x you can install the Packman packaged crafty and xboard.
Xboard - more examples of its use
Since most of the programs above can use the xboard front end, below are some hints as to its use.
First xboard example
The first example illustrates how to play two chess programs against each other, with scorpio vs crafty, where they are both xboard/winboard compatible:
xboard -size medium -fd '/path/to/scorpios_ini_file/' -fcp /path/to/scorpio_executable/scorpio -scp crafty
when using the Packman packaged versions of scorpio and crafty would be:
xboard -size medium -fcp scorpio22 -scp crafty
.
Second xboard example
A second example, is fruit vs glaurung, where both programs require polyglot to interface to xboard:
xboard -size medium -fd '/PATH_TO_GLAURUNGS_INI_FILE/' -fcp 'polyglot NAME_OF_GLAURUNGS_INI_FILE.ini' -sd '/PATH_TO_FRUITS_INI_FILE/' -scp 'polyglot NAME_OF_FRUITS_INI_FILE.ini'
when using the Packman packaged versions of fruit and glaurung would be:
xboard -size medium -sd '/usr/share/glaurung22' -scp 'polyglot glaurung22.ini' -fd '/usr/share/fruit21' -fcp 'polyglot fruit21.ini'
.
Third xboard example
A third example is glaurung vs gnuchess, where glaurung requires polyglot to interface to xboard, but gnuchess does not require polyglot:
xboard -size medium -sd '/PATH_TO_GLAURUNGS_INI_FILE/' -scp 'polyglot NAME_OF_GLAURUNGS_INI_FILE.ini' -fcp gnuchess -fd /usr/share/gnuchess -tc 15 -mps 60
The above example specifies 60 moves in 15 minutes for the time control and again, using the Packman packaged versions of glaurung and gnuchess
xboard -size medium -sd '/usr/share/glaurung22' -scp 'polyglot glaurung22.ini' -fcp gnuchess -fd /usr/share/gnuchess -tc 15 -mps 60
.
xboard general
The engine started with "-fcp" (and "-fd" if needed) always plays white while the engine started with "scp" (and "-sd" if needed) plays black.
One can learn more about xboard commands by typing
man xboard
There are also many sites on the Internet, giving intructions in xboard use, such as:
- http://linux.about.com/library/cmd/blcmdl6_xboard.htm
- http://www.chemie.fu-berlin.de/chemnet/use/info/xboard/xboard.html