Frequently Asked Question

Should I compile my own kernel? When is it worth it?

For 99% of users the distribution kernel is the right choice: it's tested, it comes with security updates, and it's compiled with sane defaults for the kinds of hardware most people have. You almost never gain measurable performance from a custom build.

Rolling your own makes sense in a few cases: you need a feature or driver that isn't in your distribution kernel (you're running newer hardware than the kernel knows about); you're doing kernel development and need to test patches; you're building an embedded image and want to strip every unused driver to shrink boot time and footprint. The workflow is roughly: git clone the kernel, make defconfig, make menuconfig to choose options, make -j$(nproc), make modules_install install, and add a bootloader entry.

Further reading and video