diff --git a/buildroot-patches/0000-Switch-Python3.9.4-to-Python3.8.9.patch b/buildroot-patches/0000-Switch-Python3.9.4-to-Python3.8.9.patch
new file mode 100644
index 00000000..5cffaca0
--- /dev/null
+++ b/buildroot-patches/0000-Switch-Python3.9.4-to-Python3.8.9.patch
@@ -0,0 +1,1581 @@
+From d7917b67fa048a032e71cf1668c1cb1178d67520 Mon Sep 17 00:00:00 2001
+From: j1nx
+Date: Wed, 7 Apr 2021 11:47:39 +0200
+Subject: [PATCH 1/1] Switch Python3.9.4 to Python3.8.9
+
+---
+ ...e-the-build-of-pyc-files-conditional.patch | 14 +++----
+ ...taddrinfo-configure-test-when-cross-.patch | 8 ++--
+ ...re-to-disable-the-build-of-certain-e.patch | 20 +++++-----
+ ...y-header-paths-for-cross-compilation.patch | 12 +++---
+ ...ook-in-usr-lib-termcap-for-libraries.patch | 8 ++--
+ .../0006-Don-t-add-multiarch-paths.patch | 8 ++--
+ .../0007-Abort-on-failed-module-build.patch | 8 ++--
+ .../0008-Serial-ioctl-workaround.patch | 6 +--
+ ...e-shebang-of-Python-scripts-for-cros.patch | 4 +-
+ ...ig.sh.in-ensure-sed-invocations-only.patch | 4 +-
+ ...locale-and-set-to-default-when-addin.patch | 14 +++----
+ ...Add-importlib-fix-for-PEP-3147-issue.patch | 12 +++---
+ ...-disable-installation-of-test-module.patch | 29 ++++++--------
+ .../0014-Add-an-option-to-disable-pydoc.patch | 28 ++++++-------
+ ...015-Add-an-option-to-disable-lib2to3.patch | 24 +++++------
+ ...option-to-disable-the-sqlite3-module.patch | 16 ++++----
+ ...d-an-option-to-disable-the-tk-module.patch | 20 +++++-----
+ ...-option-to-disable-the-curses-module.patch | 26 ++++++------
+ .../0019-Add-an-option-to-disable-expat.patch | 20 +++++-----
+ ...-Add-an-option-to-disable-CJK-codecs.patch | 8 ++--
+ .../0021-Add-an-option-to-disable-NIS.patch | 8 ++--
+ ...Add-an-option-to-disable-unicodedata.patch | 8 ++--
+ .../0023-Add-an-option-to-disable-IDLE.patch | 20 +++++-----
+ ...024-Add-an-option-to-disable-decimal.patch | 16 ++++----
+ ...on-to-disable-the-ossaudiodev-module.patch | 8 ++--
+ ...an-option-to-disable-openssl-support.patch | 8 ++--
+ ...ption-to-disable-the-readline-module.patch | 8 ++--
+ ...to-disable-zlib-bzip2-and-xz-modules.patch | 8 ++--
+ ...thon-config.sh-don-t-reassign-prefix.patch | 4 +-
+ ...-Fix-cross-compiling-the-uuid-module.patch | 8 ++--
+ ...Add-an-option-to-disable-uuid-module.patch | 8 ++--
+ ...-fix-building-on-older-distributions.patch | 4 +-
+ ...up-CC-print-multiarch-output-for-mus.patch | 8 ++--
+ ...-ng-doesn-t-set-errno-when-encryptio.patch | 40 -------------------
+ package/python3/python3.hash | 5 +--
+ package/python3/python3.mk | 10 +++--
+ 36 files changed, 206 insertions(+), 254 deletions(-)
+ delete mode 100644 package/python3/0034-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch
+
+diff --git a/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch b/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch
+index 5eb296c6d8..1010d08d53 100644
+--- a/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch
++++ b/package/python3/0001-Make-the-build-of-pyc-files-conditional.patch
+@@ -1,4 +1,4 @@
+-From 322724e166d7ec0393aec577c12fdf6ef2b61e1d Mon Sep 17 00:00:00 2001
++From 586a67bb448290a98df45e9f61d803952d2aa761 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 16:21:31 -0800
+ Subject: [PATCH] Make the build of pyc files conditional
+@@ -15,10 +15,10 @@ Signed-off-by: Andrey Smirnov
+ 2 files changed, 8 insertions(+)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 77f91e72b1..0c809f3d8a 100644
++index 502317aa0c..f9011c132a 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1528,6 +1528,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
++@@ -1455,6 +1455,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
+ $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
+ $(DESTDIR)$(LIBDEST)/distutils/tests ; \
+ fi
+@@ -26,7 +26,7 @@ index 77f91e72b1..0c809f3d8a 100644
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
+ -j0 -d $(LIBDEST) -f \
+-@@ -1555,6 +1556,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
++@@ -1482,6 +1483,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
+ $(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
+ -j0 -d $(LIBDEST)/site-packages -f \
+ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
+@@ -35,10 +35,10 @@ index 77f91e72b1..0c809f3d8a 100644
+ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
+ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ diff --git a/configure.ac b/configure.ac
+-index d60f05251a..1ee5a09588 100644
++index a189d42c2c..4690cdba9f 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -1112,6 +1112,12 @@ fi
++@@ -1091,6 +1091,12 @@ fi
+
+ AC_MSG_CHECKING(LDLIBRARY)
+
+@@ -52,5 +52,5 @@ index d60f05251a..1ee5a09588 100644
+ # library that we build, but we do not want to link against it (we
+ # will find it with a -framework option). For this reason there is an
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0002-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch b/package/python3/0002-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch
+index c291d14460..e9e5b32ca2 100644
+--- a/package/python3/0002-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch
++++ b/package/python3/0002-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch
+@@ -1,4 +1,4 @@
+-From 72e20220f3a592b3ab9f440fbe74efa9f9e82d49 Mon Sep 17 00:00:00 2001
++From 3b558cfb1670300afece09b957e1e4b7072bce6b Mon Sep 17 00:00:00 2001
+ From: Vanya Sergeev
+ Date: Wed, 23 Dec 2015 11:30:33 +0100
+ Subject: [PATCH] Disable buggy_getaddrinfo configure test when cross-compiling
+@@ -10,10 +10,10 @@ Signed-off-by: Vanya Sergeev
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+ diff --git a/configure.ac b/configure.ac
+-index 1ee5a09588..c2445edc88 100644
++index 4690cdba9f..ffeec102b7 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -4175,7 +4175,7 @@ fi
++@@ -4080,7 +4080,7 @@ fi
+
+ AC_MSG_RESULT($ac_cv_buggy_getaddrinfo)
+
+@@ -23,5 +23,5 @@ index 1ee5a09588..c2445edc88 100644
+ if test $ipv6 = yes
+ then
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch b/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch
+index b0dcce7d77..c4620949bd 100644
+--- a/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch
++++ b/package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch
+@@ -1,4 +1,4 @@
+-From df7c95b4ceecf390b961d843a556c470ac9080b2 Mon Sep 17 00:00:00 2001
++From 36c138c15515e80f72a570b61da324e55ae3e80c Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 16:33:22 -0800
+ Subject: [PATCH] Add infrastructure to disable the build of certain extensions
+@@ -44,10 +44,10 @@ Signed-off-by: Andrey Smirnov
+ 3 files changed, 11 insertions(+), 2 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 0c809f3d8a..7c3dde8dd4 100644
++index f9011c132a..e8a6bd5c03 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -213,6 +213,8 @@ FILEMODE= 644
++@@ -205,6 +205,8 @@ FILEMODE= 644
+ # configure script arguments
+ CONFIG_ARGS= @CONFIG_ARGS@
+
+@@ -56,7 +56,7 @@ index 0c809f3d8a..7c3dde8dd4 100644
+
+ # Subdirectories with code
+ SRCDIRS= @SRCDIRS@
+-@@ -629,6 +631,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o
++@@ -605,6 +607,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o
+ esac; \
+ echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
+ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
+@@ -64,7 +64,7 @@ index 0c809f3d8a..7c3dde8dd4 100644
+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \
+ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
+ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
+-@@ -1674,7 +1677,8 @@ libainstall: @DEF_MAKE_RULE@ python-config
++@@ -1601,7 +1604,8 @@ libainstall: @DEF_MAKE_RULE@ python-config
+ # Install the dynamically loadable modules
+ # This goes into $(exec_prefix)
+ sharedinstall: sharedmods
+@@ -75,10 +75,10 @@ index 0c809f3d8a..7c3dde8dd4 100644
+ --install-scripts=$(BINDIR) \
+ --install-platlib=$(DESTSHARED) \
+ diff --git a/configure.ac b/configure.ac
+-index c2445edc88..73d66167de 100644
++index ffeec102b7..7872b4dfee 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3052,6 +3052,8 @@ LIBS="$withval $LIBS"
++@@ -2958,6 +2958,8 @@ LIBS="$withval $LIBS"
+
+ PKG_PROG_PKG_CONFIG
+
+@@ -88,10 +88,10 @@ index c2445edc88..73d66167de 100644
+ AC_MSG_CHECKING(for --with-system-expat)
+ AC_ARG_WITH(system_expat,
+ diff --git a/setup.py b/setup.py
+-index 770866bca7..b6c829b3a5 100644
++index 20d7f35652..d3f2cc1b37 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -43,7 +43,10 @@ from distutils.spawn import find_executable
++@@ -24,7 +24,10 @@ from distutils.spawn import find_executable
+ TEST_EXTENSIONS = True
+
+ # This global variable is used to hold the list of modules to be disabled.
+@@ -104,5 +104,5 @@ index 770866bca7..b6c829b3a5 100644
+
+ def get_platform():
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0004-Adjust-library-header-paths-for-cross-compilation.patch b/package/python3/0004-Adjust-library-header-paths-for-cross-compilation.patch
+index 24f369f87f..0ac5116213 100644
+--- a/package/python3/0004-Adjust-library-header-paths-for-cross-compilation.patch
++++ b/package/python3/0004-Adjust-library-header-paths-for-cross-compilation.patch
+@@ -1,4 +1,4 @@
+-From 61af65485f1dade4aa08d0cf2b24082aeda24c51 Mon Sep 17 00:00:00 2001
++From f5ed27c9b9efb4756630e5799be14fefdc3b2702 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:33:14 +0100
+ Subject: [PATCH] Adjust library/header paths for cross-compilation
+@@ -21,7 +21,7 @@ Signed-off-by: Thomas Petazzoni
+ 2 files changed, 15 insertions(+), 5 deletions(-)
+
+ diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py
+-index 1a9bd1200f..3cf7d6746e 100644
++index 2d7cdf063f..cba150075c 100644
+ --- a/Lib/distutils/command/build_ext.py
+ +++ b/Lib/distutils/command/build_ext.py
+ @@ -234,7 +234,10 @@ class build_ext(Command):
+@@ -37,11 +37,11 @@ index 1a9bd1200f..3cf7d6746e 100644
+ # building python standard extensions
+ self.library_dirs.append('.')
+ diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
+-index 37feae5df7..e9c3a27856 100644
++index b51629eb94..011a437bcd 100644
+ --- a/Lib/distutils/sysconfig.py
+ +++ b/Lib/distutils/sysconfig.py
+-@@ -17,10 +17,17 @@ import sys
+- from .errors import DistutilsPlatformError
++@@ -18,10 +18,17 @@ from .errors import DistutilsPlatformError
++ from .util import get_platform, get_host_platform
+
+ # These are needed in a couple of spots, so just compute them once.
+ -PREFIX = os.path.normpath(sys.prefix)
+@@ -63,5 +63,5 @@ index 37feae5df7..e9c3a27856 100644
+ # Path to the base directory of the project. On Windows the binary may
+ # live in project/PCbuild/win32 or project/PCbuild/amd64.
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch b/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch
+index 83c88ff399..935e0c3b55 100644
+--- a/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch
++++ b/package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch
+@@ -1,4 +1,4 @@
+-From 60d71e37d167ea89445250be436170a6cfee84e7 Mon Sep 17 00:00:00 2001
++From 5bcb991a8de2f1b9bdf44e78894417ed2ee137a5 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:36:00 +0100
+ Subject: [PATCH] Don't look in /usr/lib/termcap for libraries
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+ diff --git a/setup.py b/setup.py
+-index b6c829b3a5..ec3ba60607 100644
++index d3f2cc1b37..5d504d7638 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -1056,12 +1056,9 @@ class PyBuildExt(build_ext):
++@@ -955,12 +955,9 @@ class PyBuildExt(build_ext):
+ pass # Issue 7384: Already linked against curses or tinfo.
+ elif curses_library:
+ readline_libs.append(curses_library)
+@@ -27,5 +27,5 @@ index b6c829b3a5..ec3ba60607 100644
+ libraries=readline_libs))
+ else:
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0006-Don-t-add-multiarch-paths.patch b/package/python3/0006-Don-t-add-multiarch-paths.patch
+index f55238d0c4..ab1e295e70 100644
+--- a/package/python3/0006-Don-t-add-multiarch-paths.patch
++++ b/package/python3/0006-Don-t-add-multiarch-paths.patch
+@@ -1,4 +1,4 @@
+-From f5933b8f973cd11698b52d535a10d0474e49f5a5 Mon Sep 17 00:00:00 2001
++From b878b174e12a5cb2e1943f1f79d94033c1ee80d7 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:36:27 +0100
+ Subject: [PATCH] Don't add multiarch paths
+@@ -17,10 +17,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+ diff --git a/setup.py b/setup.py
+-index ec3ba60607..e27620035c 100644
++index 5d504d7638..282a592dc6 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -749,10 +749,10 @@ class PyBuildExt(build_ext):
++@@ -654,10 +654,10 @@ class PyBuildExt(build_ext):
+ if not CROSS_COMPILING:
+ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
+ add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
+@@ -33,5 +33,5 @@ index ec3ba60607..e27620035c 100644
+
+ def init_inc_lib_dirs(self):
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0007-Abort-on-failed-module-build.patch b/package/python3/0007-Abort-on-failed-module-build.patch
+index 0e96e7522a..1dcf8a017d 100644
+--- a/package/python3/0007-Abort-on-failed-module-build.patch
++++ b/package/python3/0007-Abort-on-failed-module-build.patch
+@@ -1,4 +1,4 @@
+-From 188c0ebfdb71f5252fa7701013b8d1209f28aef7 Mon Sep 17 00:00:00 2001
++From fceda5bae52571213b6671ce0220d1a85b38f8c7 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:43:24 +0100
+ Subject: [PATCH] Abort on failed module build
+@@ -14,10 +14,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 1 insertion(+)
+
+ diff --git a/setup.py b/setup.py
+-index e27620035c..d3f0e663f2 100644
++index 282a592dc6..8fda3b4d47 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -539,6 +539,7 @@ class PyBuildExt(build_ext):
++@@ -444,6 +444,7 @@ class PyBuildExt(build_ext):
+ print("Failed to build these modules:")
+ print_three_column(failed)
+ print()
+@@ -26,5 +26,5 @@ index e27620035c..d3f0e663f2 100644
+ if self.failed_on_import:
+ failed = self.failed_on_import[:]
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0008-Serial-ioctl-workaround.patch b/package/python3/0008-Serial-ioctl-workaround.patch
+index df31cd6220..9303e188c9 100644
+--- a/package/python3/0008-Serial-ioctl-workaround.patch
++++ b/package/python3/0008-Serial-ioctl-workaround.patch
+@@ -1,4 +1,4 @@
+-From 9e6211b0d6d4610e5fb7d2c7e1152eb7c64d968b Mon Sep 17 00:00:00 2001
++From 91e8058cf9085795db64f43e2c9548926ea46ab0 Mon Sep 17 00:00:00 2001
+ From: Baruch Siach
+ Date: Wed, 23 Dec 2015 11:44:02 +0100
+ Subject: [PATCH] Serial ioctl() workaround
+@@ -15,7 +15,7 @@ Signed-off-by: Baruch Siach
+ 1 file changed, 2 insertions(+)
+
+ diff --git a/Modules/termios.c b/Modules/termios.c
+-index 75e5e52320..eefbddfe69 100644
++index aee7f12c57..ba2ff77d06 100644
+ --- a/Modules/termios.c
+ +++ b/Modules/termios.c
+ @@ -15,7 +15,9 @@
+@@ -29,5 +29,5 @@ index 75e5e52320..eefbddfe69 100644
+ /* HP-UX requires that this be included to pick up MDCD, MCTS, MDSR,
+ * MDTR, MRI, and MRTS (apparently used internally by some things
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0009-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch b/package/python3/0009-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch
+index 8a77fe3708..32e3bdfea0 100644
+--- a/package/python3/0009-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch
++++ b/package/python3/0009-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch
+@@ -1,4 +1,4 @@
+-From cb595a591c71e0bf7c63a3706b0be45ac6a642e3 Mon Sep 17 00:00:00 2001
++From 3ec9bbf5bd9cced0005c99d7d65997b119abf2f6 Mon Sep 17 00:00:00 2001
+ From: Christophe Vu-Brugier
+ Date: Wed, 23 Dec 2015 11:44:30 +0100
+ Subject: [PATCH] Do not adjust the shebang of Python scripts for
+@@ -31,5 +31,5 @@ index ccc70e6465..d6d54195c1 100644
+ self.build_dir)
+ updated_files.append(outfile)
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch b/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch
+index a1f9ab6cd9..a8ccba7784 100644
+--- a/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch
++++ b/package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch
+@@ -1,4 +1,4 @@
+-From eb51497e4b5799f8ab0277426d3e54414acb9d4b Mon Sep 17 00:00:00 2001
++From 7b3839bcf9f79988fb944cd65717839cde166cb8 Mon Sep 17 00:00:00 2001
+ From: Peter Korsgaard
+ Date: Thu, 20 Nov 2014 13:24:59 +0100
+ Subject: [PATCH] Misc/python-config.sh.in: ensure sed invocations only match
+@@ -63,5 +63,5 @@ index 2602fe24c0..a1bc3cd5f7 100644
+ PYTHONFRAMEWORK="@PYTHONFRAMEWORK@"
+ INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}"
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch b/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch
+index 57f1bb5a2f..1a40b74d21 100644
+--- a/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch
++++ b/package/python3/0011-Override-system-locale-and-set-to-default-when-addin.patch
+@@ -1,4 +1,4 @@
+-From e4ae670e3489544a49dabd1618c32fe73504a7ba Mon Sep 17 00:00:00 2001
++From a9affe1f3f98342b682848c9b3f862ee194ff625 Mon Sep 17 00:00:00 2001
+ From: Samuel Cabrero
+ Date: Wed, 23 Dec 2015 11:45:48 +0100
+ Subject: [PATCH] Override system locale and set to default when adding gcc
+@@ -15,25 +15,23 @@ any system library (eg. libz, libssl, etc.)
+
+ Signed-off-by: Samuel Cabrero
+ Signed-off-by: Thomas Petazzoni
+-[james.hilliard1@gmail.com: adapt to python 3.9]
+-Signed-off-by: James Hilliard
+ ---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+ diff --git a/setup.py b/setup.py
+-index d3f0e663f2..926c16f58f 100644
++index 8fda3b4d47..bb7eb44213 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -695,7 +695,7 @@ class PyBuildExt(build_ext):
++@@ -600,7 +600,7 @@ class PyBuildExt(build_ext):
+ tmpfile = os.path.join(self.build_temp, 'ccpaths')
+ if not os.path.exists(self.build_temp):
+ os.makedirs(self.build_temp)
+-- ret = run_command('%s -E -v - %s 1>/dev/null' % (cc, tmpfile))
+-+ ret = run_command('LC_ALL=C %s -E -v - %s 1>/dev/null' % (cc, tmpfile))
++- ret = os.system('%s -E -v - %s 1>/dev/null' % (cc, tmpfile))
+++ ret = os.system('LC_ALL=C %s -E -v - %s 1>/dev/null' % (cc, tmpfile))
+ is_gcc = False
+ is_clang = False
+ in_incdirs = False
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0012-Add-importlib-fix-for-PEP-3147-issue.patch b/package/python3/0012-Add-importlib-fix-for-PEP-3147-issue.patch
+index 42dfa0d693..aacb6dca6c 100644
+--- a/package/python3/0012-Add-importlib-fix-for-PEP-3147-issue.patch
++++ b/package/python3/0012-Add-importlib-fix-for-PEP-3147-issue.patch
+@@ -1,4 +1,4 @@
+-From e2ea659eac1849db471d3c01a0d0af9d6fca2e9a Mon Sep 17 00:00:00 2001
++From c50b8e7fb9b2e61d4d195a055cd1bbf993cc455f Mon Sep 17 00:00:00 2001
+ From: Christophe Vu-Brugier
+ Date: Wed, 22 Feb 2017 16:48:49 -0800
+ Subject: [PATCH] Add importlib fix for PEP 3147 issue
+@@ -25,10 +25,10 @@ Signed-off-by: Andrey Smirnov
+ 1 file changed, 5 insertions(+), 39 deletions(-)
+
+ diff --git a/Lib/importlib/_bootstrap_external.py b/Lib/importlib/_bootstrap_external.py
+-index 25a3f8c0e0..2cb9a9aa52 100644
++index b8ac482994..db034f605a 100644
+ --- a/Lib/importlib/_bootstrap_external.py
+ +++ b/Lib/importlib/_bootstrap_external.py
+-@@ -313,8 +313,6 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
++@@ -306,8 +306,6 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+ a True value is the same as setting 'optimization' to the empty string
+ while a False value is equivalent to setting 'optimization' to '1'.
+
+@@ -37,7 +37,7 @@ index 25a3f8c0e0..2cb9a9aa52 100644
+ """
+ if debug_override is not None:
+ _warnings.warn('the debug_override parameter is deprecated; use '
+-@@ -326,10 +324,7 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
++@@ -319,10 +317,7 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+ path = _os.fspath(path)
+ head, tail = _path_split(path)
+ base, sep, rest = tail.rpartition('.')
+@@ -49,7 +49,7 @@ index 25a3f8c0e0..2cb9a9aa52 100644
+ if optimization is None:
+ if sys.flags.optimize == 0:
+ optimization = ''
+-@@ -366,46 +361,17 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
++@@ -359,46 +354,17 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+ head.lstrip(path_separators),
+ filename,
+ )
+@@ -101,5 +101,5 @@ index 25a3f8c0e0..2cb9a9aa52 100644
+
+
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch b/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch
+index b3380fd53f..675c2c1abf 100644
+--- a/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch
++++ b/package/python3/0013-Add-an-option-to-disable-installation-of-test-module.patch
+@@ -1,4 +1,4 @@
+-From 0337342d413d13f437fd089de91faee70a8bf3f9 Mon Sep 17 00:00:00 2001
++From 5ee3e5ad62919c431b1f7b5ff91ddf606582df0e Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:01:18 -0800
+ Subject: [PATCH] Add an option to disable installation of test modules
+@@ -10,18 +10,16 @@ Signed-off-by: Thomas Petazzoni
+ Signed-off-by: Samuel Martin
+ [ Andrey Smirnov: ported to Python 3.6 ]
+ Signed-off-by: Andrey Smirnov
+-[james.hilliard1@gmail.com: adapt to python 3.9]
+-Signed-off-by: James Hilliard
+ ---
+- Makefile.pre.in | 56 ++++++++++++++++++++++++++++++++-----------------
++ Makefile.pre.in | 54 ++++++++++++++++++++++++++++++++-----------------
+ configure.ac | 5 +++++
+- 2 files changed, 42 insertions(+), 19 deletions(-)
++ 2 files changed, 41 insertions(+), 18 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 7c3dde8dd4..204f293d53 100644
++index e8a6bd5c03..3abee36f49 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1385,8 +1385,29 @@ maninstall: altmaninstall
++@@ -1317,8 +1317,28 @@ maninstall: altmaninstall
+
+ # Install the library
+ XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax
+@@ -45,17 +43,16 @@ index 7c3dde8dd4..204f293d53 100644
+ + multiprocessing multiprocessing/dummy \
+ + unittest \
+ + venv venv/scripts venv/scripts/common venv/scripts/posix \
+-+ curses pydoc_data \
+-+ zoneinfo
+++ curses pydoc_data
+ +
+ +TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ + tkinter/test/test_ttk test \
+ test/audiodata \
+ test/capath test/data \
+ test/cjkencodings test/decimaltestdata \
+-@@ -1446,28 +1467,25 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \
++@@ -1376,26 +1396,24 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \
++ test/test_importlib/zipdata01 \
+ test/test_importlib/zipdata02 \
+- test/test_zoneinfo test/test_zoneinfo/data \
+ test/ziptestdata \
+ - asyncio \
+ test/test_asyncio \
+@@ -78,15 +75,13 @@ index 7c3dde8dd4..204f293d53 100644
+ + ctypes/test \
+ + idlelib/idle_test \
+ + distutils/tests \
+- test/test_peg_generator \
+ + test/test_importlib test/test_importlib/builtin \
+ test/test_tools test/test_warnings test/test_warnings/data \
+ - turtledemo \
+ - multiprocessing multiprocessing/dummy \
+ - unittest unittest/test unittest/test/testmock \
+ - venv venv/scripts venv/scripts/common venv/scripts/posix \
+-- curses pydoc_data \
+-- zoneinfo
++- curses pydoc_data
+ + unittest/test unittest/test/testmock
+ +
+ +ifeq (@TEST_MODULES@,yes)
+@@ -97,10 +92,10 @@ index 7c3dde8dd4..204f293d53 100644
+ @for i in $(SCRIPTDIR) $(LIBDEST); \
+ do \
+ diff --git a/configure.ac b/configure.ac
+-index 73d66167de..92e28d02ee 100644
++index 7872b4dfee..b820d18c7c 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3329,6 +3329,11 @@ if test "$posix_threads" = "yes"; then
++@@ -3234,6 +3234,11 @@ if test "$posix_threads" = "yes"; then
+ AC_CHECK_FUNCS(pthread_getcpuclockid)
+ fi
+
+@@ -113,5 +108,5 @@ index 73d66167de..92e28d02ee 100644
+ # Check for enable-ipv6
+ AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified])
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0014-Add-an-option-to-disable-pydoc.patch b/package/python3/0014-Add-an-option-to-disable-pydoc.patch
+index abb86ea07b..a3436e31bf 100644
+--- a/package/python3/0014-Add-an-option-to-disable-pydoc.patch
++++ b/package/python3/0014-Add-an-option-to-disable-pydoc.patch
+@@ -1,4 +1,4 @@
+-From a65e5d3caf8e076d531191164c23c6240461f675 Mon Sep 17 00:00:00 2001
++From 13a8be57e79f2657c75391bfa524dc1ba4993b02 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:07:56 -0800
+ Subject: [PATCH] Add an option to disable pydoc
+@@ -17,10 +17,10 @@ Signed-off-by: Andrey Smirnov
+ 3 files changed, 20 insertions(+), 3 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 204f293d53..63e3df0470 100644
++index 3abee36f49..6fa0549a56 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1357,7 +1357,9 @@ bininstall: altbininstall
++@@ -1289,7 +1289,9 @@ bininstall: altbininstall
+ -rm -f $(DESTDIR)$(BINDIR)/idle3
+ (cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3)
+ -rm -f $(DESTDIR)$(BINDIR)/pydoc3
+@@ -30,16 +30,16 @@ index 204f293d53..63e3df0470 100644
+ -rm -f $(DESTDIR)$(BINDIR)/2to3
+ (cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3)
+ if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
+-@@ -1403,7 +1405,7 @@ LIBSUBDIRS= tkinter site-packages \
++@@ -1335,7 +1337,7 @@ LIBSUBDIRS= tkinter site-packages \
+ multiprocessing multiprocessing/dummy \
+ unittest \
+ venv venv/scripts venv/scripts/common venv/scripts/posix \
+-- curses pydoc_data \
+-+ curses \
+- zoneinfo
++- curses pydoc_data
+++ curses
+
+ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+-@@ -1486,6 +1488,10 @@ ifeq (@TEST_MODULES@,yes)
++ tkinter/test/test_ttk test \
++@@ -1414,6 +1416,10 @@ ifeq (@TEST_MODULES@,yes)
+ LIBSUBDIRS += $(TESTSUBDIRS)
+ endif
+
+@@ -51,10 +51,10 @@ index 204f293d53..63e3df0470 100644
+ @for i in $(SCRIPTDIR) $(LIBDEST); \
+ do \
+ diff --git a/configure.ac b/configure.ac
+-index 92e28d02ee..174ed85a7c 100644
++index b820d18c7c..f53cc86d89 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3329,6 +3329,12 @@ if test "$posix_threads" = "yes"; then
++@@ -3234,6 +3234,12 @@ if test "$posix_threads" = "yes"; then
+ AC_CHECK_FUNCS(pthread_getcpuclockid)
+ fi
+
+@@ -68,10 +68,10 @@ index 92e28d02ee..174ed85a7c 100644
+
+ AC_ARG_ENABLE(test-modules,
+ diff --git a/setup.py b/setup.py
+-index 926c16f58f..1fc5fac90c 100644
++index bb7eb44213..748c269960 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -2586,6 +2586,12 @@ def main():
++@@ -2401,6 +2401,12 @@ def main():
+ # turn off warnings when deprecated modules are imported
+ import warnings
+ warnings.filterwarnings("ignore",category=DeprecationWarning)
+@@ -84,7 +84,7 @@ index 926c16f58f..1fc5fac90c 100644
+ setup(# PyPI Metadata (PEP 301)
+ name = "Python",
+ version = sys.version.split()[0],
+-@@ -2610,8 +2616,7 @@ def main():
++@@ -2425,8 +2431,7 @@ def main():
+ # If you change the scripts installed here, you also need to
+ # check the PyBuildScripts command above, and change the links
+ # created by the bininstall target in Makefile.pre.in
+@@ -95,5 +95,5 @@ index 926c16f58f..1fc5fac90c 100644
+
+ # --install-platlib
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0015-Add-an-option-to-disable-lib2to3.patch b/package/python3/0015-Add-an-option-to-disable-lib2to3.patch
+index 5cec11a00a..1bd1ae511f 100644
+--- a/package/python3/0015-Add-an-option-to-disable-lib2to3.patch
++++ b/package/python3/0015-Add-an-option-to-disable-lib2to3.patch
+@@ -1,4 +1,4 @@
+-From f034b1b0f33a7bd4dde23f0bc1fa8e00e3518c9d Mon Sep 17 00:00:00 2001
++From 868823f15bab031caf05dc5e8ce2eac076bfc82b Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:15:31 -0800
+ Subject: [PATCH] Add an option to disable lib2to3
+@@ -17,10 +17,10 @@ Signed-off-by: Andrey Smirnov
+ 3 files changed, 21 insertions(+), 6 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 63e3df0470..8b7de12999 100644
++index 6fa0549a56..3e1f130532 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1361,7 +1361,9 @@ ifeq (@PYDOC@,yes)
++@@ -1293,7 +1293,9 @@ ifeq (@PYDOC@,yes)
+ (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
+ endif
+ -rm -f $(DESTDIR)$(BINDIR)/2to3
+@@ -30,7 +30,7 @@ index 63e3df0470..8b7de12999 100644
+ if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
+ rm -f $(DESTDIR)$(BINDIR)/python3-32$(EXE); \
+ (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-32$(EXE) python3-32$(EXE)) \
+-@@ -1396,7 +1398,6 @@ LIBSUBDIRS= tkinter site-packages \
++@@ -1328,7 +1330,6 @@ LIBSUBDIRS= tkinter site-packages \
+ html json http dbm xmlrpc \
+ sqlite3 \
+ logging csv wsgiref urllib \
+@@ -38,7 +38,7 @@ index 63e3df0470..8b7de12999 100644
+ ctypes ctypes/macholib \
+ idlelib idlelib/Icons \
+ distutils distutils/command $(XMLLIBSUBDIRS) \
+-@@ -1473,9 +1474,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
++@@ -1402,9 +1403,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ test/test_email test/test_email/data \
+ test/test_json \
+ sqlite3/test \
+@@ -48,7 +48,7 @@ index 63e3df0470..8b7de12999 100644
+ ctypes/test \
+ idlelib/idle_test \
+ distutils/tests \
+-@@ -1484,6 +1482,14 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
++@@ -1412,6 +1410,14 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ test/test_tools test/test_warnings test/test_warnings/data \
+ unittest/test unittest/test/testmock
+
+@@ -63,7 +63,7 @@ index 63e3df0470..8b7de12999 100644
+ ifeq (@TEST_MODULES@,yes)
+ LIBSUBDIRS += $(TESTSUBDIRS)
+ endif
+-@@ -1584,10 +1590,12 @@ ifeq (@PYC_BUILD@,yes)
++@@ -1511,10 +1517,12 @@ ifeq (@PYC_BUILD@,yes)
+ -j0 -d $(LIBDEST)/site-packages -f \
+ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
+ endif
+@@ -77,10 +77,10 @@ index 63e3df0470..8b7de12999 100644
+ # bpo-21536: Misc/python-config.sh is generated in the build directory
+ # from $(srcdir)Misc/python-config.sh.in.
+ diff --git a/configure.ac b/configure.ac
+-index 174ed85a7c..f1f5e9a7b0 100644
++index f53cc86d89..caa8eaf88a 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3341,6 +3341,12 @@ AC_ARG_ENABLE(test-modules,
++@@ -3246,6 +3246,12 @@ AC_ARG_ENABLE(test-modules,
+ AS_HELP_STRING([--disable-test-modules], [disable test modules]),
+ [ TEST_MODULES="${enableval}" ], [ TEST_MODULES=yes ])
+
+@@ -94,10 +94,10 @@ index 174ed85a7c..f1f5e9a7b0 100644
+ AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified])
+ AC_MSG_CHECKING([if --enable-ipv6 is specified])
+ diff --git a/setup.py b/setup.py
+-index 1fc5fac90c..4063d7ffa5 100644
++index 748c269960..1669797cad 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -2587,10 +2587,11 @@ def main():
++@@ -2402,10 +2402,11 @@ def main():
+ import warnings
+ warnings.filterwarnings("ignore",category=DeprecationWarning)
+
+@@ -112,5 +112,5 @@ index 1fc5fac90c..4063d7ffa5 100644
+ setup(# PyPI Metadata (PEP 301)
+ name = "Python",
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch b/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch
+index 47ee112e27..364d1b1ec8 100644
+--- a/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch
++++ b/package/python3/0016-Add-option-to-disable-the-sqlite3-module.patch
+@@ -1,4 +1,4 @@
+-From dd2722dec08eb9c72c36313e93661eeca3ad64d8 Mon Sep 17 00:00:00 2001
++From 1a1d13a973d9dcbd6660bfef40cf35c7638f779b Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:20:45 -0800
+ Subject: [PATCH] Add option to disable the sqlite3 module
+@@ -13,10 +13,10 @@ Signed-off-by: Andrey Smirnov
+ 2 files changed, 14 insertions(+), 2 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 8b7de12999..d826d8ac4b 100644
++index 3e1f130532..cf9add0bc7 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1396,7 +1396,6 @@ LIBSUBDIRS= tkinter site-packages \
++@@ -1328,7 +1328,6 @@ LIBSUBDIRS= tkinter site-packages \
+ email email/mime \
+ ensurepip ensurepip/_bundled \
+ html json http dbm xmlrpc \
+@@ -24,7 +24,7 @@ index 8b7de12999..d826d8ac4b 100644
+ logging csv wsgiref urllib \
+ ctypes ctypes/macholib \
+ idlelib idlelib/Icons \
+-@@ -1473,7 +1472,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
++@@ -1402,7 +1401,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ test/test_asyncio \
+ test/test_email test/test_email/data \
+ test/test_json \
+@@ -32,7 +32,7 @@ index 8b7de12999..d826d8ac4b 100644
+ ctypes/test \
+ idlelib/idle_test \
+ distutils/tests \
+-@@ -1490,6 +1488,11 @@ TESTSUBDIRS += lib2to3/tests \
++@@ -1418,6 +1416,11 @@ TESTSUBDIRS += lib2to3/tests \
+ lib2to3/tests/data/fixers/myfixes
+ endif
+
+@@ -45,10 +45,10 @@ index 8b7de12999..d826d8ac4b 100644
+ LIBSUBDIRS += $(TESTSUBDIRS)
+ endif
+ diff --git a/configure.ac b/configure.ac
+-index f1f5e9a7b0..8b5c65974c 100644
++index caa8eaf88a..79a8255f44 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3329,6 +3329,15 @@ if test "$posix_threads" = "yes"; then
++@@ -3234,6 +3234,15 @@ if test "$posix_threads" = "yes"; then
+ AC_CHECK_FUNCS(pthread_getcpuclockid)
+ fi
+
+@@ -65,5 +65,5 @@ index f1f5e9a7b0..8b5c65974c 100644
+
+ AC_ARG_ENABLE(pydoc,
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch b/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch
+index 132fd17386..eb0ad26daa 100644
+--- a/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch
++++ b/package/python3/0017-Add-an-option-to-disable-the-tk-module.patch
+@@ -1,4 +1,4 @@
+-From ad6b66b34f71ff6b60b3be5f6fd3e781cdeecd59 Mon Sep 17 00:00:00 2001
++From c54cb57b3bd80fa2819f6409d5d2b98d82fbfcb2 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:23:42 -0800
+ Subject: [PATCH] Add an option to disable the tk module
+@@ -13,10 +13,10 @@ Signed-off-by: Andrey Smirnov
+ 2 files changed, 17 insertions(+), 3 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index d826d8ac4b..dc84384680 100644
++index cf9add0bc7..5d78419fd4 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1390,7 +1390,7 @@ maninstall: altmaninstall
++@@ -1322,7 +1322,7 @@ maninstall: altmaninstall
+ # Install the library
+ XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax
+
+@@ -25,9 +25,9 @@ index d826d8ac4b..dc84384680 100644
+ asyncio \
+ collections concurrent concurrent/futures encodings \
+ email email/mime \
+-@@ -1408,8 +1408,7 @@ LIBSUBDIRS= tkinter site-packages \
+- curses \
+- zoneinfo
++@@ -1339,8 +1339,7 @@ LIBSUBDIRS= tkinter site-packages \
++ venv venv/scripts venv/scripts/common venv/scripts/posix \
++ curses
+
+ -TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ - tkinter/test/test_ttk test \
+@@ -35,7 +35,7 @@ index d826d8ac4b..dc84384680 100644
+ test/audiodata \
+ test/capath test/data \
+ test/cjkencodings test/decimaltestdata \
+-@@ -1480,6 +1479,12 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
++@@ -1408,6 +1407,12 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ test/test_tools test/test_warnings test/test_warnings/data \
+ unittest/test unittest/test/testmock
+
+@@ -49,10 +49,10 @@ index d826d8ac4b..dc84384680 100644
+ LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2
+ TESTSUBDIRS += lib2to3/tests \
+ diff --git a/configure.ac b/configure.ac
+-index 8b5c65974c..4c72dae960 100644
++index 79a8255f44..b5922451cc 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3338,6 +3338,15 @@ if test "$SQLITE3" = "no" ; then
++@@ -3243,6 +3243,15 @@ if test "$SQLITE3" = "no" ; then
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
+ fi
+
+@@ -69,5 +69,5 @@ index 8b5c65974c..4c72dae960 100644
+
+ AC_ARG_ENABLE(pydoc,
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch b/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch
+index d51267bbf0..0628669b93 100644
+--- a/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch
++++ b/package/python3/0018-Add-an-option-to-disable-the-curses-module.patch
+@@ -1,4 +1,4 @@
+-From 962deb43f5f340a8472d432ae8e6d61186f9040e Mon Sep 17 00:00:00 2001
++From 332373ca25f2dbe5473330666ec49143506a4dc0 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:31:51 -0800
+ Subject: [PATCH] Add an option to disable the curses module
+@@ -8,23 +8,25 @@ Signed-off-by: Samuel Martin
+ [ Andrey Smirnov: ported to Python 3.6 ]
+ Signed-off-by: Andrey Smirnov
+ ---
+- Makefile.pre.in | 5 ++++-
++ Makefile.pre.in | 7 +++++--
+ configure.ac | 9 +++++++++
+- 2 files changed, 13 insertions(+), 1 deletion(-)
++ 2 files changed, 14 insertions(+), 2 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index dc84384680..2a82f3308f 100644
++index 5d78419fd4..660c292765 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1405,7 +1405,6 @@ LIBSUBDIRS= site-packages \
++@@ -1336,8 +1336,7 @@ LIBSUBDIRS= site-packages \
++ turtledemo \
+ multiprocessing multiprocessing/dummy \
+ unittest \
+- venv venv/scripts venv/scripts/common venv/scripts/posix \
+-- curses \
+- zoneinfo
++- venv venv/scripts venv/scripts/common venv/scripts/posix \
++- curses
+++ venv venv/scripts venv/scripts/common venv/scripts/posix
+
+ TESTSUBDIRS= test \
+-@@ -1485,6 +1484,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
++ test/audiodata \
++@@ -1413,6 +1412,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
+ tkinter/test/test_ttk
+ endif
+
+@@ -36,10 +38,10 @@ index dc84384680..2a82f3308f 100644
+ LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2
+ TESTSUBDIRS += lib2to3/tests \
+ diff --git a/configure.ac b/configure.ac
+-index 4c72dae960..acd98381a3 100644
++index b5922451cc..ea422a86a9 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3347,6 +3347,15 @@ if test "$TK" = "no"; then
++@@ -3252,6 +3252,15 @@ if test "$TK" = "no"; then
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter"
+ fi
+
+@@ -56,5 +58,5 @@ index 4c72dae960..acd98381a3 100644
+
+ AC_ARG_ENABLE(pydoc,
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0019-Add-an-option-to-disable-expat.patch b/package/python3/0019-Add-an-option-to-disable-expat.patch
+index af6e1ebcc1..e31f3e105e 100644
+--- a/package/python3/0019-Add-an-option-to-disable-expat.patch
++++ b/package/python3/0019-Add-an-option-to-disable-expat.patch
+@@ -1,4 +1,4 @@
+-From 7e0e7dc25f50acd6922493ae620ee5cbf107a79a Mon Sep 17 00:00:00 2001
++From d88f2d3430bbbe285ae3de5fbc1bde34da7f0478 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 22 Feb 2017 17:40:45 -0800
+ Subject: [PATCH] Add an option to disable expat
+@@ -20,10 +20,10 @@ Signed-off-by: Andrey Smirnov
+ 3 files changed, 19 insertions(+), 7 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index 2a82f3308f..e678c8817e 100644
++index 660c292765..f49abf8395 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1399,7 +1399,7 @@ LIBSUBDIRS= site-packages \
++@@ -1331,7 +1331,7 @@ LIBSUBDIRS= site-packages \
+ logging csv wsgiref urllib \
+ ctypes ctypes/macholib \
+ idlelib idlelib/Icons \
+@@ -32,7 +32,7 @@ index 2a82f3308f..e678c8817e 100644
+ importlib \
+ turtledemo \
+ multiprocessing multiprocessing/dummy \
+-@@ -1488,6 +1488,10 @@ ifeq (@CURSES@,yes)
++@@ -1416,6 +1416,10 @@ ifeq (@CURSES@,yes)
+ LIBSUBDIRS += curses
+ endif
+
+@@ -44,16 +44,16 @@ index 2a82f3308f..e678c8817e 100644
+ LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2
+ TESTSUBDIRS += lib2to3/tests \
+ diff --git a/configure.ac b/configure.ac
+-index acd98381a3..9ef0ecd42f 100644
++index ea422a86a9..3c1e2c088d 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3055,13 +3055,21 @@ PKG_PROG_PKG_CONFIG
++@@ -2961,13 +2961,21 @@ PKG_PROG_PKG_CONFIG
+ AC_SUBST(DISABLED_EXTENSIONS)
+
+ # Check for use of the system expat library
+ -AC_MSG_CHECKING(for --with-system-expat)
+ -AC_ARG_WITH(system_expat,
+-- AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library, see Doc/library/pyexpat.rst (default is no)]),
++- AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library]),
+ +AC_MSG_CHECKING(for --with-expat)
+ +AC_ARG_WITH(expat,
+ + AS_HELP_STRING([--with-expat], [select which expat version to use: system, builtin, none]),
+@@ -75,10 +75,10 @@ index acd98381a3..9ef0ecd42f 100644
+ # Check for use of the system libffi library
+ AC_MSG_CHECKING(for --with-system-ffi)
+ diff --git a/setup.py b/setup.py
+-index 4063d7ffa5..211a160f29 100644
++index 1669797cad..d2727c0da5 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -1681,7 +1681,7 @@ class PyBuildExt(build_ext):
++@@ -1576,7 +1576,7 @@ class PyBuildExt(build_ext):
+ #
+ # More information on Expat can be found at www.libexpat.org.
+ #
+@@ -88,5 +88,5 @@ index 4063d7ffa5..211a160f29 100644
+ define_macros = []
+ extra_compile_args = []
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0020-Add-an-option-to-disable-CJK-codecs.patch b/package/python3/0020-Add-an-option-to-disable-CJK-codecs.patch
+index ede78c9b1e..1b18c54591 100644
+--- a/package/python3/0020-Add-an-option-to-disable-CJK-codecs.patch
++++ b/package/python3/0020-Add-an-option-to-disable-CJK-codecs.patch
+@@ -1,4 +1,4 @@
+-From 2c0d31bb91fc7f94283c3ab632925fbbe24e94d6 Mon Sep 17 00:00:00 2001
++From 347f359b484c8e34b49f71132701252b966d93aa Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:49:55 +0100
+ Subject: [PATCH] Add an option to disable CJK codecs
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 6 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index 9ef0ecd42f..18e6fd70a0 100644
++index 3c1e2c088d..30a92f9c2e 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3346,6 +3346,12 @@ if test "$SQLITE3" = "no" ; then
++@@ -3251,6 +3251,12 @@ if test "$SQLITE3" = "no" ; then
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
+ fi
+
+@@ -26,5 +26,5 @@ index 9ef0ecd42f..18e6fd70a0 100644
+ AC_ARG_ENABLE(tk,
+ AS_HELP_STRING([--disable-tk], [disable tk]),
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0021-Add-an-option-to-disable-NIS.patch b/package/python3/0021-Add-an-option-to-disable-NIS.patch
+index b2668c6eb2..71645be9f4 100644
+--- a/package/python3/0021-Add-an-option-to-disable-NIS.patch
++++ b/package/python3/0021-Add-an-option-to-disable-NIS.patch
+@@ -1,4 +1,4 @@
+-From 2041d0c8dba87991edaf088b16e37b5189a3466d Mon Sep 17 00:00:00 2001
++From ff9bebed083c5d20fe31f94b868f6f1a8c6cc744 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:50:11 +0100
+ Subject: [PATCH] Add an option to disable NIS
+@@ -12,10 +12,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 6 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index 18e6fd70a0..46d2a8131e 100644
++index 30a92f9c2e..20f326db46 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3352,6 +3352,12 @@ AC_ARG_ENABLE(codecs-cjk,
++@@ -3257,6 +3257,12 @@ AC_ARG_ENABLE(codecs-cjk,
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022"
+ fi])
+
+@@ -29,5 +29,5 @@ index 18e6fd70a0..46d2a8131e 100644
+ AC_ARG_ENABLE(tk,
+ AS_HELP_STRING([--disable-tk], [disable tk]),
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0022-Add-an-option-to-disable-unicodedata.patch b/package/python3/0022-Add-an-option-to-disable-unicodedata.patch
+index 7a0157fd71..3805e1aad9 100644
+--- a/package/python3/0022-Add-an-option-to-disable-unicodedata.patch
++++ b/package/python3/0022-Add-an-option-to-disable-unicodedata.patch
+@@ -1,4 +1,4 @@
+-From dd82a401ff6ba4ba116bf4d520e981a1808ed443 Mon Sep 17 00:00:00 2001
++From 47f9caca90e6c8c18736e5dfd0acf47aae27eefb Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:50:27 +0100
+ Subject: [PATCH] Add an option to disable unicodedata
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 6 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index 46d2a8131e..5844e3b73f 100644
++index 20f326db46..99bbc37b07 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3358,6 +3358,12 @@ AC_ARG_ENABLE(nis,
++@@ -3263,6 +3263,12 @@ AC_ARG_ENABLE(nis,
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis"
+ fi])
+
+@@ -26,5 +26,5 @@ index 46d2a8131e..5844e3b73f 100644
+ AC_ARG_ENABLE(tk,
+ AS_HELP_STRING([--disable-tk], [disable tk]),
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0023-Add-an-option-to-disable-IDLE.patch b/package/python3/0023-Add-an-option-to-disable-IDLE.patch
+index 0611e3a347..3a138f966f 100644
+--- a/package/python3/0023-Add-an-option-to-disable-IDLE.patch
++++ b/package/python3/0023-Add-an-option-to-disable-IDLE.patch
+@@ -1,4 +1,4 @@
+-From f1b15834045d0641c43014b970721df066fa71f7 Mon Sep 17 00:00:00 2001
++From c3ad1d6fc8f1fa56ee0522389227454710bf7877 Mon Sep 17 00:00:00 2001
+ From: Maxime Ripard
+ Date: Wed, 22 Feb 2017 17:45:14 -0800
+ Subject: [PATCH] Add an option to disable IDLE
+@@ -16,10 +16,10 @@ Signed-off-by: Andrey Smirnov
+ 3 files changed, 15 insertions(+), 2 deletions(-)
+
+ diff --git a/Makefile.pre.in b/Makefile.pre.in
+-index e678c8817e..1148bd8708 100644
++index f49abf8395..bc777e6504 100644
+ --- a/Makefile.pre.in
+ +++ b/Makefile.pre.in
+-@@ -1355,7 +1355,9 @@ bininstall: altbininstall
++@@ -1287,7 +1287,9 @@ bininstall: altbininstall
+ -rm -f $(DESTDIR)$(LIBPC)/python3-embed.pc
+ (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION)-embed.pc python3-embed.pc)
+ -rm -f $(DESTDIR)$(BINDIR)/idle3
+@@ -29,7 +29,7 @@ index e678c8817e..1148bd8708 100644
+ -rm -f $(DESTDIR)$(BINDIR)/pydoc3
+ ifeq (@PYDOC@,yes)
+ (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
+-@@ -1398,7 +1400,6 @@ LIBSUBDIRS= site-packages \
++@@ -1330,7 +1332,6 @@ LIBSUBDIRS= site-packages \
+ html json http dbm xmlrpc \
+ logging csv wsgiref urllib \
+ ctypes ctypes/macholib \
+@@ -37,7 +37,7 @@ index e678c8817e..1148bd8708 100644
+ distutils distutils/command \
+ importlib \
+ turtledemo \
+-@@ -1492,6 +1493,10 @@ ifeq (@EXPAT@,yes)
++@@ -1420,6 +1421,10 @@ ifeq (@EXPAT@,yes)
+ LIBSUBDIRS += $(XMLLIBSUBDIRS)
+ endif
+
+@@ -49,10 +49,10 @@ index e678c8817e..1148bd8708 100644
+ LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2
+ TESTSUBDIRS += lib2to3/tests \
+ diff --git a/configure.ac b/configure.ac
+-index 5844e3b73f..7bd4623ccd 100644
++index 99bbc37b07..8c9706582e 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3400,6 +3400,12 @@ AC_ARG_ENABLE(lib2to3,
++@@ -3305,6 +3305,12 @@ AC_ARG_ENABLE(lib2to3,
+ AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]),
+ [ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ])
+
+@@ -66,10 +66,10 @@ index 5844e3b73f..7bd4623ccd 100644
+ AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified])
+ AC_MSG_CHECKING([if --enable-ipv6 is specified])
+ diff --git a/setup.py b/setup.py
+-index 211a160f29..c4ee989ba3 100644
++index d2727c0da5..9f09b3d985 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -2587,11 +2587,13 @@ def main():
++@@ -2402,11 +2402,13 @@ def main():
+ import warnings
+ warnings.filterwarnings("ignore",category=DeprecationWarning)
+
+@@ -85,5 +85,5 @@ index 211a160f29..c4ee989ba3 100644
+ setup(# PyPI Metadata (PEP 301)
+ name = "Python",
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0024-Add-an-option-to-disable-decimal.patch b/package/python3/0024-Add-an-option-to-disable-decimal.patch
+index 438b76b91f..5906f9d385 100644
+--- a/package/python3/0024-Add-an-option-to-disable-decimal.patch
++++ b/package/python3/0024-Add-an-option-to-disable-decimal.patch
+@@ -1,4 +1,4 @@
+-From d5fe81cbd51da2a84ed89d1e4c80d921d4efce26 Mon Sep 17 00:00:00 2001
++From c82efeabd2f9b89ff2ecd5261eceeeb3af022ae8 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:51:31 +0100
+ Subject: [PATCH] Add an option to disable decimal
+@@ -11,24 +11,22 @@ the libmpdec builtin the Python sources, or no libmpdec at all.
+ Signed-off-by: Thomas Petazzoni
+ [aduskett@gmail.com: Update for python 3.7.0]
+ Signed-off-by: Adam Duskett
+-[james.hilliard1@gmail.com: adapt to python 3.9]
+-Signed-off-by: James Hilliard
+ ---
+ configure.ac | 17 ++++++++++++-----
+ setup.py | 2 +-
+ 2 files changed, 13 insertions(+), 6 deletions(-)
+
+ diff --git a/configure.ac b/configure.ac
+-index 7bd4623ccd..e513ef6a20 100644
++index 8c9706582e..e6255babb6 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3106,13 +3106,20 @@ fi
++@@ -3012,13 +3012,20 @@ fi
+ AC_SUBST(LIBFFI_INCLUDEDIR)
+
+ # Check for use of the system libmpdec library
+ -AC_MSG_CHECKING(for --with-system-libmpdec)
+ -AC_ARG_WITH(system_libmpdec,
+-- AS_HELP_STRING([--with-system-libmpdec], [build _decimal module using an installed libmpdec library, see Doc/library/decimal.rst (default is no)]),
++- AS_HELP_STRING([--with-system-libmpdec], [build _decimal module using an installed libmpdec library]),
+ +AC_MSG_CHECKING(for --with-libmpdec)
+ +AC_ARG_WITH(libmpdec,
+ + AS_HELP_STRING([--with-libmpdec], [select which libmpdec version to use: system, builtin, none]),
+@@ -49,10 +47,10 @@ index 7bd4623ccd..e513ef6a20 100644
+ # Check whether _decimal should use a coroutine-local or thread-local context
+ AC_MSG_CHECKING(for --with-decimal-contextvar)
+ diff --git a/setup.py b/setup.py
+-index c4ee989ba3..3d0c74bb7f 100644
++index 9f09b3d985..a7f2e23d87 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -2221,7 +2221,7 @@ class PyBuildExt(build_ext):
++@@ -2076,7 +2076,7 @@ class PyBuildExt(build_ext):
+ # Stefan Krah's _decimal module
+ extra_compile_args = []
+ undef_macros = []
+@@ -62,5 +60,5 @@ index c4ee989ba3..3d0c74bb7f 100644
+ libraries = [':libmpdec.so.2']
+ sources = ['_decimal/_decimal.c']
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0025-Add-an-option-to-disable-the-ossaudiodev-module.patch b/package/python3/0025-Add-an-option-to-disable-the-ossaudiodev-module.patch
+index 8a792c1fac..55ba22a0e5 100644
+--- a/package/python3/0025-Add-an-option-to-disable-the-ossaudiodev-module.patch
++++ b/package/python3/0025-Add-an-option-to-disable-the-ossaudiodev-module.patch
+@@ -1,4 +1,4 @@
+-From 9bedc56d2a4b8856162650a11c1fcb6ec38f160b Mon Sep 17 00:00:00 2001
++From c68234aba844cb1034fdcfb50aef03da454723f9 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Wed, 23 Dec 2015 11:51:58 +0100
+ Subject: [PATCH] Add an option to disable the ossaudiodev module
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 6 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index e513ef6a20..c07505e89e 100644
++index e6255babb6..5809233aac 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3136,6 +3136,12 @@ fi
++@@ -3042,6 +3042,12 @@ fi
+
+ AC_MSG_RESULT($with_decimal_contextvar)
+
+@@ -26,5 +26,5 @@ index e513ef6a20..c07505e89e 100644
+ AC_MSG_CHECKING(for --enable-loadable-sqlite-extensions)
+ AC_ARG_ENABLE(loadable-sqlite-extensions,
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0026-Add-an-option-to-disable-openssl-support.patch b/package/python3/0026-Add-an-option-to-disable-openssl-support.patch
+index d9e9d13f31..814ffdb561 100644
+--- a/package/python3/0026-Add-an-option-to-disable-openssl-support.patch
++++ b/package/python3/0026-Add-an-option-to-disable-openssl-support.patch
+@@ -1,4 +1,4 @@
+-From 90ed5c692b8b5596ca0b3ae1436276c8181251d8 Mon Sep 17 00:00:00 2001
++From 8faf197969bf531279d5c59a5bb2bc3a21acc378 Mon Sep 17 00:00:00 2001
+ From: Nicolas Cavallari
+ Date: Wed, 22 Feb 2017 17:55:59 -0800
+ Subject: [PATCH] Add an option to disable openssl support.
+@@ -9,10 +9,10 @@ Signed-off-by: Nicolas Cavallari
+ 1 file changed, 6 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index c07505e89e..612e32faf5 100644
++index 5809233aac..6b09bafda4 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3377,6 +3377,12 @@ AC_ARG_ENABLE(unicodedata,
++@@ -3282,6 +3282,12 @@ AC_ARG_ENABLE(unicodedata,
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} unicodedata"
+ fi])
+
+@@ -26,5 +26,5 @@ index c07505e89e..612e32faf5 100644
+ AC_ARG_ENABLE(tk,
+ AS_HELP_STRING([--disable-tk], [disable tk]),
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0027-Add-an-option-to-disable-the-readline-module.patch b/package/python3/0027-Add-an-option-to-disable-the-readline-module.patch
+index 2324ffdcf2..30651244f4 100644
+--- a/package/python3/0027-Add-an-option-to-disable-the-readline-module.patch
++++ b/package/python3/0027-Add-an-option-to-disable-the-readline-module.patch
+@@ -1,4 +1,4 @@
+-From 049e7a51e1ffd0d28d6608c707ab4b54e816d338 Mon Sep 17 00:00:00 2001
++From 6e3923f90497ba7230b62fdd3f2dca1cb79852bf Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Tue, 7 Mar 2017 23:29:05 +0100
+ Subject: [PATCH] Add an option to disable the readline module
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 6 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index 612e32faf5..2a6aaeff60 100644
++index 6b09bafda4..b64518eed5 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3383,6 +3383,12 @@ AC_ARG_ENABLE(openssl,
++@@ -3288,6 +3288,12 @@ AC_ARG_ENABLE(openssl,
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ssl _ssl _hashlib"
+ fi])
+
+@@ -26,5 +26,5 @@ index 612e32faf5..2a6aaeff60 100644
+ AC_ARG_ENABLE(tk,
+ AS_HELP_STRING([--disable-tk], [disable tk]),
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0028-Add-options-to-disable-zlib-bzip2-and-xz-modules.patch b/package/python3/0028-Add-options-to-disable-zlib-bzip2-and-xz-modules.patch
+index 04d0ab31bf..330b549c01 100644
+--- a/package/python3/0028-Add-options-to-disable-zlib-bzip2-and-xz-modules.patch
++++ b/package/python3/0028-Add-options-to-disable-zlib-bzip2-and-xz-modules.patch
+@@ -1,4 +1,4 @@
+-From 146730a04dfe98e3d7971ebf5410801ceae88e11 Mon Sep 17 00:00:00 2001
++From e6f44f93db96ed7f3b2baa0e09ea32a32c78c638 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Tue, 7 Mar 2017 23:31:11 +0100
+ Subject: [PATCH] Add options to disable zlib, bzip2 and xz modules
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 18 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index 2a6aaeff60..21479bbd7d 100644
++index b64518eed5..d07e371c57 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3389,6 +3389,24 @@ AC_ARG_ENABLE(readline,
++@@ -3294,6 +3294,24 @@ AC_ARG_ENABLE(readline,
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} readline"
+ fi])
+
+@@ -38,5 +38,5 @@ index 2a6aaeff60..21479bbd7d 100644
+ AC_ARG_ENABLE(tk,
+ AS_HELP_STRING([--disable-tk], [disable tk]),
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch b/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch
+index 4478b40162..f69b887c9b 100644
+--- a/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch
++++ b/package/python3/0029-python-config.sh-don-t-reassign-prefix.patch
+@@ -1,4 +1,4 @@
+-From 106d9378c61e7fa9cad0a63ba068668d54cd11b8 Mon Sep 17 00:00:00 2001
++From e3221e3b714374e1e53dc11c9556733bd2807c2c Mon Sep 17 00:00:00 2001
+ From: Matt Weber
+ Date: Fri, 6 Oct 2017 09:54:15 -0500
+ Subject: [PATCH] python-config.sh: don't reassign ${prefix}
+@@ -49,5 +49,5 @@ index a1bc3cd5f7..164d2d3603 100644
+ SO="@EXT_SUFFIX@"
+ PYTHONFRAMEWORK="@PYTHONFRAMEWORK@"
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch b/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch
+index 806801b2b9..d39befaf1c 100644
+--- a/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch
++++ b/package/python3/0030-Fix-cross-compiling-the-uuid-module.patch
+@@ -1,4 +1,4 @@
+-From d7b90b157eddefbd0ed59e35c90b083c0c03b644 Mon Sep 17 00:00:00 2001
++From 28008e1e4f0349241d22aace3c54f7e9425c6c1f Mon Sep 17 00:00:00 2001
+ From: Adam Duskett
+ Date: Fri, 20 Jul 2018 10:17:39 -0400
+ Subject: [PATCH] Fix cross compiling the uuid module
+@@ -20,10 +20,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+ diff --git a/setup.py b/setup.py
+-index 3d0c74bb7f..c7be85f352 100644
++index a7f2e23d87..b0274a3f67 100644
+ --- a/setup.py
+ +++ b/setup.py
+-@@ -1779,7 +1779,8 @@ class PyBuildExt(build_ext):
++@@ -1674,7 +1674,8 @@ class PyBuildExt(build_ext):
+
+ def detect_uuid(self):
+ # Build the _uuid module if possible
+@@ -34,5 +34,5 @@ index 3d0c74bb7f..c7be85f352 100644
+ if self.compiler.find_library_file(self.lib_dirs, 'uuid'):
+ uuid_libs = ['uuid']
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0031-Add-an-option-to-disable-uuid-module.patch b/package/python3/0031-Add-an-option-to-disable-uuid-module.patch
+index 6ea57d2cde..6ea5f68590 100644
+--- a/package/python3/0031-Add-an-option-to-disable-uuid-module.patch
++++ b/package/python3/0031-Add-an-option-to-disable-uuid-module.patch
+@@ -1,4 +1,4 @@
+-From 3bb693408eda77dda145ec5fecee56ea73031e9f Mon Sep 17 00:00:00 2001
++From 74007603df0921450f14e8626df36140426cc300 Mon Sep 17 00:00:00 2001
+ From: Thomas Petazzoni
+ Date: Sat, 18 Aug 2018 10:54:56 +0200
+ Subject: [PATCH] Add an option to disable uuid module
+@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni
+ 1 file changed, 9 insertions(+)
+
+ diff --git a/configure.ac b/configure.ac
+-index 21479bbd7d..615c16aced 100644
++index d07e371c57..55ab6c3c26 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -3425,6 +3425,15 @@ if test "$CURSES" = "no"; then
++@@ -3330,6 +3330,15 @@ if test "$CURSES" = "no"; then
+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _curses _curses_panel"
+ fi
+
+@@ -29,5 +29,5 @@ index 21479bbd7d..615c16aced 100644
+
+ AC_ARG_ENABLE(pydoc,
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0032-fix-building-on-older-distributions.patch b/package/python3/0032-fix-building-on-older-distributions.patch
+index fb59e593f4..69998a36dd 100644
+--- a/package/python3/0032-fix-building-on-older-distributions.patch
++++ b/package/python3/0032-fix-building-on-older-distributions.patch
+@@ -1,4 +1,4 @@
+-From 94c62f96ca61f1a28124c837d7ec5ed0b9ae8786 Mon Sep 17 00:00:00 2001
++From 3ddda00652f809a3bd8b4e3f7b0a3a4270b280a6 Mon Sep 17 00:00:00 2001
+ From: Adam Duskett
+ Date: Thu, 16 Aug 2018 14:52:37 -0700
+ Subject: [PATCH] fix building on older distributions
+@@ -34,5 +34,5 @@ index 224585c69b..ef458c0c63 100644
+ os.unlink(new_path)
+
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch b/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch
+index 304a595fce..2f5f7a8bf0 100644
+--- a/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch
++++ b/package/python3/0033-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch
+@@ -1,4 +1,4 @@
+-From edc0757c56090364e0a95aabfa9f645a16a27569 Mon Sep 17 00:00:00 2001
++From 5932fedd9d1d43a230fa353df434f253e9d2b5a0 Mon Sep 17 00:00:00 2001
+ From: Peter Korsgaard
+ Date: Fri, 2 Aug 2019 15:53:16 +0200
+ Subject: [PATCH] configure.ac: fixup $CC --print-multiarch output for
+@@ -29,10 +29,10 @@ Signed-off-by: Peter Korsgaard
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+ diff --git a/configure.ac b/configure.ac
+-index 615c16aced..241298e6cf 100644
++index 55ab6c3c26..4a6d0662ac 100644
+ --- a/configure.ac
+ +++ b/configure.ac
+-@@ -718,7 +718,9 @@ then
++@@ -706,7 +706,9 @@ then
+ fi
+
+
+@@ -44,5 +44,5 @@ index 615c16aced..241298e6cf 100644
+
+ AC_MSG_CHECKING([for the platform triplet based on compiler characteristics])
+ --
+-2.25.1
++2.20.1
+
+diff --git a/package/python3/0034-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch b/package/python3/0034-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch
+deleted file mode 100644
+index 880277eb1d..0000000000
+--- a/package/python3/0034-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch
++++ /dev/null
+@@ -1,40 +0,0 @@
+-From 3c83eedcc2df3ecf6c4a17953ca24dff60c1378e Mon Sep 17 00:00:00 2001
+-From: Romain Naour
+-Date: Thu, 12 Nov 2020 00:16:18 +0100
+-Subject: [PATCH] lib/crypt: uClibc-ng doesn't set errno when encryption method
+- is not available
+-
+-Since commit [1] in cpython, an exception is raised when an encryption method
+-is not available. This eception is handled only if errno is set to EINVAL by
+-crypt() but uClibc-ng doesn't set errno in crypt() [2].
+-
+-Fixes:
+-https://gitlab.com/buildroot.org/buildroot/-/jobs/830981961
+-https://gitlab.com/buildroot.org/buildroot/-/jobs/830981979
+-
+-[1] https://github.com/python/cpython/commit/0d3fe8ae4961bf551e7d5e42559e2ede1a08fd7c
+-[2] https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/tree/libcrypt/crypt.c?h=v1.0.36#n29
+-
+-Signed-off-by: Romain Naour
+----
+- Lib/crypt.py | 4 +++-
+- 1 file changed, 3 insertions(+), 1 deletion(-)
+-
+-diff --git a/Lib/crypt.py b/Lib/crypt.py
+-index 33dbc46bb3..4692a5270c 100644
+---- a/Lib/crypt.py
+-+++ b/Lib/crypt.py
+-@@ -94,7 +94,9 @@ def _add_method(name, *args, rounds=None):
+- result = crypt('', salt)
+- except OSError as e:
+- # Not all libc libraries support all encryption methods.
+-- if e.errno == errno.EINVAL:
+-+ # Not all libc libraries set errno when encryption method is not
+-+ # available.
+-+ if e.errno == errno.EINVAL or e.errno == 0:
+- return False
+- raise
+- if result and len(result) == method.total_size:
+---
+-2.25.4
+-
+diff --git a/package/python3/python3.hash b/package/python3/python3.hash
+index 2a0ba6ab4f..b7c3963fa6 100644
+--- a/package/python3/python3.hash
++++ b/package/python3/python3.hash
+@@ -1,5 +1,2 @@
+-# From https://www.python.org/downloads/release/python-394/
+-md5 2a3dba5fc75b695c45cf1806156e1a97 Python-3.9.4.tar.xz
+ # Locally computed
+-sha256 4b0e6644a76f8df864ae24ac500a51bbf68bd098f6a173e27d3b61cdca9aa134 Python-3.9.4.tar.xz
+-sha256 599826df92bfdcd2702eac691072498bb096c55af04ee984cf90f70ed77b5a70 LICENSE
++sha256 5e391f3ec45da2954419cab0beaefd8be38895ea5ce33577c3ec14940c4b9572 Python-3.8.9.tar.xz
+diff --git a/package/python3/python3.mk b/package/python3/python3.mk
+index 345c6a8699..bea7701f9b 100644
+--- a/package/python3/python3.mk
++++ b/package/python3/python3.mk
+@@ -4,8 +4,8 @@
+ #
+ ################################################################################
+
+-PYTHON3_VERSION_MAJOR = 3.9
+-PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).4
++PYTHON3_VERSION_MAJOR = 3.8
++PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).9
+ PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.xz
+ PYTHON3_SITE = https://python.org/ftp/python/$(PYTHON3_VERSION)
+ PYTHON3_LICENSE = Python-2.0, others
+@@ -13,6 +13,9 @@ PYTHON3_LICENSE_FILES = LICENSE
+ PYTHON3_CPE_ID_VENDOR = python
+ PYTHON3_CPE_ID_PRODUCT = python
+
++# 0035-closes-bpo-42938-Replace-snprintf-with-Python-unicod.patch
++PYTHON3_IGNORE_CVES += CVE-2021-3177
++
+ # This host Python is installed in $(HOST_DIR), as it is needed when
+ # cross-compiling third-party Python modules.
+
+@@ -41,7 +44,7 @@ HOST_PYTHON3_CONF_ENV += \
+
+ PYTHON3_DEPENDENCIES = host-python3 libffi
+
+-HOST_PYTHON3_DEPENDENCIES = host-autoconf-archive host-expat host-zlib host-libffi
++HOST_PYTHON3_DEPENDENCIES = host-expat host-zlib host-libffi
+
+ ifeq ($(BR2_PACKAGE_HOST_PYTHON3_SSL),y)
+ HOST_PYTHON3_DEPENDENCIES += host-openssl
+@@ -242,7 +245,6 @@ endef
+ PYTHON3_POST_INSTALL_TARGET_HOOKS += PYTHON3_ENSURE_LIBPYTHON_STRIPPED
+
+ PYTHON3_AUTORECONF = YES
+-PYTHON3_AUTORECONF_OPTS = --include=$(HOST_DIR)/share/autoconf-archive
+
+ define PYTHON3_INSTALL_SYMLINK
+ ln -fs python3 $(TARGET_DIR)/usr/bin/python
+--
+2.20.1
+