From 13cac92a18a052438d63da498f620ce1ebef0cba Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:18:04 +0800 Subject: [PATCH 1/8] SPECS: Add python-harvesttext --- .../python-harvesttext.spec | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 SPECS/python-harvesttext/python-harvesttext.spec diff --git a/SPECS/python-harvesttext/python-harvesttext.spec b/SPECS/python-harvesttext/python-harvesttext.spec new file mode 100644 index 000000000..0c93511c3 --- /dev/null +++ b/SPECS/python-harvesttext/python-harvesttext.spec @@ -0,0 +1,68 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Suyun +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname harvesttext + +Name: python-%{srcname} +Version: 0.8.2.1 +Release: %autorelease +Summary: A toolkit for text mining and preprocessing +License: MIT +URL: https://github.com/blmoistawinde/HarvestText +#!RemoteAsset: sha256:621bcfa334f17d5c5daf3408595506a7c224e7246c38d6742b5e927e6e9c846f +Source0: https://files.pythonhosted.org/packages/source/h/%{srcname}/%{srcname}-%{version}.tar.gz +#!RemoteAsset: sha256:9ec4dd25ddefcfc5d764e7849d10a2b6c2ff22443d21bd6d6f5af3363862154a +Source1: https://raw.githubusercontent.com/blmoistawinde/HarvestText/ba9b3d22492277c3dcdf3dc8060394e3713a5073/requirements.txt +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(requests) +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(wheel) +BuildRequires: python3dist(jieba) +BuildRequires: python3dist(numpy) +BuildRequires: python3dist(scikit-learn) +BuildRequires: python3dist(scipy) +BuildRequires: python3dist(pandas) +BuildRequires: python3dist(networkx) +BuildRequires: python3dist(matplotlib) +BuildRequires: python3dist(pypinyin) +BuildRequires: python3dist(rdflib) +BuildRequires: python3dist(python-louvain) +BuildRequires: python3dist(tqdm) +BuildRequires: python3dist(w3lib) +BuildRequires: python3dist(nltk) +BuildRequires: python3dist(opencc-python-reimplemented) + +Provides: python3-%{srcname} +%python_provide python3-%{srcname} + +%description +HarvestText is a Python toolkit for text mining and preprocessing. It +focuses on weakly supervised methods that integrate domain knowledge +(such as types and aliases) for simple and efficient domain-specific +text processing and analysis, including entity linking, sentiment +analysis, keyword extraction, relation networks, text summarization, +and new word discovery. + +%prep +%autosetup -n %{srcname}-%{version} +cp %{S:1} . + +# %%pyproject_buildrequires does not work with this package. +%generate_buildrequires + +%files -f %{pyproject_files} +%license LICENSE +%doc README.md + +%changelog +%autochangelog From 4f4d8759a9aa8899b183964637b9888cfdbdf254 Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:18:04 +0800 Subject: [PATCH 2/8] SPECS: Add python-nltk --- SPECS/python-nltk/python-nltk.spec | 52 ++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 SPECS/python-nltk/python-nltk.spec diff --git a/SPECS/python-nltk/python-nltk.spec b/SPECS/python-nltk/python-nltk.spec new file mode 100644 index 000000000..80dbef416 --- /dev/null +++ b/SPECS/python-nltk/python-nltk.spec @@ -0,0 +1,52 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Suyun +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname nltk + +Name: python-%{srcname} +Version: 3.9.4 +Release: %autorelease +Summary: Natural Language Toolkit +License: Apache-2.0 +URL: https://www.nltk.org/ +#!RemoteAsset: sha256:ed03bc098a40481310320808b2db712d95d13ca65b27372f8a403949c8b523d0 +Source0: https://files.pythonhosted.org/packages/source/n/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{srcname} +# tkinter not available (tk not yet packaged) +# nltk data not available (no network during packaging) +BuildOption(check): -e nltk.app.chartparser_app -e nltk.app.chunkparser_app -e nltk.app.collocations_app -e nltk.app.concordance_app -e nltk.app.nemo_app -e nltk.app.rdparser_app -e nltk.app.srparser_app -e nltk.draw.cfg -e nltk.draw.table -e nltk.draw.tree -e nltk.draw.util -e nltk.book -e nltk.langnames -e nltk.tokenize.nist -e nltk.test.unit.test_corpora -e nltk.test.unit.test_nombank -e nltk.test.unit.test_wordnet + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: python3dist(requests) +BuildRequires: python3dist(pyparsing) +BuildRequires: python3dist(twython) +BuildRequires: python3dist(pytest) +BuildRequires: python3dist(matplotlib) + +Provides: python3-%{srcname} +%python_provide python3-%{srcname} + +%description +NLTK is a leading platform for building Python programs to work with +human language data. It provides easy-to-use interfaces to over 50 +corpora and lexical resources such as WordNet, along with a suite of +text processing libraries for classification, tokenization, stemming, +tagging, parsing, and semantic reasoning. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%license LICENSE.txt +%doc README.md +%{_bindir}/nltk + +%changelog +%autochangelog From 33703c37171636ecf6926202e1a967ff4ac85992 Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:18:04 +0800 Subject: [PATCH 3/8] SPECS: Add python-twython --- SPECS/python-twython/python-twython.spec | 40 ++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 SPECS/python-twython/python-twython.spec diff --git a/SPECS/python-twython/python-twython.spec b/SPECS/python-twython/python-twython.spec new file mode 100644 index 000000000..37861c3c2 --- /dev/null +++ b/SPECS/python-twython/python-twython.spec @@ -0,0 +1,40 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Suyun +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname twython + +Name: python-%{srcname} +Version: 3.9.1 +Release: %autorelease +Summary: Actively maintained, pure Python wrapper for the Twitter API +License: MIT +URL: https://github.com/ryanmcgrath/twython/tree/master +#!RemoteAsset: sha256:5a3f0ac24d10705257028fb4205bfedf432ff28d358b796e0c2f01a2f9990c84 +Source0: https://files.pythonhosted.org/packages/source/t/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) + +Provides: python3-%{srcname} +%python_provide python3-%{srcname} + +%description +Twython is an actively maintained, pure Python wrapper for the Twitter +API. It supports both normal and streaming Twitter APIs. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%license LICENSE +%doc README.md + +%changelog +%autochangelog From ae376cabb68868e433a8a1f625a9aa8b462334fa Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:18:04 +0800 Subject: [PATCH 4/8] SPECS: Add python-requests-oauthlib --- .../python-requests-oauthlib.spec | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 SPECS/python-requests-oauthlib/python-requests-oauthlib.spec diff --git a/SPECS/python-requests-oauthlib/python-requests-oauthlib.spec b/SPECS/python-requests-oauthlib/python-requests-oauthlib.spec new file mode 100644 index 000000000..649f008ba --- /dev/null +++ b/SPECS/python-requests-oauthlib/python-requests-oauthlib.spec @@ -0,0 +1,41 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Suyun +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname requests-oauthlib +%global modname requests_oauthlib + +Name: python-%{srcname} +Version: 2.0.0 +Release: %autorelease +Summary: OAuthlib authentication support for Requests +License: ISC +URL: https://github.com/requests/requests-oauthlib +#!RemoteAsset: sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9 +Source0: https://files.pythonhosted.org/packages/source/r/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{modname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) + +Provides: python3-%{srcname} +%python_provide python3-%{srcname} + +%description +Requests-OAuthlib uses the Python Requests and OAuthlib libraries to +provide easy-to-use OAuth1 and OAuth2 support. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%license LICENSE +%doc README.rst + +%changelog +%autochangelog From a15a50956b01ab5aff2607560975ceaf879d54c0 Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:18:04 +0800 Subject: [PATCH 5/8] SPECS: Add python-matplotlib --- .../python-matplotlib/python-matplotlib.spec | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 SPECS/python-matplotlib/python-matplotlib.spec diff --git a/SPECS/python-matplotlib/python-matplotlib.spec b/SPECS/python-matplotlib/python-matplotlib.spec new file mode 100644 index 000000000..53bcc46bc --- /dev/null +++ b/SPECS/python-matplotlib/python-matplotlib.spec @@ -0,0 +1,52 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Suyun +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname matplotlib + +Name: python-%{srcname} +Version: 3.10.9 +Release: %autorelease +Summary: Python plotting package +License: PSF-2.0 +URL: https://matplotlib.org +#!RemoteAsset: sha256:fd66508e8c6877d98e586654b608a0456db8d7e8a546eb1e2600efd957302358 +Source0: https://files.pythonhosted.org/packages/source/m/%{srcname}/%{srcname}-%{version}.tar.gz +BuildSystem: pyproject + +BuildOption(build): -Csetup-args=--wrap-mode=nodownload -Csetup-args=-Dsystem-freetype=true -Csetup-args=-Dsystem-qhull=true +BuildOption(install): -l %{srcname} mpl_toolkits pylab +auto -L +# TODO: gtk, Qt, tk, wxPython not yet packaged +# macOS-only, excluded +# nbagg needs ipykernel not yet packaged +# sphinxext needs sphinx not yet packaged +# tests need baseline image data not installed +BuildOption(check): -e 'matplotlib.backends.backend_gtk*' -e 'matplotlib.backends.*qt*' -e 'matplotlib.backends.backend_macosx' -e 'matplotlib.backends.backend_nbagg' -e 'matplotlib.backends.backend_tk*' -e 'matplotlib.backends.backend_wx*' -e 'matplotlib.sphinxext.*' -e '*.tests*' + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(qhull_r) +BuildRequires: python3dist(pycairo) +BuildRequires: python3dist(tornado) +BuildRequires: python3dist(docutils) +BuildRequires: python3dist(pytest) +BuildRequires: python3dist(jinja2) + +Provides: python3-%{srcname} +%python_provide python3-%{srcname} + +%description +Matplotlib is a comprehensive library for creating static, animated, +and interactive visualizations in Python. + +%generate_buildrequires +%pyproject_buildrequires -p -Csetup-args=--wrap-mode=nodownload -Csetup-args=-Dsystem-freetype=true -Csetup-args=-Dsystem-qhull=true + +%files -f %{pyproject_files} +%license LICENSE + +%changelog +%autochangelog From d2c60db81c86d06f031cb17f433ffcb77fa4c940 Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:18:04 +0800 Subject: [PATCH 6/8] SPECS: Add python-fonttools --- SPECS/python-fonttools/python-fonttools.spec | 55 ++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 SPECS/python-fonttools/python-fonttools.spec diff --git a/SPECS/python-fonttools/python-fonttools.spec b/SPECS/python-fonttools/python-fonttools.spec new file mode 100644 index 000000000..f085b4e49 --- /dev/null +++ b/SPECS/python-fonttools/python-fonttools.spec @@ -0,0 +1,55 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Gui-Yue +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname fonttools + +Name: python-%{srcname} +Version: 4.62.1 +Release: %autorelease +Summary: Tools to manipulate font files +License: MIT +URL: https://github.com/fonttools/fonttools +VCS: git:https://github.com/fonttools/fonttools +#!RemoteAsset: sha256:e54c75fd6041f1122476776880f7c3c3295ffa31962dc6ebe2543c00dca58b5d +Source0: https://files.pythonhosted.org/packages/source/f/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l fontTools +auto +# Optional dependency freetype-py is not packaged yet. +BuildOption(check): -e 'fontTools.pens.freetypePen' +# Quartz is macOS-only. +BuildOption(check): -e 'fontTools.pens.quartzPen' +# Optional dependency reportlab is not packaged yet. +BuildOption(check): -e 'fontTools.pens.reportLabPen' +# Optional dependency skia-pathops is not packaged yet. +BuildOption(check): -e 'fontTools.ttLib.removeOverlaps' +# Optional dependency matplotlib is not packaged yet. +BuildOption(check): -e 'fontTools.varLib.plot' + +BuildRequires: pkgconfig(python3) +BuildRequires: pyproject-rpm-macros +BuildRequires: python3dist(pip) +BuildRequires: python3dist(pycairo) +BuildRequires: python3dist(setuptools) +BuildRequires: python3dist(sympy) +BuildRequires: python3dist(wheel) + +Provides: python3-%{srcname} = %{version}-%{release} +%python_provide python3-%{srcname} + +%description +FontTools is a library for manipulating fonts, written in Python. + +%pyproject_extras_subpkg -n python-%{srcname} all graphite interpolatable lxml pathops plot repacker symfont type1 ufo unicode woff + +%files -f %{pyproject_files} +%doc README.rst +%license LICENSE +%license LICENSE.external + +%changelog +%autochangelog From d28a78b14bdf6ca7e64a91fc16db859a27c82c95 Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 18:19:38 +0800 Subject: [PATCH 7/8] SPECS: python-meson-python: Downgrade to 0.16.0 --- SPECS/python-meson-python/python-meson-python.spec | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/SPECS/python-meson-python/python-meson-python.spec b/SPECS/python-meson-python/python-meson-python.spec index 00f6b19b5..3e137f251 100644 --- a/SPECS/python-meson-python/python-meson-python.spec +++ b/SPECS/python-meson-python/python-meson-python.spec @@ -7,17 +7,17 @@ %global srcname meson-python Name: python-%{srcname} -Version: 0.18.0 +Version: 0.16.0 Release: %autorelease License: MIT URL: https://github.com/mesonbuild/meson-python Summary: Meson-based build backend for Python -#!RemoteAsset +#!RemoteAsset: sha256:9068c17e36c89d6c7ff709fffb2a8a9925e8cd0b02629728e5ceaf2ec505cb5f Source0: https://files.pythonhosted.org/packages/source/m/%{srcname}/meson_python-%{version}.tar.gz BuildArch: noarch BuildSystem: pyproject -BuildOption(install): -l mesonpy +auto +BuildOption(install): -l mesonpy +auto -L BuildRequires: pyproject-rpm-macros BuildRequires: pkgconfig(python3) @@ -43,6 +43,7 @@ Meson-python is a PEP 517 build backend for Meson projects. %generate_buildrequires %files -f %{pyproject_files} +%license LICENSE %changelog -%{?autochangelog} +%autochangelog From c80e7a4e6cd93552e5b10de4425ce755d71b5ad8 Mon Sep 17 00:00:00 2001 From: Suyun Date: Sat, 2 May 2026 19:33:19 +0800 Subject: [PATCH 8/8] SPECS: Add python-pypinyin --- SPECS/python-pypinyin/python-pypinyin.spec | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 SPECS/python-pypinyin/python-pypinyin.spec diff --git a/SPECS/python-pypinyin/python-pypinyin.spec b/SPECS/python-pypinyin/python-pypinyin.spec new file mode 100644 index 000000000..5f80799c1 --- /dev/null +++ b/SPECS/python-pypinyin/python-pypinyin.spec @@ -0,0 +1,39 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: Suyun +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global srcname pypinyin + +Name: python-%{srcname} +Version: 0.55.0 +Release: %autorelease +Summary: Chinese Pinyin conversion module/tool +License: MIT +URL: https://github.com/mozillazg/python-pinyin +#!RemoteAsset: sha256:b5711b3a0c6f76e67408ec6b2e3c4987a3a806b7c528076e7c7b86fcf0eaa66b +Source0: https://files.pythonhosted.org/packages/source/p/%{srcname}/%{srcname}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: pyproject + +BuildOption(install): -l %{srcname} + +BuildRequires: pyproject-rpm-macros +BuildRequires: pkgconfig(python3) + +Provides: python3-%{srcname} +%python_provide python3-%{srcname} + +%description +pypinyin is a Chinese Pinyin conversion module/tool. + +%generate_buildrequires +%pyproject_buildrequires + +%files -f %{pyproject_files} +%license LICENSE.txt +%{_bindir}/pypinyin + +%changelog +%autochangelog