Home
qLinux tools & utilities


qkernel

qkernel is a simple wrapper around genkernel to provide an easier way to update or recompile the kernel including initramfs. It autodetects if a kernel configuration exists and automatically calls genkernel with the required parameters. qkernel prevents to store files under  /etc/kernels  and doesn't use or touch the  config-YYYY-mm-dd-H:m:s-bak  files created by genkernel.

Usage

Simply run (refer to qkernel.8 for details):

$ qkernel [ view | save ]

Because qkernel is a wrapper around genkernel it builds the kernel which is linked to  /usr/src/linux ! qkernel doesn't touch nor change this link!

Internals

qkernel uses internal the file  .qconfig  which is simply a copy of  .config  (beware of the q). If  .qconfig  doesn't exists in  /usr/src/linux  it copies the actual  /proc/config.gz  and uses genkernel's command line option  –oldconfig . Thus a  make oldconfig  will be done. Otherwise it uses  .qconfig  for the kernel configuration. After the kernel was build successfully it updates  .qconfig  with the actual configuration. qkernel runs genkernel with the command line options  –menuconfig –no-save-config  always.

The file  .qconfig  is used to be required because qkernel executes  make mrproper  and  make clean  always - as recommended by the kernel developers.

The decision to not use  /etc/kernels  was made to not spread files over the operating system to uncommon locations and prevent possible confusion.

In case the last configuration stored by menuconfig have to be restored, do

$ cd /usr/src/linux
$ cp .oldconfig .qconfig

Beware of .qconfig and NOT .config! Alternative a config-*.bak file could be copied if necessary.

Usually it is save to delete all *.bak files if the kernel was compiled successful. Maybe this will become a subject to change to let qkernel do this.