diff --git a/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb b/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
index 9d07fc44e27a..f84941daf08b 100644
--- a/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
+++ b/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
@@ -440,6 +440,7 @@ RDEPENDS:packagegroup-meta-python3 = "\
     python3-ujson \
     python3-unidiff \
     python3-uritemplate \
+    python3-varlink \
     python3-vcversioner \
     python3-versioneer \
     python3-versiontools \
diff --git a/meta-python/recipes-devtools/python/python3-varlink_32.1.0.bb b/meta-python/recipes-devtools/python/python3-varlink_32.1.0.bb
new file mode 100644
index 000000000000..8c532371d0a2
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-varlink_32.1.0.bb
@@ -0,0 +1,27 @@
+SUMMARY = "Python implementation of the Varlink protocol"
+HOMEPAGE = "https://github.com/varlink/python"
+SECTION = "devel/python"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e"
+
+# 32.1.0 is not published on PyPI
+SRC_URI = "git://github.com/varlink/python.git;protocol=https;branch=master"
+SRCREV = "8b3ba4e8206b098c524f538036a941b47797840d"
+
+inherit python_setuptools_build_meta
+
+# Keep the bundled test suite, and its python3-unittest dependency, separate
+PACKAGES =+ "${PN}-tests"
+FILES:${PN}-tests = "${PYTHON_SITEPACKAGES_DIR}/varlink/tests"
+RDEPENDS:${PN}-tests = "${PN} python3-unittest"
+
+RDEPENDS:${PN} = "\
+    python3-core \
+    python3-datetime \
+    python3-io \
+    python3-json \
+    python3-netclient \
+    python3-netserver \
+    python3-shell \
+"
