This file is indexed.

/usr/share/doc/freecell-solver-bin/README.board_gen is in freecell-solver-bin 3.20.0-1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
1. Introduction
---------------

This sub-directory contains programs that can generate the Freecell board of
several popular Freecell implementations, in the format understood by 
Freecell Solver.

They include:

make-gnome-freecell-board:
    Generate the boards of the standalone Freecell program that comes with the
    GNOME desktop.

make-aisleriot-freecell-board
    Generate the Freecell boards of GNOME's AisleRiot.

make_pysol_freecell_board.py
    A Python script that generates the boards of the various games of PySol.

pi-make-microsoft-freecell-board
    A program that generates the boards of Microsoft Freecell and 
    Freecell Pro.

make-microsoft-freecell-board
    A program that generates the Freecell board according to the 
    MS-Freecell/Freecell Pro shuffling algorithm but not according to its
    randomization method. One should probably use 
    "pi-make-microsoft-freecell-board" instead.

2. Building
-----------

Typing "make" in the main directory of this distribution will build those
programs, and "make install" will install them for you.

The PySol board generation program is written in Python so it 
doesn't need to be built.

3. Invocation
-------------

The programs accept the board number as their single command-line argument,
and output the board to the standard output. 

"fc-solve" and "fc-solve-debug" read the board from the standard input in case
the board file is "-" or unspecified. Therefore, you can solve a given board
like that:

# [Board Generation Program Name] [Board Number] | fc-solve

For example, to solve GNOME's Freecell board No. 15789:

# make-gnome-freecell-board 15789 | fc-solve

make_pysol_freecell_board.py also accepts another optional argument which
specifies the game. Available games are:

     bakers_game          - Baker's Game
     bakers_dozen         - Baker's Dozen (Broken)
     beleauguered_castle  - Beleaguered Castle
     citadel              - Citadel
     cruel                - Cruel
     der_katz             - Der Katzenschwantz
     die_schlange         - Die Schlange
     eight_off            - Eight Off
     fan                  - Fan
     forecell             - Forecell
     freecell             - Freecell
     good_measure         - Good Measure
     ko_bakers_game       - Kings' Only Baker's Game
     relaxed_freecell     - Relaxed Freecell
     relaxed_seahaven     - Relaxed Seahaven Towers
     seahaven             - Seahaven Towers
     simple_simon         - Simple Simon
     streets_and_alleys   - Streets and Alleys

For example, to generate "Eight Off" board No. 168, type:
# make_pysol_freecell_board.py 168 eight_off

You can then use the "--game" option of Freecell Solver to solve this
particular game:

# make_pysol_freecell_board.py 168 eight_off | fc-solve --game eight_off

make-aisleriot-freecell-board accepts a subset of those game types as its
third parameters. The complete list so far is : 

* bakers_game
* beleaguered_castle
* eight_off
* freecell
* seahaven
* streets_and_alleys

If you wish the programs to print the 10 cards with "T"'s instead of
"10", then append a "-t" flag immidiately after the board generation 
program's name. For example:

# make_pysol_freecell_board.py -t 24
# pi-make-microsoft-freecell-board -t 11982
# make-aisleriot-freecell-board -t 890 seahaven 

4. Notes
--------

"make-gnome-freecell-board", "make-aisleriot-freecell-board" and 
"make-microsoft-freecell-board" all use the randomization routines of the
system's Standard C library (libc). Therefore, they will generate different
results on different systems. It is recommended that you run them on the same
type of system the game program is running on.

"make_pysol_freecell_board.py" and "pi-make-microsoft-freecell-board" on the
other hand use their own randomization functions, so they will run the same
on any platform.

"make_pysol_freecell_board.py" and "pi-make-microsoft-freecell-board" generate
the same boards for board numbers up to 32000.