--- ./libdnf/dnf-sack.cpp_orig	2020-02-12 07:24:03 +0000
+++ ./libdnf/dnf-sack.cpp	2020-02-12 07:26:55 +0000
@@ -462,7 +462,9 @@
 
     int previous_last = repo->nrepodata - 1;
     ret = cb(repo, fp);
+    #if 0
     fclose(fp);
+    #endif
     if (ret == 0) {
         repo_update_state(hrepo, which_repodata, _HY_LOADED_FETCH);
         assert(previous_last == repo->nrepodata - 2); (void)previous_last;
@@ -772,7 +774,7 @@
     if (fp_repomd)
         fclose(fp_repomd);
     if (fp_primary)
-        fclose(fp_primary);
+        gzclose(save_gzf);
     g_free(fn_cache);
 
     if (retval) {
@@ -837,7 +839,7 @@
     g_free (priv->arch);
     priv->arch = g_strdup(arch);
     pool_setdisttype(pool, DISTTYPE_RPM);
-    pool_setarch(pool, arch);
+    pool_setarch(pool, "ppc");
 
     /* Since one of commits after 0.6.20 libsolv allowes custom arches
      * which means it will be 'newcoolarch' and 'noarch' always. */
