@ -1976,12 +1976,13 @@ class VariableOsInstallUefi(LocationHelper, Variable):
return self . select ( ' os_device_efi ' ,
return self . select ( ' os_device_efi ' ,
os_device_dev = efidev , limit = 1 ) or efidev
os_device_dev = efidev , limit = 1 ) or efidev
return efidev
return efidev
return map( transform , value )
return filter( lambda x : x != " off " , map( transform , value ) )
def choice ( self ) :
def choice ( self ) :
deviceParentMap = self . ZipVars ( ' os_device_efi ' , ' os_device_name ' )
deviceParentMap = self . ZipVars ( ' os_device_dev ' ,
return [ ( efidisk , name or _ ( " Unknown " ) )
' os_device_efi ' , ' os_device_name ' )
for efidisk , name in deviceParentMap
return [ ( efidisk , " %s ( %s ) " % ( name or _ ( " Unknown " ) , dev ) )
for dev , efidisk , name in deviceParentMap
if efidisk ]
if efidisk ]
def check ( self , value ) :
def check ( self , value ) :
@ -2045,12 +2046,12 @@ class VariableOsInstallMbr(LocationHelper, Variable):
"""
"""
Disks for boot mbr
Disks for boot mbr
"""
"""
type = " choice -list"
type = " choice edit -list"
element = " selecttable "
element = " selecttable "
opt = [ " --mbr " ]
opt = [ " --mbr " ]
metavalue = " MBR "
metavalue = " MBR "
untrusted = True
untrusted = True
check_after = [ " os_install_uefi _set " ]
check_after = [ " os_install_uefi " ]
def init ( self ) :
def init ( self ) :
self . label = _ ( " Boot disk " )
self . label = _ ( " Boot disk " )
@ -2082,7 +2083,7 @@ class VariableOsInstallMbr(LocationHelper, Variable):
def choice ( self ) :
def choice ( self ) :
deviceParentMap = self . ZipVars ( ' os_device_mbr ' , ' os_device_name ' )
deviceParentMap = self . ZipVars ( ' os_device_mbr ' , ' os_device_name ' )
return [ ( mbrdisk , name or _ ( " Unknown " ) )
return [ ( mbrdisk , " %s ( %s ) " % ( name or _ ( " Unknown " ) , mbrdisk ) )
for mbrdisk , name in deviceParentMap
for mbrdisk , name in deviceParentMap
if mbrdisk ]
if mbrdisk ]
@ -2091,15 +2092,15 @@ class VariableOsInstallMbr(LocationHelper, Variable):
return filter ( lambda x : x != " off " , value )
return filter ( lambda x : x != " off " , value )
def check ( self , value ) :
def check ( self , value ) :
if self . Get ( ' cl_autopartition_set ' ) == " on " :
if self . Get Bool ( ' cl_autopartition_set ' ) :
return
return
rootType = self . Get ( ' os_install_root_type ' )
rootType = self . Get ( ' os_install_root_type ' )
if rootType == " flash " :
if rootType == " flash " :
if len ( value ) > 1 :
if len ( value ) > 1 :
raise VariableError (
raise VariableError (
_ ( " For Flash install, you need only one disk " ) )
_ ( " For Flash install, you need only one disk " ) )
if self . Get ( ' os_install_uefi_set ' ) == ' on ' :
if value and self . Get ( ' os_install_uefi_set ' ) == " on " :
r eturn
r aise VariableError ( _ ( " MBR is not used with the UEFI bootloader " ) )
useBtrfs = " btrfs " in self . Select ( ' os_install_disk_format ' ,
useBtrfs = " btrfs " in self . Select ( ' os_install_disk_format ' ,
where = ' os_install_disk_mount ' ,
where = ' os_install_disk_mount ' ,
_in = ( ' / ' , ' /boot ' ) ,
_in = ( ' / ' , ' /boot ' ) ,
@ -2143,6 +2144,10 @@ class VariableOsInstallMbr(LocationHelper, Variable):
_ ( " Your boot device must have a BIOS Boot "
_ ( " Your boot device must have a BIOS Boot "
" partition ( {minsize} ) " ) . format (
" partition ( {minsize} ) " ) . format (
minsize = minsize ) )
minsize = minsize ) )
if mbrDisk not in self . Get ( ' os_device_mbr ' ) :
raise VariableError (
_ ( " Device {device} has not BIOS Boot partition " ) . format (
device = mbrDisk ) )
if value :
if value :
if not self . Get ( ' os_grub2_path ' ) :
if not self . Get ( ' os_grub2_path ' ) :
self . checkForLegacyGrub ( )
self . checkForLegacyGrub ( )
@ -2169,8 +2174,6 @@ class VariableOsInstallMbr(LocationHelper, Variable):
"""
"""
Опция несовместима с использованием UEFI
Опция несовместима с использованием UEFI
"""
"""
if self . Get ( ' os_install_uefi_set ' ) == " on " and self . Get ( ) :
return _ ( " MBR is not used with the UEFI bootloader " )
if self . Get ( ' cl_autopartition_set ' ) == " on " :
if self . Get ( ' cl_autopartition_set ' ) == " on " :
return \
return \
_ ( " The layout is not available with autopartitioning " )
_ ( " The layout is not available with autopartitioning " )