Compile a new kernel

Assumed that you already learned how to compile a Linux kernel from the sources available on kernel.org, compiling a new kernel for dyne:bolic is relatively easy.

Just go ahead as usual after unpacking the sourcecode:

[d:b] ~ # make menuconfig [Enter]
The kernel configuration will be prompted, which you can adapt as desired. In case you like to start from the current running dyne:bolic kernel as a base configuration, do from inside the kernel directory:
[d:b] ~ # zcat /proc/config.gz > .config [Enter]
[d:b] ~ # make oldconfig [Enter]
In case you are compiling a more recent kernel, you'll be prompted to answer to new questions introduced by this version. After configuring your kernel you can compile it using make:
[d:b] ~ # make bzImage && make modules [Enter]

After you are done with your kernel compilation, packing a dyne:bolic kernel is done with a simple command given inside the linux source directory:

[d:b] ~ # dynesdk mkkern [Enter]
The mkkern function of dynesdk will pack the kernel and its modules inside SDK/cdrom/dyne. A compressed file containing all modules (usually sized below 20MB) will be named after the linux version with file extension .kmods. The kernel itself will also be named after the linux version (reduced to 8.3 chars for compatibility with some bootloaders) with file extension .krn.

The reason of this setup is that, having all the kernel and its modules in two files easily recognizable by their extension it becomes very easy to swap kernels in a dock: just drop the new files inside the dyne/ directory and re-configure the bootloader accordingly. Since the .krn and .kmods files are already compressed, distribution of new dyne:bolic kernels can be done as-is, just sharing the two files around.