bugXBoard - Bugs: bug #27687, [FR] fallback to GNU Chess if...


bug #27687: [FR] fallback to GNU Chess if Fairymax not found

Submitter:  Michael Shigorin <gvy>
Submitted:  Tue 13 Oct 2009 10:17:53 AM UTC
Category:  None Severity:  3 - Normal
Item Group:  None Status:  Fixed
Assigned to:  None Open/Closed:  Closed
Release:  None
* Mandatory Fields

Add a New Comment (Rich Markup)

Comment Type & Canned Response:
       No canned response available


( Jump to the original submission )

Mon 11 Jul 2011 10:18:37 PM UTC, comment #12: 

Not yet, just back from lvee.org conference
...well, g1becd44 did accept /usr/bin/gnuchess when instructed by hand in fairymax absence; a fast grep suggests that it's not searched for indeed.


Michael Shigorin <gvy>
Mon 11 Jul 2011 03:35:36 PM UTC, comment #11: 

Hi Michael

did you manage to test the latest version?


Arun Persaud <apersaud>
Project Administrator
Fri 24 Jun 2011 12:07:38 PM UTC, comment #10: 

Thanks, will try and get around to xboard package.

Michael Shigorin <gvy>
Wed 22 Jun 2011 04:02:30 PM UTC, comment #9: 

solved with introduction of Load Engine menu dialog; we fall back on -ncp mode now, which is more logical, as GNU Chess need not be there either

Let us know if it works for you

Arun Persaud <apersaud>
Project Administrator
Tue 13 Oct 2009 05:33:04 PM UTC, comment #8: 

My long-term vision to solve this issue is to add a menu-dialog similar to the WinBoard startup dialog to both the WinBoard and XBoard regular menus. So that it is possible to use -ncp mode as default at startup, and select the engine(s) or ICS later. There already is an item "ICS Clent" in the mode menu, but it acts only as an indicator that you that you are in ICS mode, and is grayed out when you are not. It could be made active in any mode, and when you click it pop up a dialog to select an -icshost and -icshelper, and switch to ICS mode.

The engine and ICS selection dialogs wuld present you with a choice that was pre-programmed through the -chessPrograms option, similar to the -firstChessPrograms and -secondChessPrograms options that currently exist in WinBoard. (I see no reason for the choices offered for first and second engine to be different, though.) The value of this string option would of course be saved in an ini file.

It should also be possible to type your own engine command rather than just click one of the pre-programmed choices (as is currently the case in the WinBoard startup dialog), but in addition it should then be able to tick a checkbox that would add the selected engine at the front of the -chessPrograms string (and delete it in its original place if it already occurred, so that it is easy to shuffle an existing list). And perhaps a button should be provided to delete the currently selected engine from the list. Of course there should be a browse button as well, so that people would not actually have to type the name of the engine executable, but can navigate to it. Of course all that functionality could be added to the WinBoard startup dialog while it is still only a startup dialog as well, and perhaps this should be the firt step.

H.G. Muller

Tue 13 Oct 2009 04:38:08 PM UTC, comment #7: 

> and have the xboard package require that

Local engine isn't actually required, as I was corrected in my age-old assumptions.  Otherwise, yes, at least on RPM side you're right.

But that's quite another side of the story, I was wondering whether it's really neccessary to route people through error messages and FAQ, or just find something to use (presenting the user with the choice of locally existing engines is ok, maybe if only one item left to choose it could be auto-chosen).

PS: wrt forking, I understand that it's pretty undesirable, of course.  Thanks!

Michael Shigorin <gvy>
Tue 13 Oct 2009 04:26:25 PM UTC, comment #6: 

I think this could be improved a lot within the package management systems.  For instance, in ubuntu, I notice the xboard package does this:

Recommends: xfonts-75dpi | xfonts-100dpi
Suggests: gnuchess | phalanx, x-terminal-emulator

Unfortunately it seems the "suggests" line doesn't cause any suggestion to actually be given to the user in most cases, or at least not where he will see it.  But one could move the chess engines to "recommends", and then I think they would get installed by default.

