Difference between revisions of "Upgrade Instructions/1.4-release"

From Funtoo
Jump to navigation Jump to search
(older versions of python3)
Line 25: Line 25:
==Set gfxcard mix-ins and VIDEO_CARDS==
==Set gfxcard mix-ins and VIDEO_CARDS==


In Funtoo Linux 1.4, the [[VIDEO_CARDS|{{c|VIDEO_CARDS}}]] {{c|make.conf}} setting has been updated. If you have enabled the {{c|workstation}} or {{c|desktop}} profile, then Intel integrated graphics as well as Radeon graphics will be automatically enabled. To enable NVIDIA graphics, either proprietary or Open Source, you'll want to add either the {{c|gfxcard-nvidia}} or {{c|gfxcard-nouveau}} mix-in to your profile. See [[make.conf/VIDEO_CARDS]] for more information on these changes.
In Funtoo Linux 1.4, the [[VIDEO_CARDS|{{c|VIDEO_CARDS}}]] {{c|make.conf}} setting has been updated. It is strongly recommended that you select your video hardware using Funtoo mix-ins, from the following list:
 
{{/Make.conf/VIDEO CARDS/Mix-ins}}


Another important change for NVIDIA proprietary graphics users -- a new package {{c|nvidia-kernel-modules}} is now used to install the NVIDIA kernel modules. {{c|nvidia-drivers}} will only install the userland components. To emerge both, emerge {{c|nvidia-kernel-modules}} which will in turn pull in {{c|nvidia-drivers}}. This is set up this way because it is possible to set up an NVIDIA-accelerated container (see [[LXD/GPU Acceleration]]) that needs {{c|nvidia-drivers}} but not kernel modules.
Another important change for NVIDIA proprietary graphics users -- a new package {{c|nvidia-kernel-modules}} is now used to install the NVIDIA kernel modules. {{c|nvidia-drivers}} will only install the userland components. To emerge both, emerge {{c|nvidia-kernel-modules}} which will in turn pull in {{c|nvidia-drivers}}. This is set up this way because it is possible to set up an NVIDIA-accelerated container (see [[LXD/GPU Acceleration]]) that needs {{c|nvidia-drivers}} but not kernel modules.

Revision as of 17:05, August 7, 2019

   Important

The goal of these instructions is to provide Funtoo Linux users with a reliable, consistent set of instructions for upgrading Funtoo Linux from 1.3 to 1.4. Please assist in ensuring that these instructions are complete, make changes to the page that are needed to make these instructions 100% reliable, and if the instructions seem to not work properly, please consider opening a bug at https://bugs.funtoo.org or asking for assistance at https://forums.funtoo.org or #funtoo on freenode. Thank you!

Set Release and Sync

Use your favorite editor in /etc/ego.conf, set the release to 1.4:

   /etc/ego.conf
[global]

release = 1.4

Then, run ego sync:

root # ego sync

Set gfxcard mix-ins and VIDEO_CARDS

In Funtoo Linux 1.4, the VIDEO_CARDS make.conf setting has been updated. It is strongly recommended that you select your video hardware using Funtoo mix-ins, from the following list:

Upgrade Instructions/1.4-release/Make.conf/VIDEO CARDS/Mix-ins

Another important change for NVIDIA proprietary graphics users -- a new package nvidia-kernel-modules is now used to install the NVIDIA kernel modules. nvidia-drivers will only install the userland components. To emerge both, emerge nvidia-kernel-modules which will in turn pull in nvidia-drivers. This is set up this way because it is possible to set up an NVIDIA-accelerated container (see LXD/GPU Acceleration) that needs nvidia-drivers but not kernel modules.

Here is an example of how to add a mix-in to your profile:

root # epro mix-ins +gfxcard-nvidia

=== Enabled Profiles: === 

        arch: x86-64bit
       build: current
     subarch: intel64-westmere
      flavor: desktop
     mix-ins: mediaformat-gfx-common
     mix-ins: gfxcard-nvidia

>>> Set mix-in gfxcard-nvidia.
Updating profiles at /etc/portage/make.profile/parent...

Upgrade Toolchain

Funtoo 1.4, gcc has been updated to 9.1.1 series by default, so lets take advantage of that, and also update binutils and glibc. Note that multiple versions of gcc, 9.1.1 and 7.4.1, may get pulled in in while upgrading gcc. Only 9.1.1 is needed in Funtoo 1.4, so once 9.1.1 is installed, you may cancel the emerge of older versions of gcc to save time.

root # emerge -u1 gcc
root # emerge -u1 binutils
root # binutils-config -l
root # binutils-config 3 (or whatever number corresponds to version 2.32)
root # emerge -u1 glibc

World Update

At this point, you should be all set to perform a world update:

root # emerge -auDN @world --jobs=3

Upgrade Perl

Perl has been updated to 5.28, and it is good to update this next:

root # emerge dev-lang/perl --jobs=3
root # perl-cleaner --all

Finishing Steps

The default Python interpreter in 1.4 is now 3.7, and you will want to set it to be the default python3 interpreter, remove python 3.6, and then perform a preserved-rebuild to rebuild any python modules to no longer include 3.6 support now that it is no longer installed. If other older versions of python3 (e.g., 3.4.8-r1) are installed, uninstall them by repeating this this step for dev-lang/python-3.4*. Keep the latest versions of python2 (2.7.15) and python3 (3.7.3) installed and uninstall the rest.

root # eselect python set --python3 python3.7
root # emerge -C =dev-lang/python-3.6*
root # emerge @preserved-rebuild
root # eselect python cleanup

If you are using debian-sources-lts, it has now been updated to 4.19.37_p6. Edit /etc/boot.conf as necessary and run ego boot update to ensure the new kernel is booted upon next system startup.

root # ego boot update

etc-update and Reboot

Before rebooting, it is a good idea to run etc-update to apply updates to any configuration files that require updating:

root # etc-update

Now, you should be able to reboot into Funtoo Linux 1.4:

root # reboot

Enjoy!