diff --git a/SPECS/pygobject3.spec b/SPECS/pygobject3.spec
index 8b6888a..4a2e4e9 100644
--- a/SPECS/pygobject3.spec
+++ b/SPECS/pygobject3.spec
@@ -6,7 +6,7 @@
 
 Name:           pygobject3
 Version:        3.40.1
-Release:        5%{?dist}
+Release:        6%{?dist}
 Summary:        Python bindings for GObject Introspection
 
 License:        LGPLv2+ and MIT
@@ -21,6 +21,10 @@ BuildRequires:  python3-devel >= %{python3_version}
 BuildRequires:  python3-cairo-devel >= %{pycairo_version}
 BuildRequires:  python3-setuptools
 
+# https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/#_byte_compilation_reproducibility
+%global py_reproducible_pyc_path %{buildroot}%{python3_sitelib}
+BuildRequires:  /usr/bin/marshalparser
+
 Patch10001:     0001-IntrospectionModule-handle-two-threads-loading-type-.patch
 
 %description
@@ -41,10 +45,20 @@ for use in Python 3 programs.
 %package     -n python3-gobject-base
 Summary:        Python 3 bindings for GObject Introspection base package
 Requires:       gobject-introspection%{?_isa} >= %{gobject_introspection_version}
+Requires:       python3-gobject-base-noarch = %{version}-%{release}
 
 %description -n python3-gobject-base
 This package provides the non-cairo specific bits of the GObject Introspection
-library.
+library that are architecture specific.
+
+%package     -n python3-gobject-base-noarch
+Summary:        Python 3 bindings for GObject Introspection base (not architecture dependent)
+BuildArch:      noarch
+Requires:       python3-gobject-base = %{version}-%{release}
+
+%description -n python3-gobject-base-noarch
+This package provides the non-cairo specific bits of the GObject Introspection
+library that are not architecture specific.
 
 %package     -n python3-gobject-devel
 Summary:        Development files for embedding PyGObject introspection support
@@ -71,12 +85,17 @@ This package contains files required to embed PyGObject
 %{python3_sitearch}/gi/_gi_cairo*.so
 
 %files -n python3-gobject-base
+%dir %{python3_sitearch}/gi/
+%pycached %{python3_sitearch}/gi/*.py
+%{python3_sitearch}/gi/_gi.*.so
+%{python3_sitearch}/PyGObject-*.egg-info
+
+%files -n python3-gobject-base-noarch
 %license COPYING
 %doc NEWS
-%exclude %{python3_sitearch}/gi/_gi_cairo*.so
-%{python3_sitearch}/gi/
-%{python3_sitearch}/PyGObject-*.egg-info
-%{python3_sitelib}/gi/
+%dir %{python3_sitelib}/gi/
+%{python3_sitelib}/gi/overrides/
+%{python3_sitelib}/gi/repository/
 %{python3_sitelib}/pygtkcompat/
 
 %files -n python3-gobject-devel
@@ -85,6 +104,12 @@ This package contains files required to embed PyGObject
 %{_libdir}/pkgconfig/pygobject-3.0.pc
 
 %changelog
+* Tue Jun 14 2022 Tomas Popela <tpopela@redhat.com> - 3.40.1-6
+- Fix the multilib problems by backporting fixes done by mhroncok from Fedora:
+- Move pure Python modules to a noarch subpackage
+- Ensure Python bytecode installed in multilib packages is bit-to-bit identical
+  Resolves: rhbz#1915764
+
 * Thu Aug 19 2021 DJ Delorie <dj@redhat.com> - 3.40.1-5
 - Rebuilt for libffi 3.4.2 SONAME transition.
   Related: rhbz#1891914