diff --git a/meta/recipes-core/meta/package-index-deb.bb b/meta/recipes-core/meta/package-index-deb.bb
new file mode 100644
index 0000000..db52e2a
--- /dev/null
+++ b/meta/recipes-core/meta/package-index-deb.bb
@@ -0,0 +1,10 @@
+require package-index.inc
+
+do_package_index[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
+
+do_package_index() {
+    set -ex
+    package_update_index_deb
+    set +ex
+}
+
diff --git a/meta/recipes-core/meta/package-index-ipk.bb b/meta/recipes-core/meta/package-index-ipk.bb
new file mode 100644
index 0000000..5eddea1
--- /dev/null
+++ b/meta/recipes-core/meta/package-index-ipk.bb
@@ -0,0 +1,11 @@
+require package-index.inc
+
+do_package_index[depends] += "opkg-utils-native:do_populate_sysroot"
+do_package_index[depends] += "opkg-native:do_populate_sysroot"
+
+do_package_index() {
+    set -ex
+    package_update_index_ipk
+    set +ex
+}
+
diff --git a/meta/recipes-core/meta/package-index-rpm.bb b/meta/recipes-core/meta/package-index-rpm.bb
new file mode 100644
index 0000000..605a638
--- /dev/null
+++ b/meta/recipes-core/meta/package-index-rpm.bb
@@ -0,0 +1,10 @@
+require package-index.inc
+
+do_package_index[depends] += "createrepo-native:do_populate_sysroot"
+
+do_package_index() {
+    set -ex
+    createrepo "${DEPLOY_DIR_RPM}"
+    set +ex
+}
+
diff --git a/meta/recipes-core/meta/package-index.bb b/meta/recipes-core/meta/package-index.inc
similarity index 69%
rename from meta/recipes-core/meta/package-index.bb
rename to meta/recipes-core/meta/package-index.inc
index 3c642cb..3f1caea 100644
--- a/meta/recipes-core/meta/package-index.bb
+++ b/meta/recipes-core/meta/package-index.inc
@@ -19,14 +19,6 @@ do_package_write_deb[noexec] = "1"
 do_populate_sysroot[noexec] = "1"
 
 do_package_index[nostamp] = "1"
-do_package_index[dirs] = "${DEPLOY_DIR_IPK}"
-do_package_index[depends] += "opkg-utils-native:do_populate_sysroot"
-do_package_index[depends] += "opkg-native:do_populate_sysroot"
 
-do_package_index() {
-	set -ex
-	package_update_index_ipk
-	set +ex
-}
 addtask do_package_index before do_build
 EXCLUDE_FROM_WORLD = "1"
