diff --git a/meta-phosphor/common/recipes-bsp/u-boot/u-boot-aspeed.inc b/meta-phosphor/common/recipes-bsp/u-boot/u-boot-aspeed.inc
index 983c33f..e1eb738 100644
--- a/meta-phosphor/common/recipes-bsp/u-boot/u-boot-aspeed.inc
+++ b/meta-phosphor/common/recipes-bsp/u-boot/u-boot-aspeed.inc
@@ -2,17 +2,17 @@
 
 SRC_URI_append_aspeed = " file://0001-configs-ast-Add-redundnant-env.patch"
 
-SRC_URI_append_aspeed = " ${@bb.utils.contains('MACHINE_FEATURES', 'obmc-ubi-fs', \
-    'file://0002-config-ast-common-hack-bootopts.patch \
-     file://0003-config-ast-common-Add-bootopts-to-support-ubi-and-mt.patch \
-     file://0004-config-ast-common-Add-conditional-factory-reset-comm.patch', '', d)}"
+SRC_URI_append_aspeed_df-obmc-ubi-fs = " \
+    file://0002-config-ast-common-hack-bootopts.patch \
+    file://0003-config-ast-common-Add-bootopts-to-support-ubi-and-mt.patch \
+    file://0004-config-ast-common-Add-conditional-factory-reset-comm.patch \
+    "
 
 
-python do_configure_aspeed () {
-    if "obmc-ubi-fs" in d.getVar("MACHINE_FEATURES", True):
-        version_id=do_get_versionID(d)
-        d.setVar('VERSION_ID', version_id)
-        bb.build.exec_func("patch_uboot", d)
+python do_configure_aspeed_df-obmc-ubi-fs () {
+    version_id=do_get_versionID(d)
+    d.setVar('VERSION_ID', version_id)
+    bb.build.exec_func("patch_uboot", d)
 }
 
 patch_uboot () {
diff --git a/meta-phosphor/common/recipes-core/base-files/base-files_%.bbappend b/meta-phosphor/common/recipes-core/base-files/base-files_%.bbappend
index e632d56..172c9a5 100644
--- a/meta-phosphor/common/recipes-core/base-files/base-files_%.bbappend
+++ b/meta-phosphor/common/recipes-core/base-files/base-files_%.bbappend
@@ -1,8 +1,8 @@
 inherit obmc-phosphor-utils
 
-FILESEXTRAPATHS_prepend := "${@mf_enabled(d, 'obmc-ubi-fs', '${THISDIR}/${PN}:')}"
+FILESEXTRAPATHS_prepend_df-obmc-ubi-fs := "${THISDIR}/${PN}:"
 
-RDEPENDS_${PN}_append += "${@mf_enabled(d, 'obmc-ubi-fs', 'preinit-mounts')}"
+RDEPENDS_${PN}_append_df-obmc-ubi-fs = " preinit-mounts"
 
 do_install_append() {
     install -d ${D}/srv
diff --git a/meta-phosphor/common/recipes-core/systemd/systemd_%.bbappend b/meta-phosphor/common/recipes-core/systemd/systemd_%.bbappend
index 3b8a8d9..e7eeb5a 100644
--- a/meta-phosphor/common/recipes-core/systemd/systemd_%.bbappend
+++ b/meta-phosphor/common/recipes-core/systemd/systemd_%.bbappend
@@ -22,7 +22,7 @@
 FILES_${PN} += "${datadir}/dbus-1/system.d/org.freedesktop.journal1.conf"
 
 SRC_URI += "file://0007-journal-Add-Synchronize-dbus-method.patch"
-SRC_URI += "${@mf_enabled(d, 'obmc-ubi-fs', 'file://software.conf')}"
+SRC_URI_append_df-obmc-ubi-fs = " file://software.conf"
 SRC_URI += "file://0008-man-update-machine-id-5-with-a-note-about-privacy-46.patch"
 SRC_URI += "file://0009-sd-id128-add-new-sd_id128_get_machine_app_specific-A.patch"
 SRC_URI += "file://0010-core-add-khash-API-to-src-basic-as-wrapper-around-ke.patch"
@@ -40,11 +40,11 @@
         #TODO Remove after this issue is resolved
         #https://github.com/openbmc/openbmc/issues/152
         ln -s /dev/null ${D}/etc/systemd/system/systemd-hwdb-update.service
+}
 
+do_install_append_df-obmc-ubi-fs() {
         # /tmp/images is the software image upload directory.
         # It should not be deleted since it is watched by the Image Manager
         # for new images.
-        if ${@bb.utils.contains('MACHINE_FEATURES', 'obmc-ubi-fs', 'true', 'false', d)}; then
-                install -m 0644 ${WORKDIR}/software.conf ${D}${exec_prefix}/lib/tmpfiles.d/
-        fi
+        install -m 0644 ${WORKDIR}/software.conf ${D}${exec_prefix}/lib/tmpfiles.d/
 }
diff --git a/meta-phosphor/common/recipes-kernel/linux/linux-obmc.inc b/meta-phosphor/common/recipes-kernel/linux/linux-obmc.inc
index 72c2334..9797811 100644
--- a/meta-phosphor/common/recipes-kernel/linux/linux-obmc.inc
+++ b/meta-phosphor/common/recipes-kernel/linux/linux-obmc.inc
@@ -14,7 +14,7 @@
 SRC_URI += "file://phosphor-gpio-keys.cfg"
 SRC_URI += "file://phosphor-vlan.scc"
 SRC_URI += "file://phosphor-vlan.cfg"
-SRC_URI += "${@mf_enabled(d, 'obmc-ubi-fs', 'file://0001-ARM-dts-Aspeed-Witherspoon-Update-BMC-partitioning.patch')}"
+SRC_URI_append_df-obmc-ubi-fs = " file://0001-ARM-dts-Aspeed-Witherspoon-Update-BMC-partitioning.patch"
 
 
 LINUX_VERSION_EXTENSION ?= "-${SRCREV}"
diff --git a/meta-phosphor/common/recipes-phosphor/dump/phosphor-debug-collector.bb b/meta-phosphor/common/recipes-phosphor/dump/phosphor-debug-collector.bb
index 24b233f..fcbe8ae 100644
--- a/meta-phosphor/common/recipes-phosphor/dump/phosphor-debug-collector.bb
+++ b/meta-phosphor/common/recipes-phosphor/dump/phosphor-debug-collector.bb
@@ -161,8 +161,8 @@
                 os.symlink(srclink, destlink)
 }
 
-#Enable ubifs-workaround by MACHINE_FEATURE obmc-ubi-fs.
-PACKAGECONFIG_append = "${@mf_enabled(d, 'obmc-ubi-fs', 'ubifs-workaround')}"
+#Enable ubifs-workaround by DISTRO_FEATURE obmc-ubi-fs.
+PACKAGECONFIG_append_df-obmc-ubi-fs = " ubifs-workaround"
 PACKAGECONFIG[ubifs-workaround] = " \
        --enable-ubifs-workaround, \
        --disable-ubifs-workaround \
diff --git a/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb b/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb
index fef72dc..ee6e13c 100644
--- a/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb
+++ b/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb
@@ -89,17 +89,20 @@
         ${VIRTUAL-RUNTIME_obmc-sensors-hwmon} \
         "
 
+# These packages are not required with UBI enabled
+${PN}-software-extras = " \
+        obmc-flash-bmc \
+        obmc-mgr-download \
+        "
+
+${PN}-software-extras_df-obmc-ubi-fs = ""
+
 SUMMARY_${PN}-software = "Software applications"
 RDEPENDS_${PN}-software = " \
         ${VIRTUAL-RUNTIME_obmc-bmc-download-mgr} \
         ${VIRTUAL-RUNTIME_obmc-bmc-updater} \
         ${VIRTUAL-RUNTIME_obmc-bmc-version} \
-        "
-# Determine if the non-UBI flash packages are required
-RDEPENDS_${PN}-software += " \
-        ${@mf_enabled(d, 'obmc-ubi-fs', \
-            '', \
-            'obmc-flash-bmc obmc-mgr-download')} \
+        ${${PN}-software-extras} \
         "
 
 SUMMARY_${PN}-debug-collector = "BMC debug collector"
