%global commit0 8e374efe57903c4b1a7b70a23f84a9146e11bb10
%global date0 20160227
Name: enki
Version: 15.11.2
Release: 0.1.%{date0}git%(c=%{commit0}; echo ${c:0:7})%{?dist}
Summary: Text editor for programmers
License: GPLv2+
URL: http://%{name}-editor.org/
Source0: https://github.com/hlamer/%{name}/archive/%{commit0}.tar.gz#/%{name}-%{commit0}.tar.gz
#v%%{version}.tar.gz#/%%{name}-%%{version}.tar.gz
BuildArch: noarch
# FIXME upstream plans to support Python3 and PyQt5 later in future, see individual issues for qutepart
BuildRequires: python3-qt5
BuildRequires: pyparsing
BuildRequires: python3-devel
BuildRequires: python3-qutepart
BuildRequires: python3-setuptools
# documentation
BuildRequires: python3-sphinx
# tests, FIXME add more optional dependencies to enable specific tests
BuildRequires: desktop-file-utils
BuildRequires: python3-markdown
BuildRequires: python3-mock
BuildRequires: python3-regex
BuildRequires: xorg-x11-server-Xvfb
# runtime
Requires: ctags
Requires: pyparsing
Requires: python3-qt5
Requires: python3 >= 2.7
Requires: python3-docutils
Requires: python3-markdown
Requires: python3-qutepart >= 2.2.0
Requires: python3-regex
# we place additional icons
Requires: hicolor-icon-theme
# compatibility, accidently used subpackage, rhbz#1292724
Obsoletes: %{name}-plugins
%description
Enki is a text editor for programmers. It is:
- User friendly. Intuitive interface. Works out of the box. You don’t have
to read a lot of docs.
- Hacker friendly. Work as quickly as possible. Navigate efficiently without
your mouse.
- Advanced. You invent software. An editor helps you focus on inventing,
instead of fighting with your tools.
- Extensible. Operating systems are designed for running applications. Enki
is designed for running plugins.
- Cross platform. Use your habitual editor on any OS. Tested on Linux and
Windows. Users report that Enki works Mac OS X.
- High quality. No long list of fancy features. But, what is done, is done
well.
- Open source. Created, tested, and designed for the community, by the
community, and with the community.
%package doc
Summary: Additional documentation for %{name}
%description doc
%{summary}.
%prep
%setup0 -qn%{name}-%{commit0}
# ignore useless distribution folders
rm -r debian rpm win
# disable sloppy tests
pushd tests
## python2
#rm test_plugins/test_workspace_actions.py
#rm test_core/test_open_file.py
## python3 crashes Xvfb-run
rm test_core/test_detect_language.py
rm test_lib/test_future.py
# skip the plugins, too hungry for poor Xvfb
rm test_plugins/*.py
%build
%py3_build
sphinx-build-3 doc html
rm -r html/.buildinfo html/.doctrees
%install
%py3_install
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop
# ignore those really weird "fatal warnings" from dbus to not confuse tests
export DBUS_FATAL_WARNINGS=0
xvfb-run %{__python3} tests/run_all.py
%files
%license LICENSE.GPL2
%doc README.md ChangeLog
%{python3_sitelib}/%{name}*.egg-info
%dir %{python3_sitelib}/%{name}
%{python3_sitelib}/%{name}/*
%{python3_sitelib}/%{name}/plugins/
%{_datadir}/icons/hicolor/*/apps/%{name}.*
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/applications/%{name}.desktop
%{_bindir}/%{name}
%files doc
%license LICENSE.GPL2
%doc html/
%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 || :
%changelog
* Sun Feb 28 2016 Raphael Groner <projects.rg@smart.ms> - 15.11.2-0.1
- v15.11.2, maybe 15.12.0 or similiar, but pre1
- move to python3 and qt5
* Sat Feb 27 2016 Raphael Groner <projects.rg@smart.ms> - 15.11.1-3
- rebuild to validate dependencies (crash in koschei)
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 15.11.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Mon Jan 11 2016 Fedora Release Monitoring <release-monitoring@fedoraproject.org> - 15.11.1-1
- Update to 15.11.1 (#1297567)
* Sat Jan 09 2016 Raphael Groner <projects.rg@smart.ms> - 15.11.0-2
- merge plugins subpackage, rhbz#1292724
* Thu Dec 03 2015 Raphael Groner <projects.rg@smart.ms> - 15.11.0-1
- new version
- add python-regex
- remove license breakdown, now generally GPLv2+
- remove Suggests: enki-plugins
* Tue Nov 17 2015 Raphael Groner <projects.rg@smart.ms> - 15.05.0-2
- fix license breakdown
- ignore useless distribution folders
- use python macros to build and install
- split plugins into subpackage
* Fri Nov 13 2015 Raphael Groner <projects.rg@smart.ms> - 15.05.0-1
- continue review
- new upstream version
- add proper snippets for mime database and icon cache
- generate documentation
- execute tests
* Thu May 7 2015 Jairo Llopis <yajo.sk8@gmail.com> 14.07.2-7
- New upstream version.
- Updated dependencies.
- Updated description.
- Remove translations.
* Mon Jul 7 2014 Jairo Llopis <yajo.sk8@gmail.com> 14.03.0-6
- New upstream version.
- Fix some macros in the spec file.
* Sun Oct 6 2013 Jairo Llopis <yajo.sk8@gmail.com> 13.09.2-5
- Add dependency to python-docutils.
* Sun Oct 6 2013 Jairo Llopis <yajo.sk8@gmail.com> 13.09.2-4
- New upstream version.
* Sun Sep 8 2013 Jairo Llopis <yajo.sk8@gmail.com> 13.08.1-3
- New upstream version, now based on qutepart.
- Remove patch that has already been merged upstream.
* Tue Jul 16 2013 Jairo Llopis <yajo.sk8@gmail.com> 12.10.3-2
- Declare variables with global.
- Link patch0 to its upstream bug.
- Validate desktop file installation.
- Add icon cache scriptlets.
- Change Source tag for Source0.
- Fix requirements.
* Sat Jul 6 2013 Jairo Llopis <yajo.sk8@gmail.com> 12.10.3-1
- Initial release.