d15809a
d15809a
# avoid empty debuginfo package
d15809a
%define debug_package %{nil}
d15809a
d15809a
# trim changelog included in binary rpms
d15809a
%global _changelog_trimtime %(date +%s -d "1 year ago")
d15809a
d15809a
Name:    eric
d15809a
Summary: Python IDE
fcd20ec
Version: 24.3
882b546
Release: %autorelease
d15809a
d15809a
License: GPLv3+
a96a1ce
URL:     https://eric-ide.python-projects.org
a96a1ce
Source0: https://downloads.sourceforge.net/sourceforge/eric-ide/%{name}7-%{version}.tar.gz
d15809a
BuildArch: noarch
d15809a
# webengine not available on all archs
a96a1ce
ExclusiveArch: %{qt6_qtwebengine_arches} noarch
d15809a
d15809a
Source30: eric-32.png
d15809a
Source31: eric-48.png
d15809a
Source32: eric-64.png
d15809a
d15809a
## downstream patches
a96a1ce
# sane defaults: disable version check, qt5/qt6 configuration
a96a1ce
Patch100: eric7-23.9-defaults.patch
d15809a
d15809a
BuildRequires: desktop-file-utils
d15809a
BuildRequires: python3-devel python3
a96a1ce
BuildRequires: python3-pyqt6
a96a1ce
BuildRequires: python3-pyqt6-charts
a96a1ce
BuildRequires: python3-pyqt6-webengine
a96a1ce
BuildRequires: python3-qscintilla-qt6
d15809a
%if 0%{?fedora}
d15809a
BuildRequires: libappstream-glib
d15809a
%endif
d15809a
a96a1ce
Provides: eric7 = %{version}-%{release}
a96a1ce
a96a1ce
Requires: python3-pyqt6
a96a1ce
Requires: python3-pyqt6-charts
a96a1ce
Requires: python3-pyqt6-webengine
a96a1ce
Requires: python3-qscintilla-qt6
a96a1ce
Requires: python3dist(asttokens)
a96a1ce
Requires: python3dist(black)
a96a1ce
Requires: python3dist(chardet)
a96a1ce
Requires: python3dist(coverage)
a96a1ce
Requires: python3dist(chardet)
a96a1ce
Requires: python3dist(docutils)
a96a1ce
Requires: python3dist(editorconfig)
a96a1ce
Requires: python3dist(isort)
a96a1ce
Requires: python3dist(jedi)
a96a1ce
Requires: python3dist(markdown)
a96a1ce
Requires: python3dist(packaging)
a96a1ce
Requires: python3dist(parso)
a96a1ce
Requires: python3dist(pip)
a96a1ce
Requires: python3dist(pygments)
a96a1ce
Requires: python3dist(pyyaml)
a96a1ce
Requires: python3dist(semver)
a96a1ce
Requires: python3dist(tomlkit)
a96a1ce
Requires: python3dist(trove-classifiers)
a96a1ce
Requires: python3dist(wheel)
a96a1ce
Recommends: python3-docs
fcd20ec
Recommends: qt6-doc-html
a96a1ce
Recommends: qt6-qttranslations
d15809a
d15809a
%description
a96a1ce
eric7 is a full featured Python IDE.
d15809a
d15809a
d15809a
%prep
60e637c
%autosetup -p1 -n eric7-%{version}
d15809a
d15809a
d15809a
%build
d15809a
# Empty build
d15809a
d15809a
d15809a
%install
d15809a
%{__python3} install.py \
d15809a
  -i %{buildroot}/ \
d15809a
  -b %{_bindir} \
d15809a
  -d %{python3_sitelib} \
d15809a
  -z
d15809a
d15809a
# icons
d15809a
install -m644 -p -D %{SOURCE30} %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/eric.png
d15809a
install -m644 -p -D %{SOURCE32} %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/eric.png
d15809a
fcd20ec
# non-standard category
fcd20ec
desktop-file-edit --remove-category=MicroPython %{buildroot}%{_datadir}/applications/eric7_mpy.desktop
d15809a
fcd20ec
%find_lang %{name} --with-qt --all-name
d15809a
d15809a
## unpackaged files
fcd20ec
# duplicate file
fcd20ec
rm -fv  %{buildroot}%{_datadir}/appdata/eric7.appdata.xml
d15809a
# deprecated icons
a96a1ce
rm -rfv %{buildroot}%{_datadir}/icons/eric*
a96a1ce
rm -fv  %{buildroot}%{python3_sitelib}/eric7/LICENSE.txt
a96a1ce
a96a1ce
sed -i -e 's|-i %{buildroot}/||' %{buildroot}%{python3_sitelib}/eric7/eric7install.json
d15809a
d15809a
d15809a
%check
d15809a
%if 0%{?fedora}
fcd20ec
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/eric7.appdata.xml
d15809a
%endif
a96a1ce
test "$(grep '^Exec' %{buildroot}%{_datadir}/applications/eric7_ide.desktop)" = "Exec=%{_bindir}/eric7_ide"
a96a1ce
desktop-file-validate %{buildroot}%{_datadir}/applications/eric7_browser.desktop
a96a1ce
desktop-file-validate %{buildroot}%{_datadir}/applications/eric7_ide.desktop
fcd20ec
desktop-file-validate %{buildroot}%{_datadir}/applications/eric7_mpy.desktop
d15809a
d15809a
d15809a
%files -f %{name}.lang
a96a1ce
%doc eric/docs/README.md
d15809a
%doc eric/docs/THANKS
a96a1ce
%license eric/docs/LICENSE.txt
a96a1ce
%{_bindir}/eric7*
fcd20ec
%pycached %{python3_sitelib}/eric7config.py
a96a1ce
%dir %{python3_sitelib}/eric7/
fcd20ec
%pycached %{python3_sitelib}/eric7/*.py
fcd20ec
%exclude %{python3_sitelib}/eric7/*.pyw
a96a1ce
%{python3_sitelib}/eric7/icons/
a96a1ce
%{python3_sitelib}/eric7/pixmaps/
a96a1ce
%{python3_sitelib}/eric7/[A-Z]*/
a96a1ce
%{python3_sitelib}/eric7/*.ekj
a96a1ce
%{python3_sitelib}/eric7/*.json
a96a1ce
%dir %{python3_sitelib}/eric7/i18n/
a96a1ce
%{python3_sitelib}/eric7plugins/
fcd20ec
%{_metainfodir}/eric7.appdata.xml
a96a1ce
%{_datadir}/applications/eric7_browser.desktop
a96a1ce
%{_datadir}/applications/eric7_ide.desktop
fcd20ec
%{_datadir}/applications/eric7_mpy.desktop
a96a1ce
%{_datadir}/icons/hicolor/*/apps/eric*
a96a1ce
%{_datadir}/qt6/qsci/api/MicroPython/
a96a1ce
%{_datadir}/qt6/qsci/api/Python3/
a96a1ce
%{_datadir}/qt6/qsci/api/QSS/
d15809a
d15809a
d15809a
%changelog
882b546
%autochangelog