Note

The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.

Difference between revisions of "Test"

From Funtoo
Jump to navigation Jump to search
Line 38: Line 38:
One of the goals of Funtoo Linux is to provide a
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
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. {{c|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.
updates related to system stability that other kernels may not always receive. {{c|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 kernels that you personally prefer, and in an ideal world, we would maintain our own Funtoo kernel and kernel configuration
There may be kernels that you personally prefer, and in an ideal world, we would maintain our own Funtoo kernel and kernel configuration

Revision as of 05:19, November 16, 2021

Test edit. Another test edit. A discord test.

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.

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 has good support 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 rather 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 independence of Linux distributions to be 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 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, 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 kernels that you personally prefer, 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

   GNOME - Grade 'A'
GNOME is supported in Funtoo Linux when using our official gnome mix-in our using our official stage3 builds.
   Cinnamon - Grade 'A'
Cinnamon is supported in Funtoo Linux when using our official cinnamon mix-in our using our official stage3 builds.
   MATE - Grade 'A'
MATE is supported in Funtoo Linux when using our official mate mix-in our using our official stage3 builds.
   KDE - Grade 'B'
KDE in Funtoo Linux when using our official kde mix-in. We do not yet have a stage3 build so no regular build testing is performed.
   {{{title}}}
{{{body}}}
   {{{title}}}
{{{body}}}
   {{{title}}}
{{{body}}}
   Grab me from DockerHub!
This stage3 can be deployed in Docker via docker run funtoo/stage3-intel64-skylake
root ##g##drobbins@ryzen##!g## ~ $ ssh -i ~/Downloads/drobbins-funtoo-us-east-1.pem ec2-user@54.152.74.161
The authenticity of host '54.152.74.161 (54.152.74.161)' can't be established.
ECDSA key fingerprint is SHA256:06VxabD5Gom5FRzpg7jZrBWro+TJkZBFa2+29WTSII4.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '54.152.74.161' (ECDSA) to the list of known hosts.

 // Welcome to Funtoo Linux for Amazon EC2! This image has been optimized 
 // for the best possible performance by taking advantage of all CPU    
 // instruction sets offered by Amazon Web Services.

 >>> Release:                       Funtoo Linux 1.2-release-ec2
 >>> Version:                       17-Nov-2018
 >>> Subarch:                       intel64-haswell
 >>> Created by:                    Daniel Robbins <drobbins@funtoo.org>
 >>> Open Source Community:         Funtoo Linux (https://www.funtoo.org)
 >>> Commercial Support:            BreezyOps (https://breezyops.com)
 >>> Bug reports:                   https://bugs.funtoo.org
 >>> Support email:                 support@funtoo.org

 NOTE: This message can be removed by deleting /etc/motd.

root ##g##ec2-user@ip-172-31-22-215##!g## ~ $ sudo su
root ##r##ip-172-31-22-215##!r## /home/ec2-user # ego sync
    (python source code) - python test
def fib(n):
    a, b = 0, 1
    while a < n:
        print(a, end=' ')
        a, b = b, a+b
    print()
fib(1000)