def METHOD_NAME(self):
    pkgs_to_install = self.manifest.parse_initial_manifest()
    rpm_pre_process_cmds = self.d.getVar('RPM_PREPROCESS_COMMANDS')
    rpm_post_process_cmds = self.d.getVar('RPM_POSTPROCESS_COMMANDS')
    # update PM index files
    self.pm.write_index()
    execute_pre_post_process(self.d, rpm_pre_process_cmds)
    if self.progress_reporter:
        self.progress_reporter.next_stage()
    if self.inc_rpm_image_gen == "1":
        self._create_incremental(pkgs_to_install)
    if self.progress_reporter:
        self.progress_reporter.next_stage()
    self.pm.update()
    pkgs = []
    pkgs_attempt = []
    for pkg_type in pkgs_to_install:
        if pkg_type == Manifest.PKG_TYPE_ATTEMPT_ONLY:
            pkgs_attempt += pkgs_to_install[pkg_type]
        else:
            pkgs += pkgs_to_install[pkg_type]
    if self.progress_reporter:
        self.progress_reporter.next_stage()
    self.pm.install(pkgs)
    if self.progress_reporter:
        self.progress_reporter.next_stage()
    self.pm.install(pkgs_attempt, True)
    if self.progress_reporter:
        self.progress_reporter.next_stage()
    self.pm.install_complementary()
    if self.progress_reporter:
        self.progress_reporter.next_stage()
    self._setup_dbg_rootfs(['/etc', '/var/lib/rpm', '/var/cache/dnf', '/var/lib/dnf'])
    execute_pre_post_process(self.d, rpm_post_process_cmds)
    if self.inc_rpm_image_gen == "1":
        self.pm.backup_packaging_data()
    if self.progress_reporter:
        self.progress_reporter.next_stage()