diff --git a/i18n/cl_builder_ru.mo b/i18n/cl_builder_ru.mo index c58ed19..87944a9 100644 Binary files a/i18n/cl_builder_ru.mo and b/i18n/cl_builder_ru.mo differ diff --git a/pym/cl_builder.py b/pym/cl_builder.py index 7e3cec2..75bd391 100644 --- a/pym/cl_builder.py +++ b/pym/cl_builder.py @@ -319,7 +319,9 @@ class cl_builder(color_print): + " (yes/no)" dialogRes = dialogYesNo(dialogMessage) if dialogRes in (None,False): - return True + self.assembleIso = False + self.printERROR(_("Interrupting the image creating")) + return False self.printMessageForTest(_("Prepare data for live image")) self.prepareSourceDistributive(self.sourceDistr) self.printByResult(True) @@ -488,6 +490,7 @@ class cl_builder(color_print): var = 'os_assemble_arch_machine' march = \ _toUNICODE(envData.getVar(section,var)).encode('utf-8') + shortname = shortname.upper() if shortname: self.clVars.Set('os_builder_linux_shortname',shortname,True) if march: diff --git a/pym/cl_fill_builder.py b/pym/cl_fill_builder.py index da18a7e..320cd96 100644 --- a/pym/cl_fill_builder.py +++ b/pym/cl_fill_builder.py @@ -68,6 +68,19 @@ class fillVars(object, varsShare): localVer = "" return "%s%s%s"%(self.Get('cl_kernel_ver'), extraVer, localVer) + def get_cl_builder_kernel_suffix(self): + kernelname = self.Get('cl_builder_kernel') + reShortname = re.compile( + r"^vmlinuz-((?:\d+\.)*\d)-(x86_64|i686)-(.*)$",re.S) + res = reShortname.search(kernelname) + bootPath = path.join(self.Get('cl_builder_path'),'boot') + if res: + return "%s-%s-%s"%(res.groups()[0], + self.Get('os_builder_arch_machine'), + self.Get('os_builder_linux_shortname')) + return "" + + def get_cl_kernel_suffix(self): kernelFullVer = self.Get('cl_kernel_full_ver') fullVerWithoutCalculate = kernelFullVer.replace("-calculate","") @@ -170,12 +183,56 @@ class fillVars(object, varsShare): return "" def get_cl_builder_initrd_install(self): - return self.getInitrd(self.Get('os_builder_arch_machine'), - self.Get('os_builder_linux_shortname'), + kernelname = self.Get('cl_builder_kernel') + reShortname = re.compile( + r"^vmlinuz-(\d+\.)*\d-(x86_64|i686)-(.*)$",re.S) + res = reShortname.search(kernelname) + if res: + shortname = res.groups()[2] + archmachine = res.groups()[1] + else: + shortname = self.Get('os_builder_linux_shortname') + archmachine = self.Get('os_builder_arch_machine') + return self.getInitrd(archmachine, + shortname, self.Get('cl_builder_path'), - self.Get('cl_builder_kernel'), + kernelname, suffix="install") or "" + def get_cl_builder_kernel_config(self): + kernelname = self.Get('cl_builder_kernel') + reShortname = re.compile( + r"^vmlinuz-((?:\d+\.)*\d)-(x86_64|i686)-(.*)$",re.S) + res = reShortname.search(kernelname) + bootPath = path.join(self.Get('cl_builder_path'),'boot') + if res: + kernelconfig = "config-%s-%s-%s"%(res.groups()[:3]) + if path.exists(path.join(bootPath,kernelconfig)): + return kernelconfig + else: + configs = filter(lambda x:x.startswith('config'), + os.listdir(bootPath)) + if configs: + return configs[0] + return "" + + def get_cl_builder_kernel_systemmap(self): + kernelname = self.Get('cl_builder_kernel') + reShortname = re.compile( + r"^vmlinuz-((?:\d+\.)*\d)-(x86_64|i686)-(.*)$",re.S) + res = reShortname.search(kernelname) + bootPath = path.join(self.Get('cl_builder_path'),'boot') + if res: + systemmap = "System.map-%s-%s-%s"%(res.groups()[:3]) + if path.exists(path.join(bootPath,systemmap)): + return systemmap + else: + systemmaps = filter(lambda x:x.startswith('System.map'), + os.listdir(bootPath)) + if systemmaps: + return systemmaps[0] + return "" + def get_os_builder_linux_name(self): """Build system name""" linuxShortName = self.Get("os_builder_linux_shortname") diff --git a/pym/cl_vars_builder.py b/pym/cl_vars_builder.py index 4556945..eff1db4 100644 --- a/pym/cl_vars_builder.py +++ b/pym/cl_vars_builder.py @@ -88,6 +88,15 @@ class Data: # initramfs image cl_builder_initrd_install = {} + # kernel config name + cl_builder_kernel_config = {} + + # kernel system.map + cl_builder_kernel_systemmap = {} + + # kernel suffix for builder + cl_builder_kernel_suffix = {} + # build system name os_builder_linux_name = {}