bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Hyper gammon


From: Philippe Michel
Subject: Re: Hyper gammon
Date: Mon, 27 Jun 2022 22:33:28 +0200

On Mon, Jun 27, 2022 at 05:35:01PM +0000, Ian Shaw wrote:

> I’ve just tried it, but the command makehyper is no longer supported. 

I don't have a Mint distribution installed, but on Ubuntu (it should be 
very similar), makehyper in present in /usr/games and can create an 
hypergammon database.

It creates it in the current directory and then you have to copy it in 
the expected place. This is where it gets awkward.

Help / About GNU Backgammon / Evaluation Engine shows:
...
 * Weights file and databases installed in:
   - /usr/share/gnubg

and indeed the weights file, match equity tables, one-sided bearoff 
database, 3D board textures files, etc... are there. On the other hand 
the default two-sided database, gnubg_ts0.bd, is in /var/lib/gnubg and it 
is there that gnubg looks for hypergammon databases. Tracing its launch 
shows something like:
...
openat(AT_FDCWD, "/var/lib/gnubg/gnubg_ts0.bd", O_RDONLY) = 3
newfstatat(AT_FDCWD, "/var/lib/gnubg/gnubg_os.bd", 0x7ffcbda01e50, 0) = -1 
ENOENT (No such file or directory) 
newfstatat(AT_FDCWD, "/var/lib/gnubg/gnubg_ts.bd", 0x7ffcbda01e50, 0) = -1 
ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/var/lib/gnubg/hyper1.bd", 0x7ffcbda01e50, 0) = -1 ENOENT 
newfstatat(AT_FDCWD, "/var/lib/gnubg/hyper2.bd", 0x7ffcbda01e50, 0) = -1 ENOENT
newfstatat(AT_FDCWD, "/var/lib/gnubg/hyper3.bd", 0x7ffcbda01e50, 0) = -1 ENOENT
...

I suspect this is the case on all Debian derivatives.

A few years ago the Debian package had no two-sided database. I had an 
exchange of mails with Russ Allbery, who maintains the package, where I 
convinced him that it was a serious shortcoming, that the TS default 
database was not that big and quick to build at install time on current 
hardware and that he really should either include it or build it at 
install.

Apparently he chose to build it but cannot write in /usr so he put it in 
/var/lib, and other additional databases (larger bearoff databases, 
hypergammon databases) are expected to be there as well.

What is confusing is that the Evaluation Engine help does not expect the 
data files to be split between two places and that this setup does not 
seem to be well documented.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]