diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4726fc0
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+SOURCES/idna-2.5.tar.gz
diff --git a/.python-idna.metadata b/.python-idna.metadata
new file mode 100644
index 0000000..9e187b7
--- /dev/null
+++ b/.python-idna.metadata
@@ -0,0 +1 @@
+499531b72bf0440ded6ce7f079a1f979270ae2d0 SOURCES/idna-2.5.tar.gz
diff --git a/SPECS/python-idna.spec b/SPECS/python-idna.spec
new file mode 100644
index 0000000..8cfbf26
--- /dev/null
+++ b/SPECS/python-idna.spec
@@ -0,0 +1,188 @@
+%global srcname idna
+
+%if 0%{?fedora} || 0%{?rhel} >= 8
+%bcond_without python3
+%else
+%bcond_with python3
+%endif
+
+%if 0%{?rhel} > 7
+# Disable python2 build by default
+%bcond_with python2
+%else
+%bcond_without python2
+%endif
+
+Name:           python-%{srcname}
+Version:        2.5
+Release:        5%{?dist}
+Summary:        Internationalized Domain Names in Applications (IDNA)
+
+License:        BSD and Python and Unicode
+URL:            https://github.com/kjd/idna
+Source0:        https://pypi.io/packages/source/i/%{srcname}/%{srcname}-%{version}.tar.gz
+BuildArch:      noarch
+
+%if 0%{?with_python2}
+BuildRequires:  python2-devel
+BuildRequires:  python2-setuptools
+%endif # with_python2
+%if 0%{?with_python3}
+BuildRequires:  python%{python3_pkgversion}-devel
+BuildRequires:  python%{python3_pkgversion}-setuptools
+%endif # with_python3
+
+%description
+A library to support the Internationalised Domain Names in Applications (IDNA)
+protocol as specified in RFC 5891 <http://tools.ietf.org/html/rfc5891>.  This
+version of the protocol is often referred to as "IDNA2008" and can produce
+different results from the earlier standard from 2003.
+
+The library is also intended to act as a suitable drop-in replacement for the
+"encodings.idna" module that comes with the Python standard library but
+currently only supports the older 2003 specification.
+
+%if 0%{?with_python2}
+%package -n python2-%{srcname}
+Summary:        Internationalized Domain Names in Applications (IDNA)
+%{?python_provide:%python_provide python2-%{srcname}}
+
+%description -n python2-%{srcname}
+A library to support the Internationalised Domain Names in Applications (IDNA)
+protocol as specified in RFC 5891 <http://tools.ietf.org/html/rfc5891>.  This
+version of the protocol is often referred to as "IDNA2008" and can produce
+different results from the earlier standard from 2003.
+
+The library is also intended to act as a suitable drop-in replacement for the
+"encodings.idna" module that comes with the Python standard library but
+currently only supports the older 2003 specification.
+%endif # with_python2
+
+%if 0%{?with_python3}
+%package -n python%{python3_pkgversion}-%{srcname}
+Summary:        Internationalized Domain Names in Applications (IDNA)
+%{?python_provide:%python_provide python%{python3_pkgversion}-%{srcname}}
+
+%description -n python%{python3_pkgversion}-%{srcname}
+A library to support the Internationalised Domain Names in Applications (IDNA)
+protocol as specified in RFC 5891 <http://tools.ietf.org/html/rfc5891>.  This
+version of the protocol is often referred to as "IDNA2008" and can produce
+different results from the earlier standard from 2003.
+
+The library is also intended to act as a suitable drop-in replacement for the
+"encodings.idna" module that comes with the Python standard library but
+currently only supports the older 2003 specification.
+%endif # with_python3
+
+%prep
+%setup -q -n %{srcname}-%{version}
+# Remove bundled egg-info
+rm -rf %{srcname}.egg-info
+
+%build
+%if 0%{?with_python2}
+%py2_build
+%endif # with_python2
+
+%if 0%{?with_python3}
+%py3_build
+%endif # with_python3
+
+%install
+%if 0%{?with_python3}
+%py3_install
+%endif # with_python3
+
+%if 0%{?with_python2}
+%py2_install
+%endif # with_python2
+
+%check
+%if 0%{?with_python2}
+%{__python2} setup.py test
+%endif # with_python2
+
+%if 0%{?with_python3}
+%{__python3} setup.py test
+%endif # with_python3
+
+%if 0%{?with_python2}
+%files -n python2-%{srcname}
+%license LICENSE.rst
+%doc README.rst HISTORY.rst
+%{python2_sitelib}/%{srcname}
+%{python2_sitelib}/%{srcname}-%{version}-py%{python2_version}.egg-info
+%endif # with_python2
+
+%if 0%{?with_python3}
+%files -n python%{python3_pkgversion}-%{srcname}
+%license LICENSE.rst
+%doc README.rst HISTORY.rst
+%{python3_sitelib}/%{srcname}
+%{python3_sitelib}/%{srcname}-%{version}-py%{python3_version}.egg-info
+%endif # with_python3
+
+%changelog
+* Thu Jun 28 2018 Christian Heimes <cheimes@redhat.com> - 2.5-5
+- Drop Python 2 subpackage from RHEL 8, fixes RHBZ#1590399
+
+* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Fri Jan 19 2018 Iryna Shcherbina <ishcherb@redhat.com> - 2.5-3
+- Update Python 2 dependency declarations to new packaging standards
+  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.5-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Tue Mar 07 2017 Jeremy Cline <jeremy@jcline.org> - 2.5-1
+- Update to version 2.5
+
+* Wed Mar 01 2017 Jeremy Cline <jeremy@jcline.org> - 2.4-1
+- Update to version 2.4
+
+* Tue Feb 28 2017 Paul Wouters <pwouters@redhat.com> - 2.3-1
+- Resolves: rhbz#1427499 Update to 2.3 for IDNAError bugfix and memory improvement
+
+* Thu Feb 09 2017 Jeremy Cline <jeremy@jcline.org> - 2.2-1
+- Update to version 2.2 (#1406757)
+
+* Fri Dec 09 2016 Charalampos Stratakis <cstratak@redhat.com> - 2.1-3
+- Rebuild for Python 3.6
+
+* Mon Nov 28 2016 Orion Poplawski <orion@cora.nwra.com> - 2.1-2
+- Ship python2-idna
+- Enable python3 for EPEL
+- Modernize spec
+
+* Mon Oct 17 2016 tom.prince@ualberta.net - 2.1-1
+- Bump version.
+
+* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-4
+- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
+
+* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Wed Nov 04 2015 Robert Kuska <rkuska@redhat.com> - 2.0-2
+- Rebuilt for Python3.5 rebuild
+
+* Thu Aug 13 2015 Paul Wouters <pwouters@redhat.com> - 2.0-1
+- Update to 2.0 which is required by python-cryptography
+
+* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Wed Dec 31 2014 tom.prince@ualberta.net - 1.0-1
+- Bump version.
+
+* Mon Oct 27 2014 tom.prince@ualberta.net - 0.8-3
+- Update licences.
+
+* Sat Jul 12 2014 tom.prince@ualberta.net - 0.8-2
+- Be more specfic about .egg-info directories.
+- Use python2-devel
+
+* Sat Jul 12 2014 tom.prince@ualberta.net - 0.8-1
+- Initial package.