diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0001-comment-out-selinux.patch b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0001-comment-out-selinux.patch
deleted file mode 100644
index 90fa387..0000000
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0001-comment-out-selinux.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From fc8e93530ba017ecfe111e53d3cbdc3a5b3ac286 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia@windriver.com>
-Date: Fri, 23 Nov 2018 16:58:38 +0800
-Subject: [PATCH 01/11] comment out selinux
-
-Upstream-Status: Inappropriate [oe specific]
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- blivet/flags.py | 5 +++--
- blivet/util.py  | 6 +++++-
- 2 files changed, 8 insertions(+), 3 deletions(-)
-
-diff --git a/blivet/flags.py b/blivet/flags.py
-index 4e26d82..94324ff 100644
---- a/blivet/flags.py
-+++ b/blivet/flags.py
-@@ -20,7 +20,7 @@
- #
- 
- import shlex
--import selinux
-+#import selinux
- 
- 
- class Flags(object):
-@@ -47,7 +47,8 @@ class Flags(object):
-         #
-         # enable/disable functionality
-         #
--        self.selinux = selinux.is_selinux_enabled()
-+        #self.selinux = selinux.is_selinux_enabled()
-+        self.selinux = False
-         self.multipath = True
-         self.dmraid = True
-         self.ibft = True
-diff --git a/blivet/util.py b/blivet/util.py
-index 9daf151..4eac8b9 100644
---- a/blivet/util.py
-+++ b/blivet/util.py
-@@ -3,7 +3,7 @@ import functools
- import glob
- import itertools
- import os
--import selinux
-+#import selinux
- import subprocess
- import re
- import sys
-@@ -444,6 +444,8 @@ def get_cow_sysfs_path(dev_path, dev_sysfsPath):
- def match_path_context(path):
-     """ Return the default SELinux context for the given path. """
-     context = None
-+    return context
-+
-     try:
-         context = selinux.matchpathcon(os.path.normpath(path), 0)[1]
-     except OSError as e:
-@@ -468,6 +470,8 @@ def set_file_context(path, context, root=None):
- 
-             True if successful, False if not.
-     """
-+    return False
-+
-     if root is None:
-         root = '/'
- 
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0008-use-oe-variable-to-replace-hardcoded-dir.patch b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0008-use-oe-variable-to-replace-hardcoded-dir.patch
index ade1862..1e8bcac 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0008-use-oe-variable-to-replace-hardcoded-dir.patch
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0008-use-oe-variable-to-replace-hardcoded-dir.patch
@@ -6,6 +6,10 @@
 Upstream-Status: Pending
 
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
+Rebase for python3-blivet 3.4.0.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
 ---
  setup.py | 8 ++++----
  1 file changed, 4 insertions(+), 4 deletions(-)
@@ -19,11 +23,11 @@
  
  data_files = [
 -    ('/etc/dbus-1/system.d', ['dbus/blivet.conf']),
--    ('/usr/share/dbus-1/system-services', ['dbus/com.redhat.Blivet1.service']),
+-    ('/usr/share/dbus-1/system-services', ['dbus/com.redhat.Blivet0.service']),
 -    ('/usr/libexec', ['dbus/blivetd']),
 -    ('/usr/lib/systemd/system', ['dbus/blivet.service'])
 +    (os.environ.get('sysconfdir')+'/dbus-1/system.d', ['dbus/blivet.conf']),
-+    (os.environ.get('datadir')+'/dbus-1/system-services', ['dbus/com.redhat.Blivet1.service']),
++    (os.environ.get('datadir')+'/dbus-1/system-services', ['dbus/com.redhat.Blivet0.service']),
 +    (os.environ.get('libexecdir'), ['dbus/blivetd']),
 +    (os.environ.get('systemd_system_unitdir'), ['dbus/blivet.service'])
  ]
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0010-invoking-mkfs-with-infinite-timeout.patch b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0010-invoking-mkfs-with-infinite-timeout.patch
index f128490..c441acd 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0010-invoking-mkfs-with-infinite-timeout.patch
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet/0010-invoking-mkfs-with-infinite-timeout.patch
@@ -9,17 +9,21 @@
 Upstream-Status: Pending
 
 Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
+
+Rebase for python3-blivet 3.4.0.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
 ---
  blivet/tasks/fsmkfs.py | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/blivet/tasks/fsmkfs.py b/blivet/tasks/fsmkfs.py
-index ad166aa..7bf5075 100644
+index e4a6aaa8..9730f7e5 100644
 --- a/blivet/tasks/fsmkfs.py
 +++ b/blivet/tasks/fsmkfs.py
-@@ -170,7 +170,7 @@ class FSMkfs(task.BasicApplication, FSMkfsTask):
+@@ -203,7 +203,7 @@ class FSMkfs(task.BasicApplication, FSMkfsTask):
          options = options or []
-         cmd = self._mkfs_command(options, label, set_uuid)
+         cmd = self._mkfs_command(options, label, set_uuid, nodiscard)
          try:
 -            ret = util.run_program(cmd)
 +            ret = util.run_program(cmd, timeout=-1)
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.4.bb b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.4.0.bb
similarity index 81%
rename from meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.4.bb
rename to meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.4.0.bb
index 2b5b253..d3373f4 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.1.4.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivet_3.4.0.bb
@@ -8,9 +8,8 @@
 S = "${WORKDIR}/git"
 B = "${S}"
 
-SRCREV = "9b5ad2d5b5df159963e1c6c24523e1dfe1f71435"
-SRC_URI = "git://github.com/rhinstaller/blivet;branch=3.1-release \
-           file://0001-comment-out-selinux.patch \
+SRCREV = "f7d9027e4fdad11187980e73726cd75a2dc962c2"
+SRC_URI = "git://github.com/storaged-project/blivet.git;branch=3.4-release \
            file://0002-run_program-support-timeout.patch \
            file://0003-support-infinit-timeout.patch \
            file://0004-fix-new.roots-object-is-not-iterable.patch \
@@ -30,17 +29,17 @@
 
 inherit setuptools3 python3native
 
-RDEPENDS_${PN} += "python3-pykickstart python3-pyudev \
+RDEPENDS:${PN} += "python3-pykickstart python3-pyudev \
                   parted python3-pyparted multipath-tools \
                   lsof cryptsetup libblockdev \
                   libbytesize \
 "
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${datadir}/dbus-1/system-services \
 "
 
 inherit systemd
 
 SYSTEMD_AUTO_ENABLE = "disable"
-SYSTEMD_SERVICE_${PN} = "blivet.service"
+SYSTEMD_SERVICE:${PN} = "blivet.service"
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui/0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui/0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch
deleted file mode 100644
index cf80566..0000000
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui/0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 4d0f9f961704bc1dd83fdf6808fb6ab91dc6a768 Mon Sep 17 00:00:00 2001
-From: Vojtech Trefny <vtrefny@redhat.com>
-Date: Thu, 13 Dec 2018 13:39:03 +0100
-Subject: [PATCH] Fix return type of BlivetUtils.get_disks (#1658893)
-
-This must be a list, not a generator, because we are iterating
-over it multiple times in some cases.
-
-Upstream-Status: Backport[git://github.com/rhinstaller/blivet-gui]
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- blivetgui/blivet_utils.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/blivetgui/blivet_utils.py b/blivetgui/blivet_utils.py
-index e2bd802..ddb04fc 100644
---- a/blivetgui/blivet_utils.py
-+++ b/blivetgui/blivet_utils.py
-@@ -204,7 +204,7 @@ class BlivetUtils(object):
- 
-         """
- 
--        return (device for device in self.storage.disks if device.type != "mdarray")
-+        return [device for device in self.storage.disks if device.type != "mdarray"]
- 
-     def get_group_devices(self):
-         """ Return list of LVM2 Volume Group devices
--- 
-2.7.4
-
diff --git a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.2.1.bb
similarity index 64%
rename from meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb
rename to meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.2.1.bb
index 92402be..ad3c073 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.1.10.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-blivet/python3-blivetgui_2.2.1.bb
@@ -8,21 +8,19 @@
 S = "${WORKDIR}/git"
 B = "${S}"
 
-SRCREV = "67ec0b7a0e065ba24ab87963409bfb21b2aac6dd"
-SRC_URI = "git://github.com/rhinstaller/blivet-gui;branch=master \
-           file://0001-Fix-return-type-of-BlivetUtils.get_disks-1658893.patch \
-"
+SRCREV = "adb6bd69fb3cfa709265db66ddcee04c0b5e070f"
+SRC_URI = "git://github.com/storaged-project/blivet-gui.git"
 
 inherit features_check
 REQUIRED_DISTRO_FEATURES = "x11 systemd"
 
 inherit setuptools3 python3native
 
-RDEPENDS_${PN} = "python3-pygobject python3 \
+RDEPENDS:${PN} = "python3-pygobject python3 \
                   python3-blivet gtk+3  \
                   python3-pid libreport \
 "
 
-FILES_${PN} += " \
+FILES:${PN} += " \
     ${datadir}/* \
     "
diff --git a/meta-openembedded/meta-python/recipes-extended/python-cson/python3-cson_git.bb b/meta-openembedded/meta-python/recipes-extended/python-cson/python3-cson_git.bb
index 5c74c7a..7bc61f0 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-cson/python3-cson_git.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-cson/python3-cson_git.bb
@@ -12,8 +12,8 @@
 
 S = "${WORKDIR}/git"
 
-RDEPENDS_${PN}_class-native = ""
-DEPENDS_append_class-native = " python-native "
+RDEPENDS:${PN}:class-native = ""
+DEPENDS:append:class-native = " python-native "
 
 inherit setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-extended/python-meh/python3-meh_0.50.bb b/meta-openembedded/meta-python/recipes-extended/python-meh/python3-meh_0.50.bb
index 64a24ad..372b3a0 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-meh/python3-meh_0.50.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-meh/python3-meh_0.50.bb
@@ -13,5 +13,5 @@
 "
 SRCREV = "11980776c5ad757401ea1d12fd1f331d96428105"
 
-FILES_${PN} += "${datadir}/*"
+FILES:${PN} += "${datadir}/*"
 
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pyephem/python3-pyephem_3.7.7.1.bb b/meta-openembedded/meta-python/recipes-extended/python-pyephem/python3-pyephem_3.7.7.1.bb
index 5949a55..7cf88ec 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-pyephem/python3-pyephem_3.7.7.1.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-pyephem/python3-pyephem_3.7.7.1.bb
@@ -10,7 +10,7 @@
 
 inherit pypi setuptools3
 
-RDEPENDS_${PN} += "\
+RDEPENDS:${PN} += "\
     ${PYTHON_PN}-datetime \
     ${PYTHON_PN}-math \
     "
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.32.bb b/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.32.bb
index 62d2729..829ada4 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.32.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-pykickstart/python3-pykickstart_3.32.bb
@@ -3,10 +3,10 @@
 LICENSE = "GPLv2+"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
-FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
 
 DEPENDS = "python3"
-RDEPENDS_${PN} = "python3 \
+RDEPENDS:${PN} = "python3 \
                   python3-requests \
                   python3-six \
 "
diff --git a/meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.7.bb b/meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.7.bb
index 8909aa1..765201c 100644
--- a/meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.7.bb
+++ b/meta-openembedded/meta-python/recipes-extended/python-pyparted/python3-pyparted_3.11.7.bb
@@ -16,10 +16,10 @@
 
 DEPENDS += "parted"
 
-RDEPENDS_${PN}_class-target += " \
+RDEPENDS:${PN}:class-target += " \
     parted (>= 2.3) \
     python3-stringold python3-codecs python3-math \
 "
-RDEPENDS_${PN}_class-native = ""
+RDEPENDS:${PN}:class-native = ""
 
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-python/recipes-extended/pywbem/python3-pywbem_1.2.0.bb b/meta-openembedded/meta-python/recipes-extended/pywbem/python3-pywbem_1.2.0.bb
index 988dae1..a6ca4d5 100644
--- a/meta-openembedded/meta-python/recipes-extended/pywbem/python3-pywbem_1.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-extended/pywbem/python3-pywbem_1.2.0.bb
@@ -27,7 +27,7 @@
     ${PYTHON_PN}-wheel-native \
 "
 
-RDEPENDS_${PN}_class-target += "\
+RDEPENDS:${PN}:class-target += "\
     ${PYTHON_PN}-datetime \
     ${PYTHON_PN}-io \
     ${PYTHON_PN}-netclient \
@@ -43,7 +43,7 @@
     ${PYTHON_PN}-yamlloader \
 "
 
-ALTERNATIVE_${PN} = "mof_compiler"
+ALTERNATIVE:${PN} = "mof_compiler"
 ALTERNATIVE_TARGET[mof_compiler] = "${bindir}/mof_compiler"
 
 ALTERNATIVE_PRIORITY = "60"
diff --git a/meta-openembedded/meta-python/recipes-extended/pywbemtools/python3-pywbemtools_0.9.0.bb b/meta-openembedded/meta-python/recipes-extended/pywbemtools/python3-pywbemtools_0.9.0.bb
index b06fee5..46b6a99 100644
--- a/meta-openembedded/meta-python/recipes-extended/pywbemtools/python3-pywbemtools_0.9.0.bb
+++ b/meta-openembedded/meta-python/recipes-extended/pywbemtools/python3-pywbemtools_0.9.0.bb
@@ -15,7 +15,7 @@
     ${PYTHON_PN}-click-native \
 "
 
-RDEPENDS_${PN}_class-target += "\
+RDEPENDS:${PN}:class-target += "\
     ${PYTHON_PN}-ply \
     ${PYTHON_PN}-pyyaml \
     ${PYTHON_PN}-six \
