diff --git a/.gitignore b/.gitignore index 03b0761..ea43618 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,16 @@ PySolFC-2.0.tar.bz2 /PySolFC-2.12.0.tar.xz /PySolFC-Cardsets--Minimal-2.0.2.tar.xz /PySolFC-2.14.0.tar.xz +/PySolFC-2.14.1.tar.xz +/PySolFC-2.15.0.tar.xz +/PySolFC-Cardsets--Minimal-2.1.0.tar.xz +/PySolFC-2.18.0.tar.xz +/PySolFC-2.20.0.tar.xz +/PySolFC-2.20.1.tar.xz +/PySolFC-Cardsets--Minimal-2.2.0.tar.xz +/PySolFC-2.21.0.tar.xz +/PySolFC-3.0.0.tar.xz +/PySolFC-Cardsets--Minimal-3.0.0.tar.xz +/PySolFC-3.1.0.tar.xz +/PySolFC-3.2.0.tar.xz +/PySolFC-3.4.0.tar.xz diff --git a/PySolFC-pycotap_not_required_to_run.patch b/PySolFC-pycotap_not_required_to_run.patch new file mode 100644 index 0000000..93be760 --- /dev/null +++ b/PySolFC-pycotap_not_required_to_run.patch @@ -0,0 +1,12 @@ +pycotap is only needed for the single unittest , tap_unittests.py + +--- ./setup.py.orig 2023-12-01 18:05:30.725608311 +0000 ++++ ./setup.py 2023-12-01 18:05:46.564570718 +0000 +@@ -74,7 +74,6 @@ kw = { + 'install_requires': [ + 'attrs>=18.2.0', + 'configobj', +- 'pycotap', + 'pysol_cards', + 'random2', + 'six', diff --git a/PySolFC.spec b/PySolFC.spec index 8d97c83..53e7ac2 100644 --- a/PySolFC.spec +++ b/PySolFC.spec @@ -1,56 +1,70 @@ +%global cardsets_minimal_ver 3.0.0 + Name: PySolFC -Version: 2.14.0 -Release: 1%{?dist} +Version: 3.4.0 +Release: 5%{?dist} Summary: A collection of solitaire card games -License: GPLv2+ +License: GPL-2.0-or-later URL: https://pysolfc.sourceforge.io Source0: https://downloads.sourceforge.net/pysolfc/%{name}-%{version}.tar.xz Source1: pysol-start-script -Source2: https://downloads.sourceforge.net/pysolfc/PySolFC-Cardsets--Minimal-2.0.2.tar.xz +Source2: https://downloads.sourceforge.net/pysolfc/PySolFC-Cardsets--Minimal-%{cardsets_minimal_ver}.tar.xz Patch0: PySolFC-desktop-exec.patch BuildArch: noarch BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: desktop-file-utils BuildRequires: perl-interpreter -BuildRequires: /usr/bin/pathfix.py -# optional but nice to have -Requires: freecell-solver -Requires: libfreecell-solver -Requires: python%{python3_pkgversion}-freecell_solver +BuildRequires: tcl-devel < 1:9 +BuildRequires: tk-devel < 1:9 + +%if 0%{?fedora} +# optional but nice to have but not available in any epel branch +# freecell-solver already requires libsfreecell-solver +Recommends: freecell-solver +Recommends: python%{python3_pkgversion}-freecell_solver +%endif + Requires: python%{python3_pkgversion}-imaging Requires: tile # used to get sound working with PulseAudio Requires: python%{python3_pkgversion}-pygame # really required -Requires: tcl -Requires: tk +# Requires: tcl >= 9 +# Requires: tk >= 9 Requires: tix Requires: python%{python3_pkgversion}-tkinter Requires: python%{python3_pkgversion}-imaging-tk -Requires: python%{python3_pkgversion}-random2 %if 0%{?fedora} || 0%{?rhel} > 7 Recommends: PySolFC-cardsets Recommends: PySolFC-music +%else +# el7 doesn't detect these dependencies +Requires: python%{python3_pkgversion}-pysol-cards +Requires: python3-configobj +Requires: python36-attrs %endif + Provides: pysol = %{version}-%{release} %description %{name} is a collection of more than 1000 solitaire card games. It is a fork of PySol solitaire. Its features include modern look and feel (uses Tile widget -set), multiple cardsets and tableau backgrounds, sound, unlimited undo, player +set), multiple card-sets and tableau backgrounds, sound, unlimited undo, player statistics, a hint system, demo games, a solitaire wizard, support for user written plug-ins, an integrated HTML help browser, and lots of documentation. %prep %autosetup -p1 -a2 +%generate_buildrequires +%pyproject_buildrequires + %build -%py3_build +%pyproject_wheel %install -%py3_install +%pyproject_install # install desktop file desktop-file-install \ --delete-original \ @@ -60,9 +74,8 @@ desktop-file-install \ # install the startup wrapper mv $RPM_BUILD_ROOT%{_bindir}/pysol.py $RPM_BUILD_ROOT%{_datadir}/%{name} install -m755 %{SOURCE1} $RPM_BUILD_ROOT/%{_bindir}/pysol -cp -a PySolFC-Cardsets--Minimal-2.0.2/cardset-* $RPM_BUILD_ROOT%{_datadir}/PySolFC +cp -a PySolFC-Cardsets--Minimal-%{cardsets_minimal_ver}/cardset-* $RPM_BUILD_ROOT%{_datadir}/PySolFC find "$RPM_BUILD_ROOT%{python3_sitelib}/pysollib" -name '*.py' | xargs -L1 perl -ln -i -E 'say if (not (($. == 1) and (m&^#![ \t]*/usr/&)))' -pathfix.py -pni "%{__python3} %{py3_shbang_opts}" $RPM_BUILD_ROOT%{_bindir}/* %find_lang pysol @@ -70,7 +83,7 @@ pathfix.py -pni "%{__python3} %{py3_shbang_opts}" $RPM_BUILD_ROOT%{_bindir}/* %license COPYING %doc README.md %{python3_sitelib}/pysollib -%{python3_sitelib}/*egg-info +%{python3_sitelib}/*dist-info %{_bindir}/pysol %{_datadir}/%{name} %{_datadir}/icons/hicolor/*/apps/*.png @@ -78,6 +91,116 @@ pathfix.py -pni "%{__python3} %{py3_shbang_opts}" $RPM_BUILD_ROOT%{_bindir}/* %changelog +* Fri Sep 19 2025 Python Maint - 3.4.0-5 +- Rebuilt for Python 3.14.0rc3 bytecode + +* Fri Aug 15 2025 Python Maint - 3.4.0-4 +- Rebuilt for Python 3.14.0rc2 bytecode + +* Wed Jul 23 2025 Fedora Release Engineering - 3.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Fri Jul 11 2025 Shlomi Fish 3.4.0-2 +- Remove unused / unavailable deps ( eg - python3-random2 ) +- Use pyprojectize/etc. to modernize the .spec +- rhbz#2379434 +- rhbz#2377406 + +* Sun Jun 15 2025 Packit - 3.4.0-1 +- Update to version 3.4.0 +- Resolves: rhbz#2372876 + +* Mon Jun 02 2025 Python Maint - 3.2.0-6 +- Rebuilt for Python 3.14 + +* Fri Mar 07 2025 Shlomi Fish 3.2.0-5 +- Revert to use tcl 8 / tk 8 given that is what PySolFC loads in practice. +- rhbz#2344906 + +* Tue Feb 18 2025 Shlomi Fish 3.2.0-4 +- Trying to use tcl 9 / tk 9. +- rhbz#2344906 + +* Sat Feb 08 2025 Shlomi Fish 3.2.0-3 +- Update the build process for tcl 9 / tk 9 + +* Thu Jan 16 2025 Fedora Release Engineering - 3.2.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sat Jan 11 2025 Packit - 3.2.0-1 +- Update to version 3.2.0 +- Resolves: rhbz#2337163 + +* Mon Oct 21 2024 Packit - 3.1.0-1 +- Update to version 3.1.0 +- Resolves: rhbz#2319948 + +* Wed Jul 17 2024 Fedora Release Engineering - 3.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jun 07 2024 Python Maint - 3.0.0-2 +- Rebuilt for Python 3.13 + +* Mon Jun 03 2024 Shlomi Fish 3.0.0-1 +- New upstream versions (of both "PySolFC" and "PySolFC-Cardsets--Minimal"). + pycotap patch is no longer needed so remove. + +* Sun Mar 03 2024 Sérgio Basto - 2.21.0-6 +- py3_shebang_fix is not needed and fix epel-7 build + +* Mon Jan 22 2024 Fedora Release Engineering - 2.21.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 2.21.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Dec 01 2023 Sérgio Basto - 2.21.0-3 +- Do not require pycotap to run PySol, pycotap is only needed for the single + unittest ( https://github.com/shlomif/PySolFC/pull/353 ) + +* Wed Jul 19 2023 Fedora Release Engineering - 2.21.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Wed Jul 12 2023 Shlomi Fish 2.21.0-1 +- Update PySolFC to 2.21.0. + +* Sat Jun 24 2023 Sérgio Basto - 2.20.1-4 +- Migrate to SPDX license format + +* Tue Jun 13 2023 Python Maint - 2.20.1-3 +- Rebuilt for Python 3.12 + +* Thu May 18 2023 Sérgio Basto - 2.20.1-2 +- Update cardsets_minimal_ver to 2.2.0 + +* Tue Feb 28 2023 Shlomi Fish 2.20.0-1 +- Update PySolFC to 2.20.0. + +* Wed Jan 18 2023 Fedora Release Engineering - 2.18.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Oct 12 2022 Shlomi Fish 2.18.0-1 +- Update PySolFC to 2.18.0. + +* Wed Jul 20 2022 Fedora Release Engineering - 2.15.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 2.15.0-3 +- Rebuilt for Python 3.11 + +* Wed May 04 2022 Sérgio Basto - 2.15.0-2 +- Fix install on EL where we don't have freecell-solver + +* Fri Apr 08 2022 Sérgio Basto - 2.15.0-1 +- Update PySolFC to 2.15.0 (#2063446) +- Update Cardsets Minimal to 2.1.0 + +* Wed Jan 19 2022 Fedora Release Engineering - 2.14.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Sat Dec 11 2021 Shlomi Fish 2.14.1-1 +- Update to 2.14.1 (#2031331) + * Sun Sep 19 2021 Fedora Release Monitoring - 2.14.0-1 - Update to 2.14.0 (#2005720) diff --git a/README.packit b/README.packit new file mode 100644 index 0000000..6beb40f --- /dev/null +++ b/README.packit @@ -0,0 +1,3 @@ +This repository is maintained by packit. +https://packit.dev/ +The file was generated using packit 1.8.0.post1.dev31+g9980e597. diff --git a/packit.yaml b/packit.yaml new file mode 100644 index 0000000..7268bcf --- /dev/null +++ b/packit.yaml @@ -0,0 +1,26 @@ +# See the documentation for more information: +# https://packit.dev/docs/configuration/ + +jobs: + - job: pull_from_upstream + trigger: release + dist_git_branches: + rawhide: + fast_forward_merge_into: + - fedora-all + - epel-all + + - job: koji_build + trigger: commit + allowed_pr_authors: + - all_admins + - packit + dist_git_branches: + - fedora-all + - epel-all + + - job: bodhi_update + trigger: commit + dist_git_branches: + - fedora-all + - epel-all diff --git a/sources b/sources index 5d88c5b..2536c04 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (PySolFC-2.14.0.tar.xz) = 0215276e5cc8caaefa0d7212d675af32e935b3ae4d4839624b34e8d68f0fc7e09accedf3b8e6428b349fe5c2ee7b4c128cd209d074b2c24311fa54f1c7b0c68f -SHA512 (PySolFC-Cardsets--Minimal-2.0.2.tar.xz) = 5317866d6259b154219ec6efea349af3f9cb0fe9309a895ee55f7be87ebc8c34df12b81a08e1dee907a3f475f4e623c3609fdbd7e357890c2ade418ec5d68cb2 +SHA512 (PySolFC-3.4.0.tar.xz) = 208e301cd8f8467e5078aace219a729097a851f09cd47d12ee9723e5b2127e951dfe779704ad0dedacd94c2a9a18553fcc06de8fa426d27a6794eb0d15ff128f +SHA512 (PySolFC-Cardsets--Minimal-3.0.0.tar.xz) = 9d4bacd072b450b29b9f1bec4557121a3647c2f837aeb6e249f452cb886467c5e7ca36dd36a78ea69a5c9df6f30d5245e12681d9d02fc9da2ece09c25d77e787