PySolFC

An awesome open source and portable collection of Solitaire games.

Github stars Tracking Chart

PySol Fan Club edition

This is an open source and portable (Windows, Linux and Mac OS X) collection
of Card Solitaire/Patience games written in Python. Its homepage is
http://pysolfc.sourceforge.net/ .

The maintenance branch of PySol FC on GitHub by Shlomi
Fish
and by some other
people, has gained official status, ported the code to Python 3,
and implemented some other enhancements.

  • Build Status
    AppVeyor Build status

Screenshots

Image

Requirements.

Installation.

We provide an installer for Windows
as well as an Android package on F-droid.

For installation from source, see: http://www.python.org/doc/current/inst/

Running from source without installation.

You can run from the source directory:

python pysol.py

After following steps similar to these (on
Mageia Linux ):

Step 1 - install the dependencies

On Mageia you can do:

sudo urpmi git make pygtk2 pygtk2.0-libglade gnome-python-canvas tkinter

On Debian / Ubuntu / etc. you can do:

sudo apt-get install -y cpanminus libperl-dev make perl python-glade2 python-gnome2 python-gnome2-dev python-gtk2 python-setuptools python-tk

Step 2 - build PySol.

git clone https://github.com/shlomif/PySolFC.git
cd PySolFC
# Now make sure you have installed the dependencies.
gmake test
gmake rules
ln -s data/images images
tar -xvf PySolFC-Cardsets-2.0.tar.bz2 # Need to be downloaded from sourceforge
mkdir -p ~/.PySolFC
rmdir ~/.PySolFC/cardsets
ln -s "`pwd`/PySolFC-Cardsets-2.0" ~/.PySolFC/cardsets
python pysol.py

Note! If you are using a Debian derivative (e.g: Debian, Ubuntu, or
Linu Mint) and you are getting an error of "No cardsets were found !!! Main
data directory is [insert dir here] Please check your PySol installation.",
then you likely installed the cardsets package which has removed some files
that are needed by pysol from source (without the debian modifications).

Please uninstall that package and use the cardsets archive from sourceforge.net
per the instructions above.

Installing from source and running in a python venv (virtual environment)

At the moment, this only works on POSIX (Linux, FreeBSD and similar) systems.
Windows and Mac users - you'll need to chip in with a script for your system.

1 - Install build prerequisites: six and random2

This is kind of stupid and maybe it can be fixed in the future, but for now:

pip install six
pip install random2

You may want to use your OS distribution package system instead, for example:

sudo apt-get install python-six
sudo apt-get install python-random2

2 - Clone the source from version control

git clone git://github.com/shlomif/PySolFC.git
cd PySolFC

3 - Create your virtual environment.

PKGDIR=/usr/local/packages/PySolFC # or whatever
export PKGDIR
mkdir -p "$PKGDIR"
( cd "$PKGDIR" && python -m venv ./env )

4 - Run the install script

./contrib/install-pysolfc.sh

5 - Put cardsets into place as above.

6 - Enjoy playing

"$PKGDIR"/env/bin/pysol.py

Alternate toolkit.

  • Kivy (10.0 or later)

  • Features:

    • Sound support integrated.
    • Android apk build support.
  • Running from source without installation:

python pysol.py --kivy

Configuring Freecell Solver

If you want to use the solver, you should configure freecell-solver
( http://fc-solve.shlomifish.org/ ) by passing the following options
to its CMake-based build-system:
-DMAX_NUM_FREECELLS=8 -DMAX_NUM_STACKS=20 -DMAX_NUM_INITIAL_CARDS_IN_A_STACK=60.

Install Extras.

Related:

Other open source solitaires:

  • solitaire.gg - web-based and written in Scala
  • Solitairey - web-based written in JavaScript
  • KPat - desktop-based for KDE.
  • Aisleriot - desktop-based by the GNOME project with relatively limited functionality.

Screencasts:

Chat

To facilitate coordination about contributing to PySol, please join us for a
real time Internet chat on
the ##pysol chat room on
Freenode (note the double
octothorpe/hash-sign/pound-sign) . We may set up
chat rooms on different services in the future.

In addition, we set up a
Google Group for discussing open source card games
which will also be used for discussing PySol. Feel free to subscribe or post!

Main metrics

Overview
Name With Ownershlomif/PySolFC
Primary LanguagePython
Program languageTcl (Language Count: 7)
Platform
License:GNU General Public License v3.0
所有者活动
Created At2012-03-10 09:51:40
Pushed At2025-08-23 21:57:25
Last Commit At2025-08-23 17:55:39
Release Count42
Last Release Namepysolfc-3.4.1 (Posted on 2025-08-23 17:56:46)
First Release Namepysolfc-2.1.0 (Posted on 2017-11-15 23:49:06)
用户参与
Stargazers Count508
Watchers Count29
Fork Count109
Commits Count2.5k
Has Issues Enabled
Issues Count349
Issue Open Count110
Pull Requests Count141
Pull Requests Open Count0
Pull Requests Close Count35
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private