diff --git a/.gitignore b/.gitignore index ea31816..6beb0ae 100644 --- a/.gitignore +++ b/.gitignore @@ -45,7 +45,3 @@ veusz-1.8.tar.gz /veusz-3.6.tar.gz /veusz-3.6.1.tar.gz /veusz-3.6.2.tar.gz -/veusz-4.1.tar.gz -/veusz-4.2.tar.gz -/veusz-4.2.1.tar.gz -/remove-vectorfield-test.patch diff --git a/sources b/sources index b89f9c1..cb0b28a 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (veusz-4.2.1.tar.gz) = 7433f5f7d17f0b45b2a2e3e9d85aa19dcbbdb583f75697ba0919592c99fa9cfd859f94996548b43f7ac3e9e479453041a790d4e3022bb8e699b0e421002e1d58 -SHA512 (remove-vectorfield-test.patch) = b1a05e8a50ead8ea52fec3bdcaffbf731a12ce56a66f7f7256f65ecd75126ccd27ee8f23241a6ffb6c67d62dd9eee034e1b548609448f81165be7ff2dcaf95a9 +SHA512 (veusz-3.6.2.tar.gz) = 5580171c0259415cf3de11322133fde02e244b65ffede1e83b5e6d17c8a037624860550495dc0b53c7b5e2f65b3ae6b95daa0e95f7164358e1201ffedeb13f51 diff --git a/veusz.spec b/veusz.spec index 1e81907..5210453 100644 --- a/veusz.spec +++ b/veusz.spec @@ -1,39 +1,32 @@ Name: veusz -Version: 4.2.1 -Release: 3%{?dist} +Version: 3.6.2 +Release: 1%{?dist} Summary: GUI scientific plotting package License: GPL-2.0-or-later AND (LGPL-2.1-only OR GPL-3.0-only) AND PSF-2.0 AND CC0-1.0 URL: https://veusz.github.io/ Source0: https://github.com/veusz/veusz/releases/download/veusz-%{version}/veusz-%{version}.tar.gz -Patch0: remove-vectorfield-test.patch - -# see RHBZ#2491178 -ExcludeArch: s390x BuildRequires: gcc gcc-c++ -BuildRequires: python3-devel +BuildRequires: python3 python3-devel python3-setuptools BuildRequires: python3-numpy -BuildRequires: qt6-qtbase-devel qt6-qtsvg-devel -BuildRequires: python3-pyqt6 python3-pyqt6-devel -BuildRequires: python3dist(sip) +BuildRequires: qt5-qtbase-devel qt5-qtsvg-devel +BuildRequires: python3-qt5 python3-qt5-devel +BuildRequires: python3-pyqt5-sip python3dist(sip) BuildRequires: python3-h5py +BuildRequires: python3-tomli BuildRequires: desktop-file-utils -Requires: python3dist(pyqt6-sip) >= 13, python3dist(pyqt6-sip) < 14 -Requires: python3-pyqt6 -Requires: python3-numpy -Requires: qt6-qtsvg -Recommends: python3-h5py python3-astropy ghostscript qt6-qtimageformats - +Requires: python3dist(pyqt5-sip) >= 12.8, python3dist(pyqt5-sip) < 13 +Requires: python3-numpy python3-qt5 /usr/bin/env Provides: python3-veusz # we don't want to provide private python extension libs # https://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering %global __provides_exclude_from ^%{python3_sitearch}/veusz/helpers/.*\\.so$ -%generate_buildrequires -%pyproject_buildrequires +# install docs in version specific for old releases +%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} %description Veusz is a 2D and 3D scientific plotting package, designed to create @@ -45,24 +38,33 @@ ternary plots, vector plots, contours, images, shapes and fitting data. 3D point, surface, volume and function plots are also supported. %prep -%autosetup -v -n veusz-%{version} -p1 +%setup -q -n veusz-%{version} + +find -name \*~ | xargs rm -f # remove shebangs from scripts which aren't installed # (veusz allows these to be executed if app isn't installed properly) sed -i '/^#!/d' veusz/veusz_main.py sed -i '/^#!/d' veusz/veusz_listen.py -# delete hidden file in docs -rm -f Documents/manual/html/.buildinfo - %build -%pyproject_wheel +%py3_build %install rm -rf %{buildroot} -%pyproject_install -%pyproject_save_files veusz +# veusz-resource-dir: put data files in location given +%{__python3} setup.py install --skip-build --root %{buildroot} \ + --veusz-resource-dir=%{buildroot}/%{_datadir}/veusz \ + --disable-install-examples + +# tell veusz where its resource directory is in _datadir +ln -s %{_datadir}/veusz \ + %{buildroot}%{python3_sitearch}/veusz/resources + +# tell it where to look for examples and COPYING +ln -s %{_pkgdocdir}/examples \ + %{buildroot}%{_datadir}/veusz # install desktop file desktop-file-install \ @@ -74,20 +76,22 @@ mkdir -p %{buildroot}%{_datadir}/mime/packages/ install -p support/veusz.xml -m 0644 %{buildroot}%{_datadir}/mime/packages/ # appdata file -install -D -p -m 0644 support/veusz.appdata.xml \ - %{buildroot}%{_metainfodir}/veusz.appdata.xml +mkdir -p %{buildroot}%{_datadir}/appdata/ +install -p support/veusz.appdata.xml -m 0644 %{buildroot}%{_datadir}/appdata/ -# copy main icon into pixmaps (for desktop file) -install -D -p -m 0644 icons/veusz.png \ - %{buildroot}%{_datadir}/pixmaps/veusz.png +# symlink main veusz icon into pixmaps (for desktop file) +mkdir %{buildroot}%{_datadir}/pixmaps +ln -s ../veusz/icons/veusz_48.png %{buildroot}%{_datadir}/pixmaps/veusz.png -# also copy in hicolor icons +# also link in hicolor icons for size in 16 32 48 64 128; do - install -D -p -m 0644 icons/veusz_${size}.png \ - %{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps/veusz.png + odir=%{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps + mkdir -p $odir + ln -s %{_datadir}/veusz/icons/veusz_${size}.png ${odir}/veusz.png done -install -D -p -m 0644 icons/veusz.svg \ - %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/veusz.svg +odir=%{buildroot}%{_datadir}/icons/hicolor/scalable/apps +mkdir -p $odir +ln -s %{_datadir}/veusz/icons/veusz.svg $odir # install man pages mkdir -p %{buildroot}%{_mandir}/man1 @@ -95,90 +99,29 @@ install -p Documents/man-page/veusz.1 -m 0644 \ %{buildroot}%{_mandir}/man1 %check -# emf_export relies on pyemf3 which isn't packaged -%pyproject_check_import -e veusz.document.emf_export -e veusz.examples.* +# as the data directory hasn't got the same absolute path we have +# to define VEUSZ_RESOURCE_DIR PYTHONPATH=%{buildroot}%{python3_sitearch} \ + VEUSZ_RESOURCE_DIR=%{buildroot}%{_datadir}/veusz \ QT_QPA_PLATFORM=minimal \ - %{python3} tests/runselftest.py + %{__python3} tests/runselftest.py %files %doc README.md AUTHORS COPYING +%doc examples %doc Documents/manual/html %{_bindir}/veusz %{_mandir}/man1/veusz.1.gz %{_datadir}/applications/veusz.desktop %{_datadir}/mime/packages/veusz.xml -%{_metainfodir}/veusz.appdata.xml +%{_datadir}/appdata/veusz.appdata.xml %{_datadir}/pixmaps/veusz.png %{_datadir}/icons/hicolor/*/apps/veusz.* -%{python3_sitearch}/veusz-%{version}.dist-info/ +%{_datadir}/veusz +%{python3_sitearch}/veusz-*.egg-info %{python3_sitearch}/veusz %changelog -* Wed Jul 22 2026 Python Maint - 4.2.1-3 -- Rebuilt for Python 3.15.0b4 ABI change - -* Fri Jul 17 2026 Fedora Release Engineering - 4.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild - -* Sun Jun 21 2026 Jeremy Sanders - 4.2.1-1 -- Update to new Python packaging guidelines -- Update appdata location to _metainfodir -- Copy icons rather than symlink -- Remove line for versioned docdir -- Remove examples from documentation -- Cleanup dependencies and build dependencies -- Update to Veusz 4.2.1 - -* Thu Jun 04 2026 Python Maint - 4.2-4 -- Rebuilt for Python 3.15 - -* Sat Jan 17 2026 Fedora Release Engineering - 4.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Sun Oct 12 2025 Jeremy Sanders - 4.2-2 -- Remove python3-tomli build requirement - -* Sun Oct 12 2025 Jeremy Sanders - 4.2-1 -- Update to Veusz 4.2 - -* Fri Sep 19 2025 Python Maint - 4.1-4 -- Rebuilt for Python 3.14.0rc3 bytecode - -* Fri Aug 15 2025 Python Maint - 4.1-3 -- Rebuilt for Python 3.14.0rc2 bytecode - -* Fri Jul 25 2025 Fedora Release Engineering - 4.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Sun Jun 15 2025 Jeremy Sanders - 4.1-1 -- Update to Veusz 4.1 -- Updates to Requires and Recommends - -* Tue Jun 03 2025 Python Maint - 3.6.2-9 -- Rebuilt for Python 3.14 - -* Sun Jan 19 2025 Fedora Release Engineering - 3.6.2-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Tue Dec 24 2024 Jeremy Sanders - 3.6.2-7 -- Bump for Numpy 2 (RHBZ#2333963) - -* Sat Jul 20 2024 Fedora Release Engineering - 3.6.2-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sat Jun 08 2024 Python Maint - 3.6.2-5 -- Rebuilt for Python 3.13 - -* Sat Jan 27 2024 Fedora Release Engineering - 3.6.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sat Jul 22 2023 Fedora Release Engineering - 3.6.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Wed Jul 12 2023 Python Maint - 3.6.2-2 -- Rebuilt for Python 3.12 - * Sun Feb 26 2023 Jeremy Sanders - 3.6.2-1 - Update to Veusz 3.6.2 (fixes resource issue) @@ -624,3 +567,4 @@ with Python licensing * Mon Jun 19 2006 Jeremy Sanders - 0.10-2 - Renamed from python-veusz to veusz +