diff -uNr anaconda-11.1.2.87__orig/scripts/pkgorder anaconda-11.1.2.87/scripts/pkgorder --- anaconda-11.1.2.87__orig/scripts/pkgorder 2007-05-10 18:50:46.000000000 +0100 +++ anaconda-11.1.2.87/scripts/pkgorder 2007-11-22 02:02:47.000000000 +0000 @@ -71,25 +71,18 @@ #XXX: sigh processed = {} def processTransaction(ds): - del ds.ts - ds.initActionTs() - ds.populateTs(keepold=0) - ds.ts.check() - ds.ts.order() - for (hdr, path) in ds.ts.ts.getKeys(): - fname = os.path.basename(path) - fpattern = "%s*" % fname.rsplit('.', 2)[0] +# ds.tsInfo.makelists() +# print len(ds.tsInfo.installed) +# import pdb; pdb.set_trace() + for pkgtup in ds.tsInfo.sort(): + fname = ds.tsInfo.pkgdict[pkgtup][0].po.returnSimple('relativepath') + fpattern = "%s/%s*" % (toppath, fname.rsplit('.', 2)[0]) printMatchingPkgs(fpattern) def printMatchingPkgs(fpattern): global processed - if os.path.isdir("%s/%s/RPMS" % (toppath, product)): - matches = glob.glob("%s/%s/RPMS/%s" % (toppath, product, fpattern)) - elif os.path.isdir("%s/%s" %(toppath, product)): - matches = glob.glob("%s/%s/%s" % (toppath, product, fpattern)) - else: - matches = glob.glob("%s/%s" % (toppath, fpattern)) + matches = glob.glob(fpattern) for match in matches: mname = os.path.basename(match) @@ -153,7 +146,12 @@ arch = "i686" # print out kernel related packages first - printMatchingPkgs("kernel-*") + if os.path.isdir("%s/%s/RPMS" % (toppath, product)): + printMatchingPkgs("%s/%s/RPMS/%s" % (toppath, product, "kernel-*")) + elif os.path.isdir("%s/%s" %(toppath, product)): + printMatchingPkgs("%s/%s/%s" % (toppath, product, "kernel-*")) + else: + printMatchingPkgs("%s/%s" % (toppath, "kernel-*")) testpath = "/tmp/pkgorder-%d" %(os.getpid(),) os.system("mkdir -p %s/var/lib/rpm" %(testpath,)) @@ -164,7 +162,12 @@ addGroups(ds, ["core", "base", "text-internet"]) # hack, hack, hack... make sure iscsi ends up on disc1 (#208832) - printMatchingPkgs("iscsi-*") + if os.path.isdir("%s/%s/RPMS" % (toppath, product)): + printMatchingPkgs("%s/%s/RPMS/%s" % (toppath, product, "iscsi-*")) + elif os.path.isdir("%s/%s" %(toppath, product)): + printMatchingPkgs("%s/%s/%s" % (toppath, product, "iscsi-*")) + else: + printMatchingPkgs("%s/%s" % (toppath, "iscsi-*")) addGroups(ds, ["base-x", "dial-up", "graphical-internet", "editors", @@ -182,17 +185,16 @@ "gnome-software-development", "eclipse", "x-software-development", "java-development", "kde-software-development", - "mail-server", "network-server", "legacy-network-server"]) + "mail-server", "legacy-network-server"]) addGroups(ds, ["news-server", "legacy-software-development"]) - #Everthing else but kernels + #Everthing else but kernels - don't depsolve for po in ds.pkgSack.returnPackages(): if po.pkgtup not in ds._installed.returnPackages(): if po.name.find("kernel") == -1: member = ds.tsInfo.addInstall(po) - ds.resolveDeps() processTransaction(ds) os.unlink(config) shutil.rmtree(testpath)