%bcond_with tests_py %global srcurl https://github.com/andreikop/%{name} Name: enki Version: 22.08.0 Release: 1%{?dist} Summary: Text editor for programmers License: GPLv2+ URL: http://%{name}-editor.org/ Source0: %{srcurl}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz BuildArch: noarch ExclusiveArch: %{qt5_qtwebengine_arches} noarch BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-qt5 BuildRequires: python3-pyparsing BuildRequires: python3-qutepart # documentation BuildRequires: python3-sphinx # tests BuildRequires: desktop-file-utils %if %{with tests_py} #BuildRequires: python3-sip BuildRequires: python3-qt5-webengine BuildRequires: xorg-x11-server-Xvfb %endif # FIXME add more optional dependencies to enable specific tests BuildRequires: python3-markdown BuildRequires: python3-mock BuildRequires: python3-regex # runtime Requires: python3 Requires: python3-qt5 Requires: python3-pyparsing # enforce fix for python 3.10 Requires: python3-qutepart >= 3.3.2 # FIXME is sphinx optional? Requires: python3-sphinx # FIXME issue#425, markdown is needed as dependency Requires: python3-markdown %if 0%{?fedora} # optional for special runtime Recommends: python3-flake8 Recommends: python3-docutils #Recommends: python3-markdown Recommends: python3-regex Recommends: ctags # FIXME do we need QtWebEngine for sure? # upstream issues/446, rhbz#1642060 Recommends: python3-qt5-webengine # upstream issues/465 Suggests: python3-qtconsole %endif # fedora # we place additional icons Requires: hicolor-icon-theme # compatibility, accidently used subpackage, rhbz#1292724 Obsoletes: %{name}-plugins < 19.10.0 %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 %autosetup -p1 -n%{name}-%{version} # distutils does not know options entry_points and install_requires: use setuptools instead sed -i s:distutils\.core:setuptools: setup.py # skip enforcement of optional dependencies sed -i -r -e '/flake8/d' -e '/CodeChat/d' -e '/regex/d' setup.py # ignore useless distribution folders rm -rv debian rpm win # skip tests of plugins, too hungry for poor Xvfb rm -v tests/test_plugins/*.py %build %py3_build sphinx-build-3 doc html rm -rv html/.buildinfo html/.doctrees %install %py3_install %check desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop # FIXME rhbz#1752766, python3-sip not available %if %{with tests_py} # we must be inside the tests folder to let the script find something pushd tests # FIXME ugly hackery to disable failing tests # https://github.com/andreikop/enki/issues/456 sed -i "s:'TRAVIS_OS_NAME' in os.environ:True:" test_base.py # run tests in a mocked X environment xvfb-run -s '-screen :0 1024x768x16' %{__python3} run_all.py %endif %files %license LICENSE.GPL2 %doc README.md ChangeLog %{python3_sitelib}/%{name}*.egg-info %{python3_sitelib}/%{name}/ %{_datadir}/icons/hicolor/*/apps/%{name}.* %{_datadir}/pixmaps/%{name}.png %{_datadir}/applications/%{name}.desktop %{_bindir}/%{name} %files doc %license LICENSE.GPL2 %doc html/ %changelog * Wed Aug 10 2022 Fedora Release Monitoring - 22.08.0-1 - Update to 22.08.0 (#2117246) * Thu Jul 21 2022 Fedora Release Engineering - 21.11.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Tue Jul 19 2022 Zbigniew Jędrzejewski-Szmek - 21.11.0-4 - Rebuilt for pyparsing-3.0.9 * Mon Jun 13 2022 Python Maint - 21.11.0-3 - Rebuilt for Python 3.11 * Thu Jan 20 2022 Fedora Release Engineering - 21.11.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Sun Nov 21 2021 Raphael Groner - 21.11.0-1 - new version, rhbz#2023192 - fix crash with python 3.10, rhbz#2019640 - ignore weak dependencies for builds without fedora * Wed Jul 21 2021 Fedora Release Engineering - 20.03.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 20.03.1-5 - Rebuilt for Python 3.10 * Tue Jan 26 2021 Fedora Release Engineering - 20.03.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Jul 27 2020 Fedora Release Engineering - 20.03.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue May 26 2020 Miro Hrončok - 20.03.1-2 - Rebuilt for Python 3.9 * Thu Apr 02 2020 Raphael Groner - 20.03.1-1 - new version * Tue Jan 28 2020 Fedora Release Engineering - 19.10.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Sat Nov 23 2019 Raphael Groner - 19.10.0-2 - rebuilt (python-qutepart) * Sat Nov 23 2019 Raphael Groner - 19.10.0-1 - new version * Thu Oct 03 2019 Miro Hrončok - 18.08.0-6 - Rebuilt for Python 3.8.0rc1 (#1748018) * Mon Aug 19 2019 Miro Hrončok - 18.08.0-5 - Rebuilt for Python 3.8 * Wed Aug 07 2019 Dan Horák - 18.08.0-4 - set ExclusiveArch as there is dependency on qt5-qtwebengine * Wed Jul 24 2019 Fedora Release Engineering - 18.08.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Thu Jan 31 2019 Fedora Release Engineering - 18.08.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Mon Dec 17 2018 Raphael Groner - 18.08.0-1 - new version * Sun Jul 22 2018 Raphael Groner - 17.03.0-10 - mark markdown as mandatory to fix an issue with setup.py * Thu Jul 12 2018 Fedora Release Engineering - 17.03.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Tue Jun 19 2018 Miro Hrončok - 17.03.0-8 - Rebuilt for Python 3.7 * Wed Feb 07 2018 Fedora Release Engineering - 17.03.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Sun Aug 13 2017 Raphael Groner - 17.03.0-6 - add dependency python3-sphinx * Wed Jul 26 2017 Fedora Release Engineering - 17.03.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sun May 07 2017 Raphael Groner - 17.03.0-4 - thread regex as optional, too * Sun May 07 2017 Raphael Groner - 17.03.0-3 - drop hard dependencies to flake8 and CodeChat, latter not packaged yet * Tue Mar 28 2017 Raphael Groner - 17.03.0-2 - mark optional dependencies * Tue Mar 28 2017 Raphael Groner - 17.03.0-1 - Update to 17.03.0 (#1436456) - use setuptools instead of distutils - explicitly set screen depth for tests: qt dropped support for depth 8 - add verbose option to rm * Fri Feb 10 2017 Fedora Release Engineering - 16.04.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Dec 19 2016 Miro Hrončok - 16.04.1-5 - Rebuild for Python 3.6 * Thu Dec 08 2016 Builder - 16.04.1-4 - rebuilt for Qt 5.7.1 * Tue Aug 30 2016 Raphael Groner - 16.04.1-3 - rhbz#1365138, add python3-pyparsing and drop python2 relations - reorder dependency list for better overview * Tue Jul 19 2016 Fedora Release Engineering - 16.04.1-2 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Wed Jun 15 2016 Raphael Groner - 16.04.1-1 - new version - drop upstreamed patch * Mon May 09 2016 Raphael Groner - 16.04.0-3 - fix TypeError: decorated slot, rhbz#1332274 * Sun Apr 24 2016 Raphael Groner - 16.04.0-2 - add R: python3-qt5-webkit, enki does not work without * Fri Apr 22 2016 Raphael Groner - 16.04.0-1 - bump to v16.04.0 * Thu Mar 24 2016 Raphael Groner - 15.11.2-0.3.20160227git8e374ef - remove obsolete workarounds * Wed Mar 02 2016 Rex Dieter 15.11.2-0.2 - Requires: python3-qt5-webkit * Sun Feb 28 2016 Raphael Groner - 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 - 15.11.1-3 - rebuild to validate dependencies (crash in koschei) * Wed Feb 03 2016 Fedora Release Engineering - 15.11.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Mon Jan 11 2016 Fedora Release Monitoring - 15.11.1-1 - Update to 15.11.1 (#1297567) * Sat Jan 09 2016 Raphael Groner - 15.11.0-2 - merge plugins subpackage, rhbz#1292724 * Thu Dec 03 2015 Raphael Groner - 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 - 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 - 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 14.07.2-7 - New upstream version. - Updated dependencies. - Updated description. - Remove translations. * Mon Jul 7 2014 Jairo Llopis 14.03.0-6 - New upstream version. - Fix some macros in the spec file. * Sun Oct 6 2013 Jairo Llopis 13.09.2-5 - Add dependency to python-docutils. * Sun Oct 6 2013 Jairo Llopis 13.09.2-4 - New upstream version. * Sun Sep 8 2013 Jairo Llopis 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 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 12.10.3-1 - Initial release.