• Stars
    star
    449
  • Rank 97,328 (Top 2 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 12 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A comprehensive, feature-rich, open source, and portable, collection of Solitaire games.

PySol FC logo

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 https://pysolfc.sourceforge.io/.

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.

  • CI tests at GitHub AppVeyor Build status

Call for Contributors

Shlomi Fish, who adopted PySol FC, and maintained it for several years, has stepped down as its primary maintainer due to the fact he no longer plays PySol, or other computer card games too much and that it has been a time sink for him. (Also see this Twitter discussion ). We are looking for other contributors and there are still some large-scale features that can be implemented.

Screenshots

Screenshot of PySol FC

Requirements.

Installation.

We provide an installer for Windows (requires Windows XP SP3 or higher) as well as an Android package on F-droid.

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 Fedora you can do:

sudo dnf builddep PySolFC

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 cpanminus make perl python3-setuptools python3-tk

Step 2 - build PySol.

You can try running:

python3 scripts/linux-install.py
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 # Needs 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 Linux 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, random2 and pysol-cards

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

pip install six
pip install random2
pip install pysol-cards

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

For Pillow compilation, libjpeg headers and libraries need to be available:

sudo apt-get install libjpeg-dev

2 - Clone the source from version control

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

3 - Create your virtual environment.

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

4 - Run the install script

./contrib/install-pysolfc.sh

5 - Put cardsets into place as above.

6 - Enjoy playing

"$PKGTREE"/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

Android App

On the basis of Kivy an Android App is also available. You may build your own using appropriate build instructions in README.android and in Directory buildozer.

Some versions will also be published on F-droid (https://f-droid.org)

Configuring Freecell Solver

If you want to use the solver, you should configure freecell-solver ( https://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 repositories and links

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!

More Repositories

1

fortune-mod

Implementation of the Unix fortune command for displaying a random quotation, for Linux and other systems.
C
332
star
2

primesieve-python

Fast prime number generator. Python bindings for the primesieve C++ library
Cython
133
star
3

what-i-learned-from-porting-to-freebsd

What I Learned from porting my projects to FreeBSD
115
star
4

fc-solve

Freecell Solver - a C library for automatically solving Freecell and some other variants of card Solitaire
C
56
star
5

Freenode-programming-channel-FAQ

A Frequently Asked Questions List of the Freenode ##programming Channel.
Python
46
star
6

Bezier-Envelope-for-Inkscape

The Bezier Envelope Extension for Inkscape
Python
28
star
7

catable

CATAlyst BLog Engine - written by perl cats
Perl
17
star
8

what-you-should-know-about-automated-testing

What you should know about automated software testing
Perl
14
star
9

testing-static-sites

Ideas for automated tests of static web sites
Makefile
14
star
10

perl-XML-LibXML

The XML-LibXML CPAN Distribution for Processing XML using the libxml2 library
Perl
14
star
11

gtk3-cmake-examples

gtk3 and cmake examples
CMake
13
star
12

how-to-share-code-online

How to share source code on online forums in order to get help with it
12
star
13

shlomi-fish-homepage

Shlomi Fish’s Homepage Sources - www.shlomifish.org
HTML
11
star
14

mastering-perl

Previously a copy of the book Mastering Perl as published by O'Reilly. Now Removed.
11
star
15

perl5-for-JavaScript

microperl fork (http://themucker.github.io/plu/)
C
9
star
16

perl-XML-RSS

The Repository for the CPAN XML::RSS module for parsing and generating various versions of RSS.
Perl
9
star
17

Summerschool-at-the-NSA

"Summerschool at the NSA" - a screenplay. Two Hollywood actresses in 2013 conspire to kick the ass of the National Security Agency (NSA), using special warfare that is completely non-violent.
Shell
8
star
18

shlomif-computer-settings

Shlomi Fish's personal software settings/dot-files/etc.
Shell
7
star
19

PySolFC-Cardsets

PySolFC Cardsets repository
7
star
20

perl5-for-JavaScript--take2

perl5 for JS via Emscripten.
C
6
star
21

perl-Config-IniFiles

The Config-IniFiles CPAN Distribution
Perl
6
star
22

rinutils

C11 / gnu11 utilities C library by Shlomi Fish / Rindolf
C
5
star
23

shlomif-snippets

My Collection of various short, exploratory or demonstrative code files in Perl, Python and other langs
Perl
5
star
24

gringotts

A Secure Notes Manager
C
5
star
25

Inline-Ruby

Embed and interact with Ruby code from within Perl 5
Perl
5
star
26

rebookmaker

Generate EPUBs from a .json metadata file and input HTML pages. A FOSS rewrite of setanta's "ebookmaker"
Python
5
star
27

black-hole-solitaire

Solvers and statistics for “Golf” solitaire, “Black Hole” solitaire, “All in a Row” solitaire and related card patience games.
Perl
5
star
28

my-real-person-fan-fiction

Why real person fanfiction could "hurt" actors but not singers, and what to do about it
Makefile
5
star
29

perl-graph-easy

cpan
Perl
4
star
30

vim-begin

The Vim Beginners’ Site
SCSS
4
star
31

app-notifier

HTTP Client/Server For Desktop Notifications
Perl
4
star
32

Text-Table

CPAN Distribution to render text / ASCII-art / Unicode tables
Perl
4
star
33

pysol_cards

Python library for dealing cards like PySol FC, MS Freecell/Freecell Pro, or PySol legacy
Python
4
star
34

shlomif-tech-diary

HTML
4
star
35

Human-Hacking-Field-Guide

A novella titled “The Human Hacking Field Guide” about teenage open source enthusiasts near Los Angeles, California
Shell
4
star
36

emcc-array-of-pointers-example

emcc array of C strings / C pointers example.
JavaScript
4
star
37

KlondikeSolver

Solitaire solver implementation for Klondike
C++
4
star
38

binary-puzzle-garden

Various programs to manipulate the so-called "Binary Puzzle"s which are featured on http://www.binarypuzzle.com/
Perl
4
star
39

docmake

Docmake is an automated builder from DocBook/XML to its output formats (e.g XHTML5 or PDF). It aims to be a saner replacement for xmlto.
Perl
4
star
40

perl-Statistics-Descriptive

The Statistics::Descriptive Perl 5/CPAN distribution
Perl
4
star
41

Graph-Easy-As_svg

The CPAN Distribution
Perl
3
star
42

Humanity-the-Movie

Sources for the screenplay for the Humanity (the Movie) - a parody about Humanity and modern life in particular.
Shell
3
star
43

vim-freecell

Vim helpers for viewing/editing freecell solitaire layouts and solutions
Vim Script
3
star
44

Fiction-XML

Fiction-Text, Screenplay-Text, Fiction-XML and Screenplay-XML.
Perl
3
star
45

Buffy-a-Few-Good-Slayers

A screenplay for a Buffy fanfiction set in 2014/2015 in a forked version of the Buffyverse.
Shell
3
star
46

perl-File-Dir-Dumper

Dump nested directory structures to a stream.
Perl
3
star
47

patsolve

A solver for Freecell and Seahaven Towers
C
3
star
48

abc-path

Solvers, Generators, etc. for the game ABC Path
JavaScript
3
star
49

perl-XML-LibXSLT

XSLT
3
star
50

writing-the-perfect-question

Jon Skeet's Writing the Perfect Question
Makefile
3
star
51

pysol-sound-server

pysol-sound-server to provide sounds and music for PySol FC. Maintenance fork with support for python 3 and future enhancements
C
3
star
52

pysolfc-website

sources for the pysolfc web site
HTML
2
star
53

better-scm

Sources of the Better-SCM Site
Perl
2
star
54

Math-Cephes

A Perl/CPAN Interface to the Cephes Mathematics Library
C
2
star
55

xxHash-wrapper

A wrapper for xxHash with some cmake glue
C
2
star
56

zenfilter

Small Python script used to filter TravisCI output
Python
2
star
57

python-vnu_validator

vnu validator wrapper
HTML
2
star
58

vim-screenplay-text

Vim Script
2
star
59

perl-begin

The Perl Beginners’ Site’ Sources
HTML
2
star
60

vim-faq-notes

2
star
61

Adrian-Ettlinger-Emails-Collection

Perl
2
star
62

HTML-Spelling-Site

Spell checking system/framework for an entire static HTML site.
Perl
2
star
63

shlomif-cmake-modules

CMake
2
star
64

test-xml-ordered

Perl
2
star
65

putting-cards-2019-2020

Summary of Rindolfism, Shlomi Fish's personal and dynamic philosophy, as of 2019-2020
Perl
2
star
66

Shlomi-Fish-Back-to-my-Homepage-Logo

The new incarnation of the Back to My Homepage Logo Based on the Logo from the film Back to the Future
Python
2
star
67

captioned-image--emma-watson-doesnt-need-a-wand

Captioned Image: Emma Watson played Hermione in the Harry Potters but she doesn't need a wand to kick your ass.
Makefile
2
star
68

fc-solve-site-assets

Freecell Solver's Site Assets (tarballs, downloads, etc.)
Ruby
2
star
69

quad-pres

Perl
2
star
70

SQL-Injections--danger-and-prevention

SQL Injections
Ruby
2
star
71

Docker-CLI-Wrapper

wrapper for the Docker CLI
Perl
2
star
72

Selina-Mandrake

Selina Mandrake - The Slayer: “caught between post-modernism and the New Age” - a screenplay
Shell
2
star
73

SQL-Abstract

The CPAN SQL::Abstract Module
Perl
2
star
74

MeToo-me-too

#MeToo me too! The collection of "sexual harassment" quotes where we show that sexy women (and men) are competent and respected
Makefile
2
star
75

pydistman

python "overkill DRY" distribution manager
Python
2
star
76

rakudo-git-master-install

Bash program to install rakudo perl6 git master
Shell
2
star
77

freecell-pro-0fc-deals

Finding zero freecells deals in the fc-pro range
Shell
2
star
78

perl-html-links-localize

Perl
2
star
79

cpan-smoke-auto-setup

Perl
2
star
80

html-tutorial

CSS
2
star
81

dzil-dist-ini-format-documentation

Proposed draft for Dist-Zilla's dist.ini's format document
2
star
82

shlomif-c-snippets

C (and some C++) snippets and short demonstration programs by Shlomi Fish and Friends
C++
2
star
83

Captioned-Image-Ayn-Rand-to-Christina-Grimmie

A captioned image reading "If Ayn Rand was born in the 1990s, she would be Christina Grimmie.".
Makefile
2
star
84

Star-Trek--We-the-Living-Dead

Star Trek Deep Space Nine: “We, the Living Dead” - a fan fiction screenplay by Shlomi Fish
Shell
2
star
85

cpandeps

The code behind deps.cpantesters.org
Perl
2
star
86

add-to-word-search.vim

Add more keywords to the search in Vim
Vim Script
2
star
87

plea-to-not-use-github-tags-as-releases

A plea (from packagers/etc.) to not use GitHub tags as Releases and instead make regular release tarballs.
2
star
88

usr-share-games-fortunes--backup

/usr/share/games/fortunes backup
Shell
2
star
89

cookiecutter--shlomif-latemp-sites

Common files and skeleton for Shlomi Fish's Latemp sites
XSLT
2
star
90

missile-vs-melee-take-three

"Queen Amidala vs. The Klingon Warriors" - an enhanced/modernised version of the David and Goliath story set in a fanfic crossoverred Star Trek and Star Wars universe. "Why can't we have both?" (CC-by)
Perl
2
star
91

peter-sanders-priority-queues

C
2
star
92

perl-HTML-Widgets-NavMenu

Perl
2
star
93

The-Muppets-Show--The-New-Incarnation

New incarnation of The Muppet Show with themes such as Summer Glau/Chuck Norris/Grammar nazism ; Jenn Lawrence/SLP/Hunger Games ; Harry Potter ; etc.
Shell
2
star
94

urpmi

The Mageia Linux Software Installation and Management Tools
Perl
1
star
95

book-of-proof--exercises-solutions

Solutions by Shlomi Fish for the Exercises in the book "Book of Proof".
TeX
1
star
96

perl-Code-TidyAll-Plugin-ClangFormat

clang-format plugin for Code-TidyAll
Perl
1
star
97

lm-solve-layouts

1
star
98

Captioned-Image-If-You-Wanna-Be-Sad

A captioned image from The Simpsons
Makefile
1
star
99

perl-Parallel-ForkManager-Segmented

perl-Parallel-ForkManager-Segmented
Perl
1
star
100

the-enemy

HTML
1
star