Difference between revisions of "Kde4 Plasma5 Upgrade"

From Funtoo
Jump to navigation Jump to search
m (intro text)
m
 
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''KDE SC 4''' (KDE Software Compilation 4) is a collection of software developed by the [https://www.kde.org KDE Community]. KDE SC 4 includes the Plasma [https://en.wikipedia.org/wiki/Desktop_environment desktop environment] (Plasma 4), a number of tightly integrated Applications, and a common platform of libraries and services. KDE SC 4 is based on the [https://en.wikipedia.org/wiki/Qt_%28software%29 Qt] framework.  
'''KDE Plasma 4 development and support has ceased. KDE Plasma 4 ebuilds were removed from the Portage tree during February 2017'''.


KDE Plasma 4 was released in 2008 [https://www.kde.org/announcements/4.0/] and development ceased in 2015 [https://www.kde.org/announcements/announce-applications-15.08.0.php]. Some packages within KDE SC 4 continue to receive updates and bugfixes. Plasma 4 was succeeded by Plasma 5 in 2014 [https://www.kde.org/announcements/plasma5.0/].
'''This change affects Funtoo Linux'''.


Funtoo Linux continues to offer KDE SC 4.
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 aim of this guide is to detail the steps required to complete a default installation of the KDE Software Compilation 4 (KDE SC 4) on x86 architectures. It assumes the initial completion of the [[Install]] guide.'''
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.
 
To install KDE Plasma 5 instead see the page [[KDE Plasma 5]].


__TOC__
__TOC__


