|
|
|
@ -114,7 +114,7 @@ class AutoPartition:
|
|
|
|
|
"""
|
|
|
|
|
NEW_PARTITION_TABLE = "o\ny\n"
|
|
|
|
|
NEW_PARTITION = "n\n\n\n"
|
|
|
|
|
NEW_BIOSBOOT_PARTITION = "n\n\n\n+2M\nef02\n"
|
|
|
|
|
NEW_BIOSBOOT_PARTITION = "n\n\n\n%s\nef02\n"
|
|
|
|
|
MAX_SIZE = "\n\n"
|
|
|
|
|
WRITE_AND_QUIT = "w\ny\n"
|
|
|
|
|
|
|
|
|
@ -125,16 +125,26 @@ class AutoPartition:
|
|
|
|
|
rootsize=rootsize,
|
|
|
|
|
allsize="allsize")
|
|
|
|
|
num = 1
|
|
|
|
|
biosBootCreated = False
|
|
|
|
|
for entry in scheme.split(';'):
|
|
|
|
|
size,mount = entry.split(':')
|
|
|
|
|
if size.startswith('/'):
|
|
|
|
|
continue
|
|
|
|
|
if num == 4:
|
|
|
|
|
fdisk.write(NEW_BIOSBOOT_PARTITION)
|
|
|
|
|
fdisk.write(NEW_BIOSBOOT_PARTITION%"+2M")
|
|
|
|
|
biosBootCreated = True
|
|
|
|
|
num += 1
|
|
|
|
|
size = MAX_SIZE if size == "allsize" else "+%sK\n\n"%size
|
|
|
|
|
if size == "allsize":
|
|
|
|
|
if biosBootCreated:
|
|
|
|
|
size = MAX_SIZE
|
|
|
|
|
else:
|
|
|
|
|
size = "-2M\n\n"
|
|
|
|
|
else:
|
|
|
|
|
size = "+%sK\n\n"%size
|
|
|
|
|
fdisk.write(NEW_PARTITION+size)
|
|
|
|
|
num +=1
|
|
|
|
|
if not biosBootCreated:
|
|
|
|
|
fdisk.write(NEW_BIOSBOOT_PARTITION%"")
|
|
|
|
|
fdisk.write(WRITE_AND_QUIT)
|
|
|
|
|
fdisk.success()
|
|
|
|
|
for waittime in (0.1,0.2,0.5,1,2,4):
|
|
|
|
|