import struct
# global variables
-PROG_VERSION = "0.9.28~git"
+PROG_VERSION = "0.9.28"
MOUNTED = set() # register mountpoints
TMPFILES = set() # register tmpfiles
DATESTAMP = time.mktime(datetime.datetime.now().timetuple()) # unique identifier for syslinux.cfg
grub_device = device
logging.info("Installing grub as bootloader")
- logging.debug("grub-install --recheck --force --no-floppy --root-directory=%s %s",
- device_mountpoint, grub_device)
- proc = subprocess.Popen(["grub-install", "--recheck", "--force", "--no-floppy",
- "--root-directory=%s" % device_mountpoint, grub_device],
- stdout=file(os.devnull, "r+"))
- proc.wait()
+ for opt in ["", "--force" ]:
+ logging.debug("grub-install --recheck %s --no-floppy --root-directory=%s %s",
+ opt, device_mountpoint, grub_device)
+ proc = subprocess.Popen(["grub-install", "--recheck", opt, "--no-floppy",
+ "--root-directory=%s" % device_mountpoint, grub_device],
+ stdout=file(os.devnull, "r+"))
+ proc.wait()
+ if proc.returncode == 0:
+ break
+
if proc.returncode != 0:
# raise Exception("error executing grub-install")
logging.critical("Fatal: error executing grub-install "
if file_location is None:
logging.warn("Warning: %s not found (that's fine if you don't need it)", filename)
else:
- exec_rsync(file_location, dst + filename)
+ exec_rsync(file_location, dst)
def copy_addons(iso_mount, target):