The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Difference between revisions of "Release Notes/1.4-release"
Line 1: | Line 1: | ||
{{DISPLAYTITLE:Funtoo Linux 1.4 Release Notes}} | {{DISPLAYTITLE:Funtoo Linux 1.4 Release Notes}} | ||
== Upgrading == | == Upgrading == |
Latest revision as of 17:28, September 11, 2019
Upgrading
Upgrading to Funtoo Linux 1.4 from 1.3 should be relatively painless. If upgrading to from 1.2, first follow the Funtoo Linux 1.3 upgrade instructions.
Gentoo Snapshot
The kits in meta-repo are based on a 21 June 2019 snapshot of Gentoo Linux with significant updates to key parts of the system, such as compiler and OpenGL subsystem. Like Funtoo Linux 1.3, all kits are mostly frozen, with security fixes being back-ported, and a select number of important and user-requested updates added after the official release. The goal is to provide a reliable yet capable system that is responsive to the needs of our users. This is a delicate balancing act :) Also please note that Funtoo Linux 1.4 is not a "long-term stable" (LTS) release.
GNOME 3.32
Funtoo Linux 1.4 now offers a well-tested GNOME 3.32 desktop that can be merged as easily as doing:
root # epro flavor desktop root # epro mix-in +gnome root # emerge -auDN @world xorg-x11 gnome
New Compiler Toolchain
Funtoo Linux 1.4 features a new compiler toolchain based upon gcc-9.2.0.
New OpenGL Subsystem
Funtoo Linux 1.4 also features an improved OpenGL subsystem, which is made up of many components but a few are worth noting and exploring in further detail:
- libglvnd
- new nvidia-drivers
- mesa 19.1 and vulkan support
- Container CUDA/OpenCL/GPU acceleration
Libglvnd
Here is what every user should know about libglvnd
: it is enabled by default under Funtoo Linux 1.4 and if you set up a graphical environment under Funtoo, it will get emerged automatically and provide the official libGL.so
library that OpenGL-using applications will use. When you type eselect opengl list
, your current OpenGL implementation will be listed as xorg-x11
even if you are using NVIDIA or other drivers. This is normal and it is no longer necessary to use eselect opengl
to swap-out OpenGL implementations the old-fashioned way. libglvnd
takes care of all of this for you.
Here is a bit more detail on libglvnd
for those who want to know more details:
libglvnd
is described by maintainer NVIDIA as a vendor-neutral dispatch layer for arbitrating OpenGL API calls between multiple vendors. It allows multiple drivers from different vendors to coexist on the same filesystem, and determines which vendor to dispatch each API call to at runtime. That is a mouth-full, but basically what libglvnd
offers is a solution to the "one OpenGL library for each type of video card" problem that has existed in Linux for over a decade. Gentoo Linux and Funtoo Linux have handled this problem with the creation of eselect opengl
, which has allowed Gentoo and Funtoo users to
control what vendor's libGL.so
is currently active.
libglvnd
does something similar, but uses an arguably better and lower-level solution of providing a "universal" libGL.so
which is installed in /usr/lib
, and is smart enough to determine what OpenGL implementations are available and functioning on the system and using the right one automatically. This means that distributions no longer need to carefully manage symbolic links to libGL.so
implementations and other important bits and can instead simply use the libGL.so
installed by libglvnd
and let it take care of the magic behind the scenes.
Initial testing hasn't demonstrated any detectable negative performance impact from the use of libglvnd
.
New nvidia-drivers
New nvidia-drivers
ebuilds have been added to Funtoo Linux -- these are completely new ebuilds that differ from Gentoo Linux. They have a separate ebuild, nvidia-kernel-modules
, which is responsible for installing the kernel modules themselves. If you are installing NVIDIA drivers on your personal system, please emerge nvidia-kernel-modules
to install both nvidia-drivers
and nvidia-kernel-modules
, as the latter DEPEND
s on the former. But if you need to set up NVIDIA drivers in a containerized environment, emerge nvidia-drivers
, which will install just the userspace GL bits and does not depend on the kernel modules. This is necessary when setting up an NVIDIA-accelerated lxd container, for example.
New Mesa 19.1.4 ebuild
Funtoo features a new mesa-19.1.4
ebuild. This ebuild offers support for vulkan on systems that support it. In addition, as of 28 Jul 2019, our beta now offers totally revamped VIDEO_CARDS
support -- see Make.conf/VIDEO_CARDS and this forums post for more information.
Container Technologies
- LXC 3.0.4 and LXD 3.14 (most recent upstream stable releases) has been added along with official Funtoo Documentation.
- The necessary ebuilds have been created to support GPU acceleration within both Docker and LXD containers, allowing users to run OpenGL applications inside containers, among other things.
Programming Languages
Along with the addition of gcc-9.1.1
come a host of improvements to our language offerings, some of which are listed below:
- The official version of python3 now supported is
python-3.7.3
, which includes the addition of python-3.7 compatibility to quite a few ebuilds. - The latest upstream versions of python are now included (3.7.3 as well as 2.7.15).
- Ruby has been upgraded to version 2.6.
- Perl has been raised to version 5.28.
- Go has been updated to 1.12.6.
- Google's Dart 2.3.2 (with 2.4.0 coming soon) has been added as
dev-lang/dart
. (Funtoo exclusive). This is a very nice language that has its own compiler as well as a Javascript translator, and is the basis for Google's Flutter. - Oracle's Java Runtime environment and development kit has been updated to 1.8.0.202.
Core-Server Kit Improvements
www-servers/nginx
updated to 1.17.0.net-libs/nodejs
updated to 8.16.0.- Oracle's MySQL Community (Funtoo exclusive) updated to 8.0.16, and documentation updated to be more correct.
Contributors
TODO