Supported kernel packages
genkernel
Genkernel is a kernel toolset that can be used to autodetect your
hardware and configure your kernel automatically. This is usually recommended
for users who do not feel comfortable about compiling a kernel manually.
For more information, please read the Gentoo
Linux Genkernel Guide.
General purpose: gentoo-sources
For most users, we recommend the gentoo-sources kernel. Since the
2005.0 release, Gentoo Linux uses 2.6 as the default kernel. Unless you are
specifically using the 2.4 profile, gentoo-sources will be a 2.6 kernel
on most architectures.
gentoo-sources is a kernel based on Linux 2.6, with various kernel
patches included to fix security problems, kernel bugs, and to increase
compatibility with the more uncommon system architectures. Linux 2.6 is
the current official stable kernel tree, and development is progressing
rapidly. For highest performance, best hardware support, and its large
new feature set, we recommend 2.6 over its older 2.4 counterpart.
Some of the more uncommon system architectures are not fully compatible with
Linux 2.6, and some users prefer to the tried-and-tested Linux 2.4 kernel;
for this reason we provide gentoo-sources (the 2.4 version). The
patches included in this kernel are similar to those included in its 2.6
counterpart, plus a number of patches designed to add functionality and
improve performance. Linux 2.4 is currently not being developed further - only
bug and security fixes are being included in the newer releases. If you are
able to, we suggest that you upgrade to Linux 2.6. You may find the
migration document useful.
The gentoo-sources package absorbs most of the resources of the Gentoo
kernel team. They are brought to you by a group of talented developers, which
can count on the expertise of popular kernel hacker Greg Kroah-Hartman,
maintainer of udev and responsible for the USB and PCI subsystems of the
official Linux kernel.
Plain kernels: vanilla-sources
The next kernel sources that many of you will probably be familiar with
as Linux users are the vanilla-sources. These are the official kernel
sources released on http://www.kernel.org/. Please note that we do
not patch these kernels at all - these are purely for people who wish to run
a completely unmodified Linux kernel.
Similar to gentoo-sources, two versions of the kernel can be found
under this package: 2.4 and 2.6.
Linux 2.4 is maintained by Marcelo Tosatti. Linus Torvalds, the original
creator of Linux, handed maintainership of the Linux 2.4 branch over to
Marcelo when Linus went off to start developing the newer 2.6 kernel tree.
Marcelo has done a fine job of keeping 2.4 stable and secure, and is now
only accepting security and bug fixes into the 2.4 kernel tree. Actual
development happens in the Linux 2.6 kernel tree.
Linux 2.6 is maintained by Andrew Morton, who works closely with Linus
Torvalds to deliver a fast, powerful, and feature-packed Linux kernel.
Development is happening at incredible pace and this kernel tree is now very
mature.
For servers: hardened-sources and rsbac-sources
hardened-sources is based on the official Linux kernel and is targeted
at our users running Gentoo on server systems. It provides patches for the
various subprojects of Gentoo Hardened (such as support for
LSM/SELinux and
grsecurity), together with
stability/security-enhancements. Like gentoo-sources it comes in 2.6
and 2.4 versions. Check http://www.gentoo.org/proj/en/hardened/ for
more information.
rsbac-sources contains patches to use Rule Set Based Access Controls
(RSBAC) and comes in 2.4 and 2.6
flavours. It is maintained by the RSBAC
project, a sub-project of Gentoo Hardened.
These kernels provide powerful patches for enhanced security. Please read the
documentation before you use them.
Architecture dependent kernels
alpha-sources, hppa-sources,mips-sources, sh-sources
sparc-sources and xbox-sources are, as their names suggest,
patched to run best on specific architectures. They also contain some of the
patches for hardware and features support from the other patch sets mentioned
above and below.
Unsupported kernel packages
Now I'm going to try to briefly describe some of the other
sys-kernel/*-sources which you saw scroll by when you ran
emerge -s sources. Lets take them in alphabetical order. These
kernels are provided as a courtesy only and the various patch sets are not
supported by the Gentoo team.
ck-sources
ck-sources is Con Kolivas's kernel patch set. This patchset is
primarily designed to improve system responsiveness and interactivity and is
configurable for varying workloads (from servers to desktops). The patchset is
also quite mature and has been put through numerous iterations of development
and tuning. The emphasis of each release is on stability and security. Support
and information is available at http://kernel.kolivas.org and in
#ck on irc.oftc.net.
mm-sources
The mm-sources are based on the vanilla-sources and contain
Andrew Morton's patch set. They include the experimental and bleeding-edge
features that are going to be included in the official kernel (or that are
going to be rejected because they set your box on fire). They are known to be
always moving at a fast pace and can change radically from one week to the
other; kernel hackers use them as a testing ground for new stuff.
If you really want to live on the edge and you think
vanilla-sources are for wussies, then try out
mm-sources. Be warned that this kernel is highly experimental and
doesn't always work as expected.
openmosix-sources
The openmosix-sources are patched to support the openMosix system
(like MOSIX but Open Source). For more information see
http://www.openmosix.org.
openvz-sources
OpenVZ is a server virtualization soultion built on Linux. OpenVZ creates
isolated, secure virtual private servers (VPSs) or virtual environments on a
single physical server enabling better server utilization and ensuring that
applications do not conflict. For more information, see
http://www.openvz.org
suspend2-sources
The suspend2-sources are patched with both genpatches
which includes the patches found in gentoo-sources, and Software Suspend 2 which is a new
and improved implementation of suspend-to-disk for the Linux kernel.
This kernel is recommended for laptop users who often rely on being able
to suspend their laptop and resume work elsewhere.
uclinux-sources
The uclinux-sources are meant for CPUs without MMUs as well as embedded
devices. For more information, see http://www.uclinux.org.
usermode-sources
usermode-sources are the User Mode Linux kernel patches. This
kernel is designed to allow Linux to run within Linux to run within Linux
to ... User Mode Linux is intended for testing and virtual server support.
For more information about this amazing tribute to the stability and
scalability of Linux, see http://user-mode-linux.sourceforge.net.
For more information on UML and Gentoo, read the
Gentoo UML Guide.
Previously provided kernel packages
aa-sources
aa-sources was a heavily modified kernel with all kinds of patches.
The upstream maintainer has stopped releasing kernel patchsets, this package
was removed as it went out of date.
alpha-sources
alpha-sources was a 2.4 kernel with patches applied to improve hardware
compatibility for the Alpha architecture. These patches have been developed
and included in the mainline kernel. Alpha users can now run any recent kernel
with no need for extra patches.
development-sources
development-sources, the official 2.6 kernel from kernel.org, can now
be found under the vanilla-sources package.
gentoo-dev-sources
gentoo-dev-sources, a 2.6 kernel patched with bug, security and
stability fixes, can now be found under the gentoo-sources package.
grsec-sources
The grsec-sources kernel source used to be patched with the latest
grsecurity updates (grsecurity version 2.0 and up) which included, amongst
other security-related patches, support for PaX. As grsecurity patches are
included in hardened-sources, this package is no longer in Portage.
hardened-dev-sources
hardened-dev-sources can now be found under the hardened-sources
package.
rsbac-dev-sources
The rsbac-dev-sources kernels can now be found under the
rsbac-sources package.
selinux-sources
selinux-sources, a 2.4 kernel including lots of security enhancements,
has been obsoleted by security development in the 2.6 tree. SELinux
functionality can be found in the hardened-sources package.
win4lin-sources
win4lin-sources were patched to support the userland win4lin tools
that allow Linux users to run many Microsoft Windows (TM) applications
at almost native speeds. This was removed due to security issues.