Building Lucas Chess on Fedora
Building Lucas Chess from source on Fedora 35+ is fairly straightforward, but requires a couple of minor tweaks. The sources themselves, not the binaries, can be found on github; the linux binaries are built using Docker for Debian, but most of the dependencies are present in the Fedora repositories.
The first step is to clone the repository, and then install all the dependencies that Fedora provides:
git clone https://github.com/lukasmonk/lucaschessR.git lucaschessR # Run as root via sudo sudo dnf install python3-pillow python3-pyside2 \ python3-sortedcontainers python3-chardet \ python3-pyaudio cython python3-psutil \ python3-pillow
Unfortunately, python-chess is not available in Fedora's package repositories. We will use a python virtual environment to install it.
pushd /path/to/virtualenv/dir # modify as needed python3 -m venv --system-site-packages lucaschess source lucaschess/activate pip install python-chess
While the virtual environment is active, let's build Lucas Chess:
popd # to get back to parent directory of git checkout cd lucaschessR/bin/_fastercode bash linux64.sh # Check the output ls source/FasterCode.cpython* cd ../_genicons/ python3 gentema.py cd ../ # back to bin
At this point you should be able to run the final executable:
python3 LucasR.py
However, you will soon notice that the underlying engines are not yet built. The quickest (but not the best) way to "build" them is to use the pre-built binaries:
pushd bin/OS/linux bash RunEngines # sets the executable bit on a bunch of files popd
Now, all of the engines are available, but they are slower than they need to be. The best way to resolve the issue is to rebuild all of them, but for most purposes, you just need the latest stockfish anyway; let's just install it directly from the Fedora repositories:
sudo dnf install stockfish
The next time Lucas Chess is launched, add the system stockfish (which
is much faster than the version from Lucas Chess' repository) as an
external engine using the menu: Tools > Engines > External
engines. Create a new engine with binary file stockfish
and
directory /usr/bin
; Lucas chess will discover all other attributes.
Exit the binary and then restart it, since the newly added engine is
not always available until a restart. Now we can set the system
stockfish as our default tutor via the menu: Options >
Configuration > Tutor.