From 11ee9702fb6e66ac9938d14f1ecbdc36db302dab Mon Sep 17 00:00:00 2001 From: Toshaan Bharvani Date: Sat, 8 Nov 2025 23:25:15 +0100 Subject: [PATCH] initial package creation Signed-off-by: Toshaan Bharvani --- SOURCES/.gitkeeper | 0 SPECS/python-inkex.spec | 151 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 SOURCES/.gitkeeper create mode 100644 SPECS/python-inkex.spec diff --git a/SOURCES/.gitkeeper b/SOURCES/.gitkeeper new file mode 100644 index 0000000..e69de29 diff --git a/SPECS/python-inkex.spec b/SPECS/python-inkex.spec new file mode 100644 index 0000000..6d66380 --- /dev/null +++ b/SPECS/python-inkex.spec @@ -0,0 +1,151 @@ +%global commit 7e13b1b747ef01b240cf8c8581c48a87518370fe +%global shortcommit %(c=%{commit}; echo ${c:0:8}) +%global commitdate 20241008 +%global reponame extensions +%global srcname inkex +%global forgeurl https://gitlab.com/inkscape/extensions +Version: 1.4.0 +%global tag v%{version} +%forgemeta + +Name: python-%{srcname} +Release: 1%{?dist} +Summary: Python extensions for Inkscape core + +License: GPL-2.0-or-later +URL: %forgeurl +Source: %{url}/-/archive/%{commit}/%{reponame}-%{shortcommit}.tar.gz +BuildRequires: python3-devel +# Tests +BuildRequires: gtk3-devel +BuildRequires: gzip +BuildRequires: python3dist(pytest) +BuildRequires: python3-gobject +BuildRequires: python3-gobject-base +BuildRequires: python3-gobject-base-noarch +BuildRequires: python3-gobject-devel +BuildRequires: which +BuildArch: noarch + +%global _description %{expand: +This package supports Inkscape extensions. + +It provides +- a simplification layer for SVG manipulation through lxml +- base classes for common types of Inkscape extensions +- simplified testing of those extensions +- a user interface library based on GTK3 + +At its core, Inkscape extensions take in a file, and output a file. +- For effect extensions, those two files are SVG files. +- For input extensions, the input file may be any arbitrary + file and the output is an SVG. +- For output extensions, the input is an SVG file while the + output is an arbitrary file. +- Some extensions (e.g. the extensions manager) don't manipulate files. + +This folder also contains the stock Inkscape extensions, i.e. the scripts +that implement some commands that you can use from within Inkscape. +Most of these commands are in the Extensions menu, or in the Open / +Save dialogs.} + +%description %_description + +%package -n python3-%{srcname} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{srcname}} + +%description -n python3-%{srcname} %_description + + +%prep +%autosetup -p1 -n %{reponame}-%{commit} +# Remove unneeded files +rm *.lock + +rm tests/test_w* +rm tests/test_v* +rm tests/test_t* +rm tests/test_s* +rm tests/test_r* +rm tests/test_p* +rm tests/test_o* +rm tests/test_n* +rm tests/test_m* +rm tests/test_l* +rm tests/test_j* +rm tests/test_int* +rm tests/test_ins* +rm tests/test_inks* +rm tests/test_inkw* +rm tests/test_ink2* +rm tests/test_im* +rm tests/test_h* +rm tests/test_g* +rm tests/test_f* +rm tests/test_e* +rm tests/test_d* +rm tests/test_c* +rm tests/test_a* +rm tests/test_u* +rm tests/add_pylint.py + +# Remove version limit from lxml +sed -i "s/lxml = .*/lxml = '\*'/" pyproject.toml +# Relax version limit for scour +sed -i 's/scour = "^0.37"/scour = ">=0.37"/' pyproject.toml +# Update version in configuration files +sed -i 's/cssselect = "^1.2.0"/cssselect = ">=1.1.0,<2.0.0"/' pyproject.toml +# Update python command +sed -i 's/call("python"/call("python3"/' tests/test_inkex_command.py + +%generate_buildrequires +%pyproject_buildrequires + + +%build +%pyproject_wheel + + +%install +%pyproject_install +%pyproject_save_files %{srcname} +# Executable fix +sed -i /env\ python/d %{buildroot}%{python3_sitelib}/inkex/tester/inx.py + +%check +%pyproject_check_import +%pytest -k "not test_inkex_gui" + +%files -n python3-%{srcname} -f %{pyproject_files} +%doc package-readme.md +%license LICENSE.txt + +%changelog +* Sat Nov 30 2024 Benson Muite - 1.4.0-1 +- Update to commit corresponding to Inkscape 1.4 + +* Fri Jul 19 2024 Fedora Release Engineering - 1.3.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sat Jun 08 2024 Python Maint - 1.3.1-2 +- Rebuilt for Python 3.13 + +* Wed Apr 10 2024 Benson Muite - 1.3.1-1 +- Update to latest release on Pypi + +* Fri Jan 26 2024 Fedora Release Engineering - 1.3.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 22 2024 Fedora Release Engineering - 1.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 15 2024 Lumír Balhar - 1.3.0-3 +- Remove version limit from lxml + +* Sun Dec 24 2023 Benson Muite - 1.3.0-2 +- Enable building with Python 3.13 + +* Fri Sep 08 2023 Benson Muite - 1.3.0-1 +- Initial package +