From LinuxReviews
Jump to navigationJump to search

Knights is a really nice chess game with support for playing against multiple computer chess engine opponents as well as online play against human opponents. It supports board themes, a few are included and numerous others are available as downloadable addons.

Features and usability

Knights is easy to use. Simply click the New Game icon or choose Game, New from the menu and choose if you want a computer opponent or an online opponent. Online play requires an account - however, the default suggested server,, has a magical account you can use by logging in with username guest and password guest. That brings you right to a list of opponents you can choose from.

You can easily find a human opponent for some quick play by using the "guest" account on an online server like]]

Knights supports themes. The old version for KDE 3.5 used to come with 15 different boards and 15 different chess-figures. The "modern" version comes with just 5 themes and 4 of them are ugly. That's alright, Settings -> Themes has the option to Get New Themes.. and there are many nice ones available for download.

Knights version 2.6.0 with the "Tux" theme

Knights supports loading and saving of games in the "Portable Game Notation" format. It's pretty standard.

Configuring Computer Opponents

Knights supports both the XBoard and the UCI protocols used by common chess engines. You do need to make sure you have at least one installed.

Installing a package called stockfish, which is available on most distributions, will do fine. stockfish uses the UCI protocol by default and that's all it's able to speak, so you only need to add it with the command stockfish and protocol UCI in Settings ▸ Configure Knights... ▸ Computer Engines if it's not auto-detected by Knights.

Knights needs to have the GNU Chess engine gnuchess configured with some quirks or it won't work. Chess engines can be manually specified in Settings ▸ Configure Knights... ▸ Computer Engines. This configuration view lets you add or edit chess engines using the fields "Name", "Command" and "Protocol". Knights will fill in a row with GNU Chess if the gnuchess binary is detected - but it won't give it any options. That's a problem because GNU Chess will, by default, start in a terminal mode. It does support the two common chess protocols Knights supports: UCI and XBoard. gnuchess -u and --uci starts it in UCI mode and -x and --xboard starts it in XBoard mode. You will have to add either -u or -x to the Command field in Knights and set the protocol correctly (set UCI if you set the command to gnuchess -u). The Knights program will, foolishly, start showing a red X indicating that it can't find gnuchess once you add an option to it. Don't worry about that, you'll still be able to use it when you start a new game as long as it's configured correctly.

You will get two scripts called gnuchessu and gnuchessx if you install GNU Chess (6.2.8) from source. GNU/Linux distributions don't tend to include those for some reason. You could make your own if you want to:

{{config file|gnuchessu|

# Start GNU Chess in UCI mode, i.e. to behave as a UCI chess engine.
gnuchess --uci ${1+"$@"}

Knights will show a green check-mark next to the GNU Chess engine in it's configuration dialog if you make a script like that and configure the command to be gnuchessu in Knights. It will otherwise make absolutely no difference.


Knights is a really nice chess interface and it is overall the best-looking and most easy to use program of it's kind available for modern Linux systems. You'll want to have it installed if you enjoy playing chess regularly or occasionally.

Chess games ordered by recommendation:
Lichess | Knights | Pychess

Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.