Here is the patch to update games/pysol to 2.10.1. wen ________________________________ 发件人: Daniel Dickman <didick...@gmail.com> 发送时间: 2020年10月28日 10:12 收件人: wen heping <wenheping2...@hotmail.com> 抄送: Carsten Boysen Jensen <m...@carstenboysenjensen.dk>; ports@openbsd.org <ports@openbsd.org> 主题: Re: 回复: pysol doesn't run
> > Hi, > Attempt to run pysol from 6.8 on amd64 gives the following error: > > -- > Carsten Boysen Jensen > > I committed a minimal fix to change time.clock -> time.time. With that I was able to play the game. > On Tue, 27 Oct 2020, wen heping wrote: > > It is caused by the default of python changed to 3.8. Indeed, python 3.8 finally got rid of time.clock which was deprecated since python 3.3 > I shall submit a patch to update it to 2.10.0 version, help it work with > python-3.8. > > wen I think there's a slightly newer version of pysol (2.10.1). I took a quick look and doing an update may require a new port for pysol_cards first.
Index: Makefile =================================================================== RCS file: /cvs/ports/games/pysol/Makefile,v retrieving revision 1.11 diff -u -p -r1.11 Makefile --- Makefile 3 Jul 2020 21:12:54 -0000 1.11 +++ Makefile 29 Oct 2020 03:02:57 -0000 @@ -1,11 +1,10 @@ # $OpenBSD: Makefile,v 1.11 2020/07/03 21:12:54 sthen Exp $ COMMENT = solitaire card games collection -MODPY_EGG_VERSION = 2.6.4 +MODPY_EGG_VERSION = 2.10.1 DISTNAME = PySolFC-${MODPY_EGG_VERSION} PKGNAME = pysol-${MODPY_EGG_VERSION} CATEGORIES = games -REVISION = 1 HOMEPAGE = http://pysolfc.sourceforge.net/ @@ -21,6 +20,7 @@ MODULES = lang/python \ x11/gnome MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3} MODGNOME_TOOLS = desktop-file-utils gtk-update-icon-cache +MODPY_SETUPTOOLS = Yes RUN_DEPENDS = ${MODPY_TKINTER_DEPENDS} \ devel/py-six${MODPY_FLAVOR} \ Index: distinfo =================================================================== RCS file: /cvs/ports/games/pysol/distinfo,v retrieving revision 1.4 diff -u -p -r1.4 distinfo --- distinfo 7 Sep 2019 07:23:56 -0000 1.4 +++ distinfo 29 Oct 2020 03:02:57 -0000 @@ -1,4 +1,4 @@ -SHA256 (PySolFC-2.6.4.tar.xz) = Tas1eVMVMBNvtinARdS4OJ9BCWLmz3dJTxjGHJ3m6ng= +SHA256 (PySolFC-2.10.1.tar.xz) = 8Jck8v3vPxbYulz4NIcuMfVZuzifa1Im/5qi7b8X0xk= SHA256 (PySolFC-Cardsets-2.0.tar.bz2) = w4jWNgGRs7fkY9hOWmQmDE4+0255GoUifX6JI/P0fKc= -SIZE (PySolFC-2.6.4.tar.xz) = 3761108 +SIZE (PySolFC-2.10.1.tar.xz) = 6716688 SIZE (PySolFC-Cardsets-2.0.tar.bz2) = 30687905 Index: patches/patch-data_pysol_desktop =================================================================== RCS file: /cvs/ports/games/pysol/patches/patch-data_pysol_desktop,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 patch-data_pysol_desktop --- patches/patch-data_pysol_desktop 25 May 2015 07:10:45 -0000 1.1.1.1 +++ patches/patch-data_pysol_desktop 29 Oct 2020 03:02:57 -0000 @@ -1,14 +1,14 @@ -$OpenBSD: patch-data_pysol_desktop,v 1.1.1.1 2015/05/25 07:10:45 czarkoff Exp $ ---- data/pysol.desktop.orig Fri Jun 6 08:58:50 2008 -+++ data/pysol.desktop Sun May 24 23:52:58 2015 -@@ -1,8 +1,8 @@ +$OpenBSD$ + +Index: data/pysol.desktop +--- data/pysol.desktop.orig ++++ data/pysol.desktop +@@ -1,7 +1,7 @@ [Desktop Entry] - Encoding=UTF-8 Name=PySol Fan Club Edition + Comment=More than 1000 solitaire card games -Exec=pysol.py +Exec=pysol + StartupWMClass=Pysol Terminal=false Type=Application - Categories=Game;CardGame; --Icon=/usr/share/icons/pysol01.png -+Icon=pysol01 Index: patches/patch-pysollib_pysolrandom_py =================================================================== RCS file: patches/patch-pysollib_pysolrandom_py diff -N patches/patch-pysollib_pysolrandom_py --- patches/patch-pysollib_pysolrandom_py 22 Jan 2019 20:09:42 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,33 +0,0 @@ -$OpenBSD: patch-pysollib_pysolrandom_py,v 1.2 2019/01/22 20:09:42 landry Exp $ - -Revert https://github.com/shlomif/PySolFC/commit/0515a01a025be3fa3ecfc3e0e72803f5e7370728 -Needs random2 from pip for python3 ? - -Index: pysollib/pysolrandom.py ---- pysollib/pysolrandom.py.orig -+++ pysollib/pysolrandom.py -@@ -28,7 +28,7 @@ import re - import time - from pysollib.mfxutil import SubclassResponsibility - try: -- import random2 -+ import random - except ImportError: - raise ImportError( - "You need to install " + -@@ -101,13 +101,13 @@ class BasicRandom: - # * uses the standard python module `random' - # ************************************************************************ - --class MTRandom(BasicRandom, random2.Random): -+class MTRandom(BasicRandom, random.Random): - - def __init__(self, seed=None): - if seed is None: - seed = self._getRandomSeed() - BasicRandom.__init__(self) -- random2.Random.__init__(self, seed) -+ random.Random.__init__(self, seed) - self.initial_seed = seed - self.initial_state = self.getstate() - self.origin = self.ORIGIN_UNKNOWN Index: patches/patch-setup_py =================================================================== RCS file: patches/patch-setup_py diff -N patches/patch-setup_py --- patches/patch-setup_py 1 Apr 2018 09:34:06 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,14 +0,0 @@ -$OpenBSD: patch-setup_py,v 1.2 2018/04/01 09:34:06 landry Exp $ -Index: setup.py ---- setup.py.orig -+++ setup.py -@@ -40,8 +40,7 @@ for d in ddirs: - data_files.append((os.path.join(data_dir, root[5:]), files)) - - if os.name == 'posix': -- data_files.append(('share/pixmaps', ['data/pysol.xbm', 'data/pysol.xpm'])) -- data_files.append(('share/icons', -+ data_files.append(('share/pixmaps', - ['data/images/misc/pysol01.png', - 'data/images/misc/pysol02.png', ])) - for l in ('ru', 'ru_RU'): Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/games/pysol/pkg/PLIST,v retrieving revision 1.6 diff -u -p -r1.6 PLIST --- pkg/PLIST 20 Apr 2020 20:51:51 -0000 1.6 +++ pkg/PLIST 29 Oct 2020 03:03:00 -0000 @@ -1,6 +1,11 @@ @comment $OpenBSD: PLIST,v 1.6 2020/04/20 20:51:51 kn Exp $ bin/pysol -lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info +lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/ +lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/PKG-INFO +lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/SOURCES.txt +lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/dependency_links.txt +lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/requires.txt +lib/python${MODPY_VERSION}/site-packages/PySolFC-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/top_level.txt lib/python${MODPY_VERSION}/site-packages/pysollib/ lib/python${MODPY_VERSION}/site-packages/pysollib/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}/ @@ -8,8 +13,10 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}acard.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}actions.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}app.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}app_stat.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}app_stat_result.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}app_statistics.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}customgame.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}game.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}gamedb.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}help.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}hint.${MODPY_PYC_MAGIC_TAG}pyc @@ -29,22 +36,23 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}settings.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}stack.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}stats.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}struct_new.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}util.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}wizardpresets.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/${MODPY_PYCACHE}wizardutil.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/acard.py lib/python${MODPY_VERSION}/site-packages/pysollib/actions.py lib/python${MODPY_VERSION}/site-packages/pysollib/app.py -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/ -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/__init__.py -${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/${MODPY_PYCACHE}/ -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/${MODPY_PYCACHE}configobj.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/${MODPY_PYCACHE}validate.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/configobj.py -lib/python${MODPY_VERSION}/site-packages/pysollib/configobj/validate.py +lib/python${MODPY_VERSION}/site-packages/pysollib/app_stat.py +lib/python${MODPY_VERSION}/site-packages/pysollib/app_stat_result.py +lib/python${MODPY_VERSION}/site-packages/pysollib/app_statistics.py lib/python${MODPY_VERSION}/site-packages/pysollib/customgame.py -lib/python${MODPY_VERSION}/site-packages/pysollib/game.py +lib/python${MODPY_VERSION}/site-packages/pysollib/game/ +lib/python${MODPY_VERSION}/site-packages/pysollib/game/__init__.py +${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pysollib/game/${MODPY_PYCACHE}/ +lib/python${MODPY_VERSION}/site-packages/pysollib/game/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/game/${MODPY_PYCACHE}dump.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/game/dump.py lib/python${MODPY_VERSION}/site-packages/pysollib/gamedb.py lib/python${MODPY_VERSION}/site-packages/pysollib/games/ lib/python${MODPY_VERSION}/site-packages/pysollib/games/__init__.py @@ -57,6 +65,7 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}bakersgame.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}beleagueredcastle.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}bisley.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}bisley13.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}braid.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}bristol.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/games/${MODPY_PYCACHE}buffalobill.${MODPY_PYC_MAGIC_TAG}pyc @@ -121,6 +130,7 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/games/bakersgame.py lib/python${MODPY_VERSION}/site-packages/pysollib/games/beleagueredcastle.py lib/python${MODPY_VERSION}/site-packages/pysollib/games/bisley.py +lib/python${MODPY_VERSION}/site-packages/pysollib/games/bisley13.py lib/python${MODPY_VERSION}/site-packages/pysollib/games/braid.py lib/python${MODPY_VERSION}/site-packages/pysollib/games/bristol.py lib/python${MODPY_VERSION}/site-packages/pysollib/games/buffalobill.py @@ -239,6 +249,7 @@ lib/python${MODPY_VERSION}/site-packages ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}/ lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}LApp.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}androidperms.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}card.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}colorsdialog.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}edittextdialog.${MODPY_PYC_MAGIC_TAG}pyc @@ -263,6 +274,7 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}tkwidget.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}tkwrap.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/${MODPY_PYCACHE}toolbar.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/androidperms.py lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/card.py lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/colorsdialog.py lib/python${MODPY_VERSION}/site-packages/pysollib/kivy/edittextdialog.py @@ -360,6 +372,7 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/settings.py lib/python${MODPY_VERSION}/site-packages/pysollib/stack.py lib/python${MODPY_VERSION}/site-packages/pysollib/stats.py +lib/python${MODPY_VERSION}/site-packages/pysollib/struct_new.py lib/python${MODPY_VERSION}/site-packages/pysollib/tile/ lib/python${MODPY_VERSION}/site-packages/pysollib/tile/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/pysollib/tile/${MODPY_PYCACHE}/ @@ -385,7 +398,6 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/tile/${MODPY_PYCACHE}tktree.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/tile/${MODPY_PYCACHE}tkwidget.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/tile/${MODPY_PYCACHE}toolbar.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/pysollib/tile/${MODPY_PYCACHE}ttk.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/tile/${MODPY_PYCACHE}wizarddialog.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/pysollib/tile/basetilemfxdialog.py lib/python${MODPY_VERSION}/site-packages/pysollib/tile/colorsdialog.py @@ -408,7 +420,6 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/pysollib/tile/tktree.py lib/python${MODPY_VERSION}/site-packages/pysollib/tile/tkwidget.py lib/python${MODPY_VERSION}/site-packages/pysollib/tile/toolbar.py -lib/python${MODPY_VERSION}/site-packages/pysollib/tile/ttk.py lib/python${MODPY_VERSION}/site-packages/pysollib/tile/wizarddialog.py lib/python${MODPY_VERSION}/site-packages/pysollib/tk/ lib/python${MODPY_VERSION}/site-packages/pysollib/tk/__init__.py @@ -17655,6 +17666,7 @@ share/PySolFC/cardset-xskat-german/xshad share/PySolFC/cardset-xskat-german/xshadow12.gif share/PySolFC/cardset-xskat-german/xshadow13.gif share/PySolFC/html/ +share/PySolFC/html/all_games.html share/PySolFC/html/credits.html share/PySolFC/html/ganjifa.html share/PySolFC/html/general_rules.html @@ -17666,6 +17678,7 @@ share/PySolFC/html/images/ share/PySolFC/html/images/c.gif share/PySolFC/html/images/camelot-goal.gif share/PySolFC/html/images/d.gif +share/PySolFC/html/images/ganjifa.gif share/PySolFC/html/images/h.gif share/PySolFC/html/images/hanahelp.gif share/PySolFC/html/images/high_res/ @@ -18415,6 +18428,14 @@ share/PySolFC/images/dialog/default/warn share/PySolFC/images/htmlviewer/ share/PySolFC/images/htmlviewer/disk.gif share/PySolFC/images/htmlviewer/disk.png +share/PySolFC/images/icons/ +share/PySolFC/images/icons/128x128/ +share/PySolFC/images/icons/128x128/pysol.png +share/PySolFC/images/icons/48x48/ +share/PySolFC/images/icons/48x48/pysol.png +share/PySolFC/images/icons/512x512/ +share/PySolFC/images/icons/512x512/pysol.png +share/PySolFC/images/logo-with-margin-1024.png share/PySolFC/images/logos/ share/PySolFC/images/logos/joker07_40_774.gif share/PySolFC/images/logos/joker07_40_774.png @@ -18428,11 +18449,6 @@ share/PySolFC/images/logos/joker10_100.g share/PySolFC/images/logos/joker10_100.png share/PySolFC/images/logos/joker11_100_774.gif share/PySolFC/images/logos/joker11_100_774.png -share/PySolFC/images/misc/ -share/PySolFC/images/misc/pysol01.png -share/PySolFC/images/misc/pysol02.png -share/PySolFC/images/misc/pysol03.png -share/PySolFC/images/misc/pysol06.png share/PySolFC/images/noredeal.gif share/PySolFC/images/noredeal.png share/PySolFC/images/pause/ @@ -18861,11 +18877,12 @@ share/PySolFC/tiles/stretch/Fractal_Gree share/PySolFC/tiles/stretch/Fractal_Rose.jpg share/PySolFC/tiles/stretch/Sunset.png share/applications/pysol.desktop +share/icons/hicolor/128x128/apps/pysol.png +share/icons/hicolor/48x48/apps/pysol.png +share/icons/hicolor/512x512/apps/pysol.png +share/locale/de/LC_MESSAGES/pysol.mo +share/locale/it/LC_MESSAGES/pysol.mo +share/locale/pl/LC_MESSAGES/pysol.mo share/locale/ru/LC_MESSAGES/pysol.mo -share/locale/ru_RU/ -share/locale/ru_RU/LC_MESSAGES/ -share/locale/ru_RU/LC_MESSAGES/pysol.mo -share/pixmaps/ @tag update-desktop-database -share/pixmaps/pysol01.png -share/pixmaps/pysol02.png +@tag gtk-update-icon-cache %D/share/icons/hicolor