There is also
PyChess. It's available for both Windows and Linux (but originally developed for Linux I think). A load of features, and you can install the Stockfish engine, which is the best one around (or close enough). This game is free to download (and the Stockfish engine is free too).
Think this is the program I tried a while back, and there were some pretty interesting exercises.
If it's not the same, it would be interesting to re-locate it. The game had some pretty cool exercises, where you had to arrive at a certain board situation in X moves, or find the only way out of a sticky situation, and then some memory exercises too, where you tried to play ahead games in your head, by just noting down the moves in a list. You scored higher if you got the "right" moves correct, especially early on.