Support Matrix

From Funtoo
Revision as of 19:33, November 22, 2021 by Drobbins (talk | contribs) (typo)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Other languages:
English • ‎español • ‎português do Brasil • ‎русский

This page documents the various technologies that are and are not supported in Funtoo Linux.

Each technology is assigned a grade level -- A, B or C -- or marked as officially not supported. We do take these grade levels seriously, and an "A" grade indicates a technology in Funtoo that receives great care to ensure ongoing, predictable functionality and a consistent experience for our users.

We Are All Users

Who makes these decisions? Generally, the BDFL curates the overall project goals and also decides what we can say we officially support based on the community testing and usage each part receives. But our users are the core community of Funtoo, and we don't have a separate set of developers. We are all users, and even the BDFL considers himself to be a user of Funtoo, first and foremost. And if you are in our user community, you have the ability to contribute, or 'put on your developer hat'.

So please understand that there is not a separate development team creating Funtoo for you based on a roadmap. We, the users -- those of use who choose to be part of the 'pack' -- are the team. You are included in this process if you choose, simply by the fact that you use Funtoo. This means there is an opportunity for you to have a voice, but you have to choose to be involved. You are encouraged to 'howl' on the bug tracker to express your needs and desires in relationship to Funtoo. You will have an opportunity to grow in your knowledge and contribute to the project. See Wolf Pack Philosophy for more information on how our community works. You will also notice some Funtoo bugs referenced below, which can be used as starting points to get involved and improving certain areas of Funtoo.

Releases

Funtoo Linux has the concept of releases, and our official release is 1.4-release. Our install documents assume you are installing this release, and all our stages are built using this release. We attempt (as hard as we can) to not break anything in 1.4-release and to keep this release suitable for production systems, both stable desktop and server deployments.

We also have another release of Funtoo, called next. This release is more experimental, is not officially supported for production, and is intended for active development and support of new architectures. We may introduce disruptive changes into next at any time, and if you use next, you are signing up for potentially having these changes negatively impact your system.

   1.4-release - Grade 'A'
This is our official release of Funtoo Linux and is suitable for production systems.
   next - Grade 'C'
next is experimental and is not guaranteed to remain stable.

Architectures

x86-64bit is used by the overwhelming majority of Funtoo Linux users, and most of our stage3 builds are for this architecture. Thus, it is the best supported architecture. Our x86-64bit builds are pure 64-bit, and do not include multilib support. We include pre-built debian-sources kernels in our stage3's for this architecture to improve ease of installation and maximize hardware compatibility.

We also have official builds for arm-32bit, arm-64bit and soon riscv-64bit. These architectures are functioning but are more challenging to install as they do not include our official pre-built kernel and may require board-specific setup. In general, the steps documented in The Installation Guide apply, except the part on boot loader, configuring GRUB, etc.

   x86-64bit - Grade 'A'
Fully-optimized stages, both standard and with desktop environments, are available for a variety of x86-64bit subarches, and include pre-built kernels. 90%+ of users are using this architecture.
   x86-32bit - Grade 'B'
While x86-32bit is still supported and some stages built, just basic stages are supplied. These stages are less-frequently tested, and used sparingly by our community.
   arm-32bit - Grade 'B'
arm-32bit is fully supported in Funtoo Linux, but requires some board-specific setup.
   arm-64bit - Grade 'B'
arm-64bit is fully supported in Funtoo Linux, but requires some board-specific setup.
   riscv-64bit - Grade 'B'
riscv-64bit support is fairly mature in Funtoo Linux. Currently, packages related to desktop environments are being worked on. Core system should be solid.

Init System

OpenRC is the official init system of Funtoo Linux, and we explicitly do not support SystemD. Why? For a lot of reasons. We believe that an operating system's init system is one of its distinctive characteristics, and is something we care about. Gentoo used to be a leader in this area, with the first dependency-based init system being created in the early 2000's. Later, this init system was ported to C and became what is now known as OpenRC. We would rather support OpenRC going forward and look at other interesting possibilities than moving in lock-step with SystemD. We believe that the initial startup process is an area where innovation and independence is important.

SystemD has been a contentious topic in the Open Source community, and the issues with SystemD are not purely technical. They are also related to the very aggressive and coercive promotion of SystemD as being the one init system for all Linux distributions. As SystemD absorbs more and more functionality, such as device management, power management, control of your laptop's backlight, and other low-level functions, it becomes more and more embedded in the foundation of the Linux userspace stack, and distributions become more beholden to upstream SystemD changes and future 'acquisitions' of functionality. This erodes the ability of Linux distributions -- and thus Linux users --- of being in control of the low-level technologies used for various aspects of Linux. We believe it's in the best interests of the Linux community to encourage diversity and innovation in this space. We want the larger Gentoo ecosystem -- as well as Funtoo -- to support innovation, not uniformity.

   OpenRC - Grade 'A'