I think if they are separated by "|" the user will get prompted as to which one(s) he wants instead of just getting them all.  I haven't checked that, though.

Another idea is to have the chess engine packages do something like "Provides: xboard-chess-engine" and have the xboard package require that.  Then I'm pretty sure apt will make the user choose at least one to install.

The provides/requires thing should work with RPM too, I think.

I'm far from an expert on these packaging technologies, though, so the above are just ideas to try, not something I'm sure will work out well.

Tim Mann <mann>
Project Administrator
Tue 13 Oct 2009 12:42:30 PM UTC, comment #5: 

No, that is not needed. What you propose comes over quite well. The matter is just if we want it or not. You should realize that XBoard currently is kind of a backward version of WinBoard, and that we are working to port WinBoard functionality to XBoard. So naturally we don't want XBoard to go off in its own direction.

WinBoard solves the engine problem through a startup menu, where a configuration file contins a list of engines, from which the user can select one from a combo box.

H.G. Muller

Tue 13 Oct 2009 12:28:30 PM UTC, comment #4: 

It might be an option for a few well-known (and expected) cases; that way, if some supported engine is installed, the user gets it since presumably the engine was installed on purpose; and if not, the default route should really be going -ics way and not popping up a message to be googled down in FAQ.

If there are a few engines, using the first one found seems logical (guess the list might start with fairymax as per your explanation).

I can propotype in shell what I mean, would it make a better bugreport then?

Michael Shigorin <gvy>
Tue 13 Oct 2009 12:20:52 PM UTC, comment #3: 

Well, "software just working" is not an option for softare that has the purpose of suporting other software (such as a GUI for an engine). The main culprit here is the package management system, which fails to recognize a dependency between XBoard and its default engine, so that the latter is not automatically installed when you install XBoard.

Now in general I am strongly in favor of solving problems where they are, rather than trying to work around them in a cumbersome way (and thereby leaving the true problem and reducing the probability that it will ever be solved).

Now in this particular case I guess that the package maintainers also have a pont, namely that XBoard also has enough functionality (ICS client, PGN viewer) to make a dependency on an engine undesirable. So perhaps we should bow to this. But then it is illogical to make running an engine the default mode, and we should really make -ics mode the default, connecting people immediately to FICS if they run XBoard without arguments. (That is probably better than -ncp mode.)


Tue 13 Oct 2009 12:01:30 PM UTC, comment #2: 

> You just have to install the proper binary.

...and read FAQ.html :) (which I did)

OK, I'll try to invent something package-wise; this bug is thus invalid (though programmatic fallback still looks way better to me than listing predictable things in FAQ and having people going through that instead of software just working).

Michael Shigorin <gvy>
Tue 13 Oct 2009 11:53:36 AM UTC, comment #1: 

There are just to many different Chess engines nowadays to make that feasible. GNU Chess is one of the least likely that people would want to use. So should we make it try Phalanx or Crafty? Or perhaps Polyglot+Fruit or Polyglot+Glaurung?

The problem is that XBoard is also useful without engine (for ICS play), and thus no dependency will be listed for the package manager. So it will be run by people that have no engine at all.

The only way I see that would solve this once and for all would be to actually bundle XBoard with an engine. And in that case I would prefer to bundle it with Fairy-Max, because it is tiny.

B.t.w., I think tht the old behavior is preserved. XBoard does work in the presence of a Chess binary. You just have to install the proper binary.

H.G. Muller

Tue 13 Oct 2009 10:17:53 AM UTC, original submission:  

Seems reasonable that the previous behaviour be preserved -- that is, that xboard works in presence of chess binary.  Could you please implement the fallback?  I could try and come up with one but my C skills are rather lacking/forgotten.

TIA :)

Michael Shigorin <gvy>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by apersaud (Updated the item)
  • -email is unavailable- added by mann (Posted a comment)
  • -email is unavailable- added by gvy (Submitted the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.





    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2012-01-22 apersaud StatusReady For Test Fixed
        Open/ClosedOpen Closed
    2011-06-22 apersaud StatusPostponed Ready For Test
    2009-10-20 apersaud StatusNone Postponed

    Back to the top

    Powered by Savane 3.9