Kde4 Plasma5 Upgrade

From Funtoo
Jump to navigation Jump to search

KDE Plasma 4 development and support has ceased. KDE Plasma 4 ebuilds were removed from the Portage tree during February 2017.

This change affects Funtoo Linux.

Plasma 4 was the graphical environment that formed part of the former KDE SC 4 (KDE Software Compilation 4). Plasma 5 is the current graphical environment offered by KDE. Many of the KDE Applications available under KDE SC 4 continue to be available under Plasma 5.

The purpose of this page is to detail the steps required to migrate Funtoo Linux from KDE SC 4 (Plasma 4) to KDE Plasma 5 and KDE Applications. Given incompatibilities between Plasma 4 and Plasma 5 packages, Users undertaking this process are likely to encounter one or more blockers. Users are encouraged to seek assistance in the #funtoo IRC channel on Freenode.


Update Funtoo Profiles

Changes to Funtoo mix-in Profiles are required for KDE Plasma 5. Review the selected profiles using epro.

root # epro show

=== Enabled Profiles: ===

        arch: x86-64bit
       build: current
     subarch: intel64-haswell
      flavor: desktop
     mix-ins: kde

There are two KDE-related mix-ins available in Funtoo: kde and kde-plasma-5. To migrate to KDE Plasma 5, users must remove the kde mix-in and add the kde-plasma-5 mix-in.

DO NOT combine kde and kde-plasma-5 at the same time - they are incompatible.

root # epro mix-in -kde +kde-plasma-5

=== Enabled Profiles: ===

        arch: x86-64bit
       build: current
     subarch: intel64-haswell
      flavor: desktop
     mix-ins: kde-plasma-5

>>> Removed kde mix-in.
>>> Added kde-plasma-5 mix-in.

Review USE Flags

To achieve clean update it is necessary to review /etc/portage/package.use, /etc/portage/make.conf for a kde sc4 specific USE's. Having this USE flags enabled globally or per package base may clash with default kde-plasma-5 mix-ins settings and may result in certain difficulties with update, such as ebuild blocks.

Following command will scan your /etc/portage/make.conf

root # grep -e "qt[[:digit:]]" -e "handbook" -e "kde" -e "plasma" /etc/portage/make.conf

It is necessary to review these USE's, if set. Next commands will scan your /etc/portage/package.use

root # grep -e "qt[[:digit:]]$" -e "qt[[:digit:]] " -e "handbook$" -e "handbook " -R /etc/portage/package.use
root # grep -e "kde$" -e "kde " -e "plasma$" -e "plasma " -R /etc/portage/package.use

Like above it's needed to review USEs, if set.

Cleaning world

When explicitly installed and recorded into /var/lib/portage/world KDE SC 4 ebuilds can block updates to Plasma 5. To examine presence of such ebuilds in world file, please try following command

root # for x in libkscreen kde-gtk-config ksshaskpass freespacenotifier kcheckpass kcminit kdebase-cursors kdebase-startkde kdm kephal khotkeys kinfocenter klipper kmenuedit krunner kscreensaver ksmserver ksplash kstartupconfig kstyles ksysguard ksystraycmd kwin kwrited libkgreeter libkworkspace liboxygenstyle libplasmaclock libplasmagenericshell libtaskmanager plasma-workspace powerdevil qguiplatformplugin_kde solid-actions-kcm systemsettings; do equery -q d ${x} | sed -e "s/-[0-9].*//"; done | sed -e "/kdebase-meta/g" -e "/kde-meta/g" | xargs emerge --deselect --pretend

When reviewed, this command can be performed without --pretend to clean world. Now it's time for update

root # emerge -auvDN --with-bdeps=y @world

Emerge KDE Plasma 5 and KDE Applications

As everyone used to install KDE SC4 by their choices, Plasma 5 also modular and differs from bare minimal installation to more feature rich desktop. kde-plasma/plasma-meta is a package name for a complete desktop. In turn, if decided to install only minimal basic installation, kde-plasma/plasma-dekstop is your choice:

root # emerge -av  kde-plasma/plasma-meta

or

root # emerge -av  kde-plasma/plasma-desktop

Configure and Start Plasma 5

Detailed information about plasma 5 installation and configuration can be found in http://www.funtoo.org/KDE_Plasma_5

kwallet4 to kwallet5 migration

KWallet 5 will have to open your wallet from KWallet 4 and import all the data into a new wallet. For that purpose, kde-apps/kwalletd needs to be present at least once in a session after upgrade, but is still required for any KDE4-based application that might be using it. Run kde-apps/kwalletmanager to check which applications have been accessing it in the past. If it is clear that no legacy package is using it anymore, it can be removed after migration.

root # echo "kde-apps/kdebase-runtime-meta -oldwallet" >> /etc/portage/package.use
root # emerge --ask --oneshot kde-apps/kdebase-runtime-meta && emerge -C kde-apps/kwalletd

If you haven't ever used KWallet in KDE4, you also installed alternative kde-plasma/plasma-desktop package (so, you do not have kcmshell5's kwalletconfig5 module to configure it) and do not want to see KWallet popups at all then you should add the following strings into ~/.config/kwalletrc to disable the KWallet subsystem:

   ~/.config/kwalletrc - An example kwallet config
[Wallet]
Enabled=false

Troubleshooting and Further Reading

Gentoo Linux KDE Plasma 5 Upgrade