== Pre-Installation ==
== Update Funtoo Profiles ==
The following instructions are written for a new installation of Funtoo Linux performed using the [[Install]] guide.
Changes to Funtoo [[Funtoo_Profiles#Mix-ins|mix-in]] Profiles are required for KDE Plasma 5. Review the selected profiles using [[Funtoo_Profiles#Using_epro|epro]].
 
=== Funtoo Profiles ===
Correctly setting [[Funtoo Profiles]] is required to install KDE. Review the selected profiles using [[Funtoo_Profiles#Using_epro|epro]].


{{console|body=
{{console|body=
###i## epro show
###i## epro show
=== ##g##Enabled Profiles##!g##: ===
        arch: ##bl##x86-64bit##!bl##
      build: ##bl##current##!bl##
    subarch: ##bl##intel64-haswell##!bl##
      flavor: ##bl##core##!bl##
    mix-ins: (not set)
=== ##g##All inherited flavors from core flavor##!g##: ===
                        ##bl##minimal##!bl## (from core flavor)
}}
The recommended [[Funtoo_Profiles#Flavors|flavor]] for KDE is ''desktop''. This can be selected with the command epro flavor desktop
{{console|body=
###i## epro flavor desktop


=== ##g##Enabled Profiles##!g##: ===
=== ##g##Enabled Profiles##!g##: ===
Line 46: Line 21:
     subarch: ##bl##intel64-haswell##!bl##
     subarch: ##bl##intel64-haswell##!bl##
       flavor: ##bl##desktop##!bl##
       flavor: ##bl##desktop##!bl##
     mix-ins: (not set)
     mix-ins: ##bl##kde##!bl##
 
>>> Set flavor to desktop.
}}
 
Following a [[Funtoo_Profiles#Flavors|flavor]] change an update of Funtoo packages is required
 
{{console|body=
###i## emerge --ask --update --verbose --deep --newuse --with-bdeps=y @world
}}
 
{{tip|This command can be shortened to
 
{{console|body=
###i## emerge -auvDN --with-bdeps=y @world
}}
}}
 
=== Install the X Window System ===
KDE requires the [https://en.wikipedia.org/wiki/X_Window_System X Window System (X11)] to present graphics (video) and receive input (keyboard, mouse, joystick, etc.). Configuration is required for X11 to work with the video card on the target hardware. Use the [[Video]] guide to determine the appropriate VIDEO_CARDS entry for Funtoo Linux. With your favorite editor, edit {{f|make.conf}} to include the setting appropriate for the target video hardware.
 
{{file|name=/etc/portage/make.conf|desc=example for Intel HD Graphics|body=
VIDEO_CARDS="intel i965"
}}
 
Now install the X Window System by merging the meta-package {{Package|x11-base/xorg-x11}}


{{console|body=
###i## emerge --ask --verbose x11-base/xorg-x11
}}
}}


=== Localization ===
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.
To install KDE for a language other than English (United States) add an appropriate LINGUAS entry to {{f|/etc/portage/make.conf}}


{{file|name=/etc/portage/make.conf|desc=Example for English (United Kingdom)|body=
DO NOT combine ''kde'' and ''kde-plasma-5'' at the same time - they are incompatible.
LINGUAS="en_GB"
}}
 
{{tip|More information on Localization can be found at [[Funtoo Linux Localization]].}}
 
== Emerge KDE SC 4 ==
 
The [[Funtoo Profiles]] were earlier set to the ''desktop'' flavor. Now an additional [[Funtoo_Profiles#Mix-ins|mix-in]] profile is required to provide a smooth installation of KDE SC 4.
 
There are two KDE-related mix-ins available in Funtoo: ''kde'' and ''kde-plasma-5''.
 
'''For KDE SC  the correct mix-in is "kde". DO NOT add "kde-plasma-5" instead of "kde" or add both at the same time - they are incompatible.'''
 
Add the mix-in using {{c|epro}}


{{console|body=
{{console|body=
###i## epro mix-in kde
###i## epro mix-in -kde +kde-plasma-5


=== ##g##Enabled Profiles##!g##: ===
=== ##g##Enabled Profiles##!g##: ===
Line 105: Line 38:
     subarch: ##bl##intel64-haswell##!bl##
     subarch: ##bl##intel64-haswell##!bl##
       flavor: ##bl##desktop##!bl##
       flavor: ##bl##desktop##!bl##
     mix-ins: ##bl##kde##!bl##
     mix-ins: ##bl##kde-plasma-5##!bl##


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


Now KDE SC 4 can be merged.
== Review USE Flags ==
To achieve clean update it is necessary to review <code>/etc/portage/package.use</code>, <code>/etc/portage/make.conf</code> 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.


This is performed by merging the package '''kde-apps/kde-meta'''. With the mix-in ''kde'' added this will install KDE SC 4 including the Plasma Desktop (Plasma 4), KDE Applications and common libraries from KDE and Qt.
Following command will scan your <code>/etc/portage/make.conf</code>
 
Since the Profile has changed (added mix-in) the world set of packages must be updated as well. These actions can be performed in one step
{{console|body=
{{console|body=
###i## emerge -auvDN --with-bdeps=y @world kde-apps/kde-meta
###i## grep -e "qt[[:digit:]]" -e "handbook" -e "kde" -e "plasma" /etc/portage/make.conf
}}
}}
 
It is necessary to review these USE's, if set.
Once completed proceed to the chapter [[KDE#Configure_and_Start_KDE|Configure and Start KDE]].
Next commands will scan your <code>/etc/portage/package.use</code>
 
== Configure and Start KDE ==
 
=== OpenRC ===
After the many packages have been merged portage will present a variety of post-install messages. A number of these will request that critical services are started first in order for KDE to work. Typically these are ALSA ({{Package|media-libs/alsa-lib}}), ConsoleKit ({{Package|sys-auth/consolekit}}), DBus ({{Package|sys-apps/dbus}}), and UDev ({{Package|sys-fs/eudev}}). Since the ''desktop'' flavor has been set CUPS ({{Package|net-print/cups}}) will also be included.
 
Issue the following commands to set these essential services to start automatically via OpenRC (sys-apps/openrc)


{{console|body=
{{console|body=
###i## rc-update add alsasound boot
###i## grep -e "qt[[:digit:]]$" -e "qt[[:digit:]] " -e "handbook$" -e "handbook " -R /etc/portage/package.use
###i## rc-update add cupsd default
###i## grep -e "kde$" -e "kde " -e "plasma$" -e "plasma " -R /etc/portage/package.use
###i## rc-update add consolekit default
}}
}}
Like above it's needed to review USEs, if set.
== Cleaning world ==
When explicitly installed and recorded into <code>/var/lib/portage/world</code> KDE SC 4 ebuilds can block updates to Plasma 5. To examine presence of such ebuilds in world file, please try following command


DBus is usually started when these services start.
<console>
 
# 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
UDev is usually rebuilt during an install of KDE due to changes in USE flags from changing Profile flavor and mix-ins. To accommodate changes it is best to restart the service.
</console>
 
When reviewed, this command can be performed without --pretend to clean world.
Now it's time for update
{{console|body=
{{console|body=
###i## /etc/init.d/udev --nodeps restart
###i## emerge -auvDN --with-bdeps=y @world
}}
}}


{{tip|Do not confuse the UDev package '''eudev''' (sys-fs/eudev) with '''evdev'''! '''evdev''' is the generic input device driver for the X Window System (x11-drivers/xf86-input-evdev)!}}
== Emerge KDE Plasma 5 and KDE Applications ==
 
=== Create a User Account ===
Now is the appropriate point to create a user account for use with KDE Plasma. The following example creates a user ''alice'' and associates that account with the Groups ''lp'', ''lpadmin'', ''plugdev'', ''users'', ''video'' and ''wheel''. A home directory for the account ''alice'' will be created at {{f|/home/alice}}.


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.
<code>kde-plasma/plasma-meta</code> is a package name for a complete desktop. In turn, if decided to install only minimal basic installation, <code>kde-plasma/plasma-dekstop</code> is your choice:
{{console|body=
{{console|body=
###i## useradd -m -G games,lp,lpadmin,plugdev,users,video,wheel alice
###i## emerge -av  kde-plasma/plasma-meta
}}
}}
 
or
Now set a password for ''alice''
 
{{console|body=
{{console|body=
###i## passwd alice
###i## emerge -av  kde-plasma/plasma-desktop
}}
 
=== Starting KDE with a Display (Login) Manager ===
The default [https://en.wikipedia.org/wiki/X_display_manager_(program_type) Display Manager] for KDE Plasma 4 is KDM (kde-base/kdm).
 
To use KDM first edit {{f|/etc/conf.d/xdm}} with your favorite editor, updating the DISPLAYMANAGER entry to equal 'kdm'
 
{{file|name=/etc/conf.d/xdm|body=
DISPLAYMANAGER="kdm"
}}
}}


Now add xdm to the default runlevel of OpenRC.
== 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, <code>kde-apps/kwalletd</code> 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 <code>kde-apps/kwalletmanager</code> 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.
{{console|body=
{{console|body=
###i## rc-update add xdm default
###i## echo "kde-apps/kdebase-runtime-meta -oldwallet" >> /etc/portage/package.use
###i## 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 <code>kde-plasma/plasma-desktop</code> 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:
The display manager KDM should appear at the end of computer boot. To avoid an unnecessary restart you can launch KDM/KDE from here with a simple command
{{file|name=~/.config/kwalletrc|desc=An example kwallet config|body=
 
[Wallet]
{{console|body=
Enabled=false
###i## rc
}}
}}
== Troubleshooting and Further Reading ==


You should be presented with a graphical login screen. Input devices (mouse, keyboard) should be working at this stage. Logging in will take you to the KDE Plasma desktop of KDE SC 4.
[https://wiki.gentoo.org/wiki/KDE/Plasma_5_upgrade Gentoo Linux KDE Plasma 5 Upgrade]
 
'''This concludes the basic installation of KDE Plasma on Funtoo Linux.'''
 
== External Links ==
 
KDE.org - [https://www.kde.org www.kde.org]
 
KDE Plasma Desktop - [https://www.kde.org/workspaces/plasmadesktop/ www.kde.org/workspaces/plasmadesktop/]
 
KDE Applications - [https://www.kde.org/applications/ www.kde.org/applications/]
 
Gentoo Linux Wiki - [https://wiki.gentoo.org/wiki/KDE wiki.gentoo.org/wiki/KDE]


[[Category:Desktop]]
[[Category:Desktop]]

Latest revision as of 11:31, February 26, 2017

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