Blob Blame History Raw
Name:           python3-iep
Version:        3.4
Release:        2%{?dist}
Summary:        The interactive editor for Python

Group:          Development/Tools
License:        BSD
URL:            http://www.iep-project.org/
Source0:        https://pypi.python.org/packages/source/i/iep/iep-%{version}.tar.gz
Source1:        iep.desktop
Patch0:         iep-3.4-font-dir.patch

BuildArch:      noarch

Requires:       adobe-source-code-pro-fonts
Requires:       dejavu-sans-mono-fonts
Requires:       python3-PyQt4
Requires:       python3-pyzolib
BuildRequires:  desktop-file-utils
BuildRequires:  python3-devel
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils

%description
IEP (pronounced as eep) is a cross-platform Python IDE focused on interactivity
and introspection, which makes it very suitable for scientific computing. Its
practical design is aimed at simplicity and efficiency.

%prep
%setup -qn iep-%{version}
%patch0 -p1

# Remove bundled fonts
rm -rf iep/resources/fonts

# Remove the unused style files (not yet implemented in IEP 3)
rm -f iep/resources/style_*.ssdf

# To fix non-executable-scripts in rpmlint
for lib in `find iep -name '*.py'`; do
    sed '1{\@^#!/usr/bin/env python@d}' $lib > $lib.new &&
    touch -r $lib $lib.new &&
    mv $lib.new $lib
done

%build
%{__python3} setup.py build

%install
%{__python3} setup.py install --skip-build --root %{buildroot}
install -D -m0644 iep/resources/appicons/ieplogo16.png %{buildroot}%{_datadir}/icons/hicolor/16x16/apps/iep.png
install -D -m0644 iep/resources/appicons/ieplogo32.png %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/iep.png
install -D -m0644 iep/resources/appicons/ieplogo48.png %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/iep.png
install -D -m0644 iep/resources/appicons/ieplogo64.png %{buildroot}%{_datadir}/icons/hicolor/64x64/apps/iep.png
install -D -m0644 iep/resources/appicons/ieplogo128.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/iep.png
install -D -m0644 iep/resources/appicons/ieplogo256.png %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/iep.png

desktop-file-install                            \
--dir=%{buildroot}%{_datadir}/applications      \
%{SOURCE1}

%check
desktop-file-validate %{buildroot}/%{_datadir}/applications/iep.desktop

%post
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
/usr/bin/update-desktop-database &> /dev/null || :

%postun
if [ $1 -eq 0 ] ; then
    /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
    /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
/usr/bin/update-desktop-database &> /dev/null || :

%posttrans
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :

%files
%doc iep/contributors.txt iep/license.txt
%{python3_sitelib}/iep
%{python3_sitelib}/iep-%{version}-py?.?.egg-info
%{_datadir}/icons/hicolor/*/apps/iep.png
%{_datadir}/applications/iep.desktop

%changelog
* Mon Apr 21 2014 Scott K Logan <logans@cottsay.net> - 3.4-2
- Un-bundle fonts and add them as requirements
- Remove unused style definition files (unimplemented in IEP 3)

* Fri Apr 04 2014 Scott K Logan <logans@cottsay.net> - 3.4-1
- Initial package