livecd-tools/livecd-tools-21.1.pkg.installation.fix.patch
2019-03-08 18:00:39 +03:00

46 lines
2.6 KiB
Diff

--- livecd-tools-21.1/imgcreate/creator.py 2019-03-08 16:47:04.577622000 +0300
+++ livecd-tools-21.1.patched/imgcreate/creator.py 2019-03-08 16:40:38.728219000 +0300
@@ -25,6 +25,7 @@
import shutil
import logging
import subprocess
+import re
import selinux
import rpm
@@ -577,17 +578,24 @@
urpmi_conf = self.__builddir + "/urpmi_conf"
print urpmi_conf
time.sleep(5)
- for repo in kickstart.get_repos(self.ks, repo_urls):
- (name, baseurl, mirrorlist, proxy, inc, exc, cost, sslverify) = repo
- subprocess.call(["/usr/sbin/urpmi.addmedia", "--urpmi-root", urpmi_conf, name, baseurl])
- packages = self.ks.handler.packages.packageList
- if "basesystem" in packages:
- print "Basesystem should be installed first"
- subprocess.call(["/usr/sbin/urpmi", "--auto", "--split-length", "0", "--fastunsafe", "--nolock", "--ignorearch", "--no-verify-rpm", "--no-suggests", "--urpmi-root", urpmi_conf, "--root", self._instroot] + ['basesystem'])
-
-
- print "Now let's install all other packages"
- subprocess.call(["/usr/sbin/urpmi", "--auto", "--no-suggests", "--fastunsafe", "--debug", "--no-verify", "--urpmi-root", urpmi_conf, "--root", self._instroot] + packages)
+ try:
+ for repo in kickstart.get_repos(self.ks, repo_urls):
+ (name, baseurl, mirrorlist, proxy, inc, exc, cost, sslverify) = repo
+ subprocess.check_call(["/usr/sbin/urpmi.addmedia", "--urpmi-root", urpmi_conf, name, baseurl])
+ except subprocess.CalledProcessError, err:
+ raise CreatorError("Failed to add repository \"%s\" (%s), error code %d" % (name, baseurl, err.returncode))
+
+ packages = self.ks.handler.packages.packageList
+ try:
+ print "Let's bootstrap chroot with all packages that must be installed into ISO..."
+ os.environ["urpmiRoot"] = urpmi_conf
+ os.environ["rpmRoot"] = self._instroot
+ packages_list = ' '.join(packages)
+ os.environ["packagesList"] = packages_list
+ #subprocess.check_call(["/usr/sbin/urpmi", "--auto", "--no-suggests", "--fastunsafe", "--debug", "--urpmi-root", urpmi_conf, "--root", self._instroot] + packages)
+ subprocess.check_call("/usr/sbin/livecd-urpmi-bootstrapper")
+ except subprocess.CalledProcessError, err:
+ raise CreatorError("Package installation failed, error code %d" % err.returncode)
def _run_post_scripts(self):
for s in kickstart.get_post_scripts(self.ks):