OpenRC is the official init system of Funtoo Linux and is fully supported in all builds.
   systemd -- Not Supported

Systemd is not supported in Funtoo Linux. This is a technical decision and we will not be adding systemd support to Funtoo.

Kernels

In Funtoo Linux x86-64bit, debian-sources is our official kernel, with debian-sources-lts also fully supported. Why Debian?

One of the goals of Funtoo Linux is to provide a system that is ready for use in a production server environment. Debian-sources is used by many people, and thus receives updates related to system stability that other kernels may not always receive. debian-sources-lts is akin to using a RHEL kernel, but is more current. It also allows us to use Debian's kernel configurations, which are maintained for us by the Debian project, and enable all hardware as kernel modules. This allows us to pre-build a kernel that works for everyone, which greatly reduces the complexity of a Funtoo install, without having to perform the tremendous amount of work of maintaining our own kernel. For kernels, there is strength in numbers. The more people that are using the kernel, the more issues are found, and the more problems are fixed. In the past, Funtoo has even offered Red Hat Enterprise Linux kernels, though this was primarily done because we were using OpenVZ containers in production and this was the only supported kernel for OpenVZ.

There may be a kernel that you personally prefer over Debian's kernel, and in an ideal world we would maintain our own Funtoo kernel and kernel configuration for you. But at this time, debian-sources happens to be an excellent general-purpose kernel for nearly all users, both desktop and server, and the more advanced users are free to use whatever kernel they prefer, but then take responsibility for dealing with any issues related to that choice.

   debian-sources - Grade 'A'
debian-sources is the official kernel in Funtoo Linux, and is included on stage3's for x86-32bit and x86-64bit architectures.
   debian-sources-lts - Grade 'A'
debian-sources-lts is an alternate kernel that is fully supported and is often used in production server environments.
   gentoo-sources -- Not Supported

gentoo-sources is not officially supported in Funtoo Linux but may be used by advanced users. If you are experiencing possible kernel problems, we will ask you to switch to debian-sources for troubleshooting purposes, since this eliminates kernel variation as a source of potential problems.

Desktop Environments

Multiple desktop environments are supported in Funtoo Linux, with the most well-supported of these being GNOME. This is primarily due to Daniel Robbins using GNOME as his primary desktop environment, so it is always continually tested, and it also has its own official stage3 build. If you are starting out with Funtoo, a pre-built GNOME desktop environment, installed via a pre-built GNOME stage3 is highly recommended as a starting point, even if it may not be your favorite.

Other environments, such as Cinnamon and MATE, are also supported but get somewhat less testing, although they all get built regularly. These environments rely on community testing and bug reports.

KDE has historically not gotten as much attention, although that is changing, and it is likely that we will be offering an official KDE build of Funtoo quite soon. At that point, it will likely quickly move to a 'grade A' level of support.

   GNOME - Grade 'A'
GNOME is supported in Funtoo Linux when using our official gnome mix-in or using our official stage3 builds.
   Cinnamon - Grade 'B'
Cinnamon is supported in Funtoo Linux when using our official cinnamon mix-in in combination with the desktop profile flavor, or using our official stage3 builds.
   MATE - Grade 'B'
MATE is supported in Funtoo Linux when using our official mate mix-in in combination with the desktop profile flavor, or using our official stage3 builds.
   LXQt - Grade 'B'
LXQt is supported in Funtoo Linux when using our official lxqt mix-in in combination with the desktop profile flavor. We do not have an official stage3 for it.
   XFCE - Grade 'B'
XFCE is supported in Funtoo Linux when using our official xfce mix-in in combination with the desktop profile flavor. We do not have an official stage3 for it.
   Enlightenment - Grade 'B'
Enlightenment is supported in Funtoo Linux when using our desktop profile. We do not have an official stage3 for it.
   KDE - Grade 'C'
KDE can be used in Funtoo Linux when using our official kde mix-in. Support is 'in progress' as it currently pulls in wayland which is not yet supported. We do not yet have a stage3 build so no regular build testing is performed. Follow FL-8510 for status on this.

Display Technologies

Xorg is our official display technology for desktop environments. There is some possibility of adding Wayland support if there is sufficient community support for maintenance and testing.

   X11 - Grade 'A'
X11 (aka Xorg) is the officially-supported display technology in Funtoo Linux.
   Wayland -- Not Supported

Wayland is not currently officially supported in Funtoo Linux. This may change at some point as more users are available to test and maintain it. Discussion related to this can happen in FL-9073.