KDE Plasma 5 is a collection of packages based on top of KDE Frameworks 5 and QML. It has been derived from the monolithic KDE 4 desktop. They implement the KDE Display Environment (Plasma 5).
This package is known to build and work properly using an LFS-8.1 platform.
The instructions below build all of the Plasma 5 packages in one step by using a bash script.
Download (HTTP): http://download.kde.org/stable/plasma/5.10.5
Download MD5 sum: See Below
Download size: 103 MB
Estimated disk space required: 932 MB (291 MB installed)
Estimated build time: 36 SBU
GTK+-2.24.31, GTK+-3.22.18, KDE Frameworks-5.37.0, libpwquality-1.4.0, libxkbcommon-0.7.2, Mesa-17.1.6 built with Wayland-1.14.0, NetworkManager-1.8.2, PulseAudio-10.0, Python-2.7.13, qca-2.1.3 (built with qt5), taglib-1.11.1, and xcb-util-cursor-0.1.3
libdbusmenu-qt-0.9.3+16.04.20160218, libcanberra-0.30, libinput-1.8.1, Linux-PAM-1.3.0, lm_sensors-3.4.0, oxygen-icons5-5.37.0, and pciutils-3.5.5
GLU-9.0.0, IBus-1.5.16, Xorg Synaptics Driver-1.9.0, appstream-qt, KDevPlatform, libgps, libhybris, libraw1394, mockcpp, packagekit-qt, Qalculate, Qapt, SCIM, and socat (for pam_kwallet)
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/kf5
The easiest way to get the KDE Plasma5 packages is to use a single wget to fetch them all at once:
url=http://download.kde.org/stable/plasma/5.10.5/
wget -r -nH -nd -A '*.xz' -np $url
The options used here are:
-r recurse through child directories
-nH disable generation of host-prefixed directories
-nd do not create a hierarchy of directories
-A '*.xz' just get the *.xz files
-np don't get parent directories
The order of building files is important due to internal dependencies. Create the list of files in the proper order as follows:
cat > plasma-5.10.5.md5 << "EOF"
61b926818863e0ff1e87b9a7f4bc1371 kde-cli-tools-5.10.5.tar.xz
133cfcf1c2f3f98f60036a0fb4cd2c84 kdecoration-5.10.5.tar.xz
93465b802514e1a3d90ae3b79f7a7f85 libkscreen-5.10.5.tar.xz
8352206006bd8df100ccf4457330c91f libksysguard-5.10.5.tar.xz
f78318b14525ed3a56e33f4f24e5cd04 breeze-5.10.5.tar.xz
02be5bb69c94ac18097375ae66384092 breeze-gtk-5.10.5.tar.xz
90c04db347b282202a06a41e33f28083 kscreenlocker-5.10.5.tar.xz
9874a761b9e92a88e6b4abba571c9f61 oxygen-5.10.5.tar.xz
60e424cdcc01adc499902229c3a8ee80 kinfocenter-5.10.5.tar.xz
3e531a86dbc0f517e79bbba83c8bba5b ksysguard-5.10.5.tar.xz
5e8ad3d570909cd2910fbb1fe50650db kwin-5.10.5.tar.xz
91d3559768edb8d805897f09bb9ca0ed systemsettings-5.10.5.tar.xz
7332e40293623cc59a5d296afb0cac50 plasma-workspace-5.10.5.tar.xz
9d55bed36f274f1b79427e0e515441b1 bluedevil-5.10.5.tar.xz
f4f21444ee52f793c43bd1245880c408 kde-gtk-config-5.10.5.tar.xz
b96fa0308bf5242924e608181b48d777 khotkeys-5.10.5.tar.xz
c2259c358887d8e21b497e90a8dcef50 kmenuedit-5.10.5.tar.xz
29a7eac44b1239a371d2f8337285cfa9 kscreen-5.10.5.tar.xz
4117c95c592c7f51c6f1e54b9eb9a015 kwallet-pam-5.10.5.tar.xz
37720b8eaf3e6271dc21b8cd7fda14d2 kwayland-integration-5.10.5.tar.xz
0377a56033de0415174400dfe8e7516a kwrited-5.10.5.tar.xz
b925292bb0300bea67e60e39bbffddf5 milou-5.10.5.tar.xz
4ab4a1840448808ec998cbcfefdf6ac0 plasma-nm-5.10.5.tar.xz
cf32842a5a80fcf875231548db222c73 plasma-pa-5.10.5.tar.xz
e477f6554f7a266e52521ff98cc7b798 plasma-workspace-wallpapers-5.10.5.tar.xz
eb76e3c900a3288792eb36524394ace8 polkit-kde-agent-1-5.10.5.tar.xz
cf9600ad417ac19a2905f313d2a4b63c powerdevil-5.10.5.tar.xz
07df99ee595a53c6d9f50c17ddb7bcb4 plasma-desktop-5.10.5.tar.xz
5f69006dbd233aefa54b1f2f474ba0ec kdeplasma-addons-5.10.5.tar.xz
73bf718d8625bcd7990200854846f330 kgamma5-5.10.5.tar.xz
3013943358a15d878ffcd6cc0529ee8c ksshaskpass-5.10.5.tar.xz
#2108f6f1856edbb845303faffa0663ec plasma-sdk-5.10.5.tar.xz
99243c64866c23c03251fbe179ac4f4b sddm-kcm-5.10.5.tar.xz
e05c789e6f6e21d642c4194480ca1b8c user-manager-5.10.5.tar.xz
da06f5c055b78c773b8acd813cb22682 discover-5.10.5.tar.xz
#c3463607251ff3fdcd73cc5eb0ab203c breeze-grub-5.10.5.tar.xz
#f2e14a9075792c3e3a6df512490429b4 breeze-plymouth-5.10.5.tar.xz
ac13d5b70b28c77d3a37d22cd4b949d5 kactivitymanagerd-5.10.5.tar.xz
74e1cf72ec6c4ad920447b4cc7635c08 plasma-integration-5.10.5.tar.xz
c03584b89c09b0d154bdb93290c11b81 plasma-tests-5.10.5.tar.xz
#479e80625971fedb4bef3101060c91cf plymouth-kcm-5.10.5.tar.xz
3ec1936fa9def125630493418455b6d8 xdg-desktop-portal-kde-5.10.5.tar.xz
EOF
The breeze-grub, breeze-plymouth, and plymouth-kcm packages above are all for customized support of Plymouth which is designed to be run within an initial ram disk during boot (see the section called “About initramfs”). The plasma-sdk package is optional and used for software development.
When installing multiple packages in a script, the installation needs to be done as the root user. There are three general options that can be used to do this:
Run the entire script as the root user (not recommended).
Use the sudo command from the Sudo-1.8.20p2 package.
Use su -c "command arguments" (quotes required) which will ask for the root password for every iteration of the loop.
One way to handle this situation is to create a short bash function that automatically selects the appropriate method. Once the command is set in the environment, it does not need to be set again.
as_root() { if [ $EUID = 0 ]; then $* elif [ -x /usr/bin/sudo ]; then sudo $* else su -c \\"$*\\" fi } export -f as_root
First, start a subshell that will exit on error:
bash -e
Install all of the packages by running the following commands:
while read -r line; do # Get the file name, ignoring comments and blank lines if $(echo $line | grep -E -q '^ *$|^#' ); then continue; fi file=$(echo $line | cut -d" " -f2) pkg=$(echo $file|sed 's|^.*/||') # Remove directory packagedir=$(echo $pkg|sed 's|\.tar.*||') # Package directory tar -xf $file pushd $packagedir mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=$KF5_PREFIX \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_TESTING=OFF \ -Wno-dev .. && make as_root make install popd as_root rm -rf $packagedir as_root /sbin/ldconfig done < plasma-5.10.5.md5 exit cd $KF5_PREFIX/share/plasma/plasmoids for j in $(find -name \*.js); do as_root ln -sfv ../code/$(basename $j) $(dirname $j)/../ui/ done
ln -sfv ../code/$(basename $j) $(dirname $j)/../ui/: Create symbolic links so qml files can find needed javascript modules.
If you built Plasma with the recommended Linux PAM support, create necessary
configuration files by running the following commands as the
root
user:
cat >> /etc/pam.d/kde << "EOF" # Begin /etc/pam.d/kde auth requisite pam_nologin.so auth required pam_env.so auth required pam_succeed_if.so uid >= 1000 quiet auth include system-auth account include system-account password include system-password session include system-session # End /etc/pam.d/kde EOF cat > /etc/pam.d/kde-np << "EOF" # Begin /etc/pam.d/kde-np auth requisite pam_nologin.so auth required pam_env.so auth required pam_succeed_if.so uid >= 1000 quiet auth required pam_permit.so account include system-account password include system-password session include system-session # End /etc/pam.d/kde-np EOF cat > /etc/pam.d/kscreensaver << "EOF" # Begin /etc/pam.d/kscreensaver auth include system-auth account include system-account # End /etc/pam.d/kscreensaver EOF
You can start Plasma5 from a TTY, using xinit-1.3.4.
To start Plasma 5 using xinit-1.3.4, run the following commands:
cat > ~/.xinitrc << "EOF"
dbus-launch --exit-with-session $KF5_PREFIX/bin/startkde
EOF
startx
The X session starts on the first unused virtual terminal, normally vt7. You can switch to another vtn simultaneously pressing the keys Ctrl-Alt-Fn (n=1, 2, ...). To switch back to the X session, normally started at vt7, use Ctrl-Alt-F7. The vt where the command startx was executed will display many messages, including X starting messages, applications automatically started with the session, and eventually, some warning and error messages. You may prefer to redirect those messages to a log file, which not only will keep the initial vt uncluttered, but can also be used for debugging purposes. This can be done starting X with:
startx &> ~/x-session-errors
When shutting down or rebooting, the shutdown messages appear on the vt where X was running. If you wish to see those messages, simultaneously press keys Alt-F7 (assuming that X was running on vt7).
If you intend to start Plasma
using a display manager such as sddm-0.15.0, there will be
two entries for Plasma, one for
use with Xorg, and another for
Wayland. Modify the Xorg entry with the following command, as the
root
user, so that you can
differentiate between the two:
sed '/^Name=/s/Plasma/Plasma on Xorg/' -i /usr/share/xsessions/plasma.desktop
Last updated on 2015-09-24 16:44:04 -0500