diff --git a/pym/cl_fill_builder.py b/pym/cl_fill_builder.py index d382eb8..ee73f33 100644 --- a/pym/cl_fill_builder.py +++ b/pym/cl_fill_builder.py @@ -61,6 +61,13 @@ class fillVars(object, glob_attr): localVer = "" return "%s%s%s"%(self.Get('cl_kernel_ver'), extraVer, localVer) + def get_cl_kernel_suffix(self): + kernelFullVer = self.Get('cl_kernel_full_ver') + fullVerWithoutCalculate = kernelFullVer.replace("-calculate","") + return "%s-%s-%s"%(fullVerWithoutCalculate, + self.Get('os_arch_machine'), + self.Get('os_linux_shortname')) + def get_cl_kernel_ver(self): kernelMakefile = path.join(self.Get('cl_kernel_src_path'),'Makefile') reVerPart = re.compile( diff --git a/pym/cl_kernel.py b/pym/cl_kernel.py index f9cb99b..b156a7b 100644 --- a/pym/cl_kernel.py +++ b/pym/cl_kernel.py @@ -193,6 +193,7 @@ class cl_kernel(color_print): if oldtarget: map(os.unlink,targetLinkFiles) map(lambda x:os.symlink(path.basename(oldtarget),x),targetLinkFiles) + def _getName(self,obj): """Get names for (initramfs,initramfs-install,vmlinuz,System.map, config) after kernel compilation (installed)""" diff --git a/pym/cl_vars_builder.py b/pym/cl_vars_builder.py index 348c0af..83798fa 100644 --- a/pym/cl_vars_builder.py +++ b/pym/cl_vars_builder.py @@ -41,6 +41,9 @@ class Data: cl_kernel_config_path = {'mode':'w', 'value':'/var/lib/layman/calculate/profiles/kernel'} + # suffix of kernel + cl_kernel_suffix = {} + # kernel version cl_kernel_ver = {} diff --git a/scripts/cl-builder b/scripts/cl-builder index 58da0b7..eb0b9c3 100644 --- a/scripts/cl-builder +++ b/scripts/cl-builder @@ -203,7 +203,12 @@ update_from_builder() { waschange=1 done done - [[ -n $waschange ]] && \ + curkernellink=$(readlink /boot/vmlinuz-$(cl-kernel -v --filter cl_kernel_uid | \ + sed -nr 's/.*\[.\]\s//p')) + newkernellink=vmlinuz-$(cl-kernel -v --filter cl_kernel_suffix | \ + sed -nr 's/.*\[.\]\s//p') + + [[ "$curkernellink" != "$newkernellink" ]] && \ echo "For used the new kernel in the workspace perform 'cl-kernel --symlink'." }