%general-entities; ]> $Date$ Building Plasma 5 KDE Plasma 5 KDE Plasma 5 is a collection of packages based on top of KDE Frameworks 5 and QML. They implement the KDE Display Environment (Plasma 5). &lfs111_checked; The instructions below build all of the Plasma 5 packages in one step by using a bash script. Package Information Download (HTTP): Download (FTP): Download MD5 sum: &plasma5-md5sum; Download size: &plasma5-size; Estimated disk space required: &plasma5-buildsize; Estimated build time: &plasma5-time; Plasma 5 Dependencies Required , , , , , , built with , , , , , , , and Recommended , , , , , , , , , and Recommended (runtime) and Optional , , , , appstream-qt, KDevPlatform, libgps, libhybris, libraw1394, mockcpp, packagekit-qt, Qalculate, Qapt, SCIM, and socat (for pam_kwallet) Only two plasma packages optionally use : libksysguard and kdeplasma-addons. If QtWebEngine is installed later, only those two packages have to be rebuilt. This allows to provide a more complete display in the system monitor application. User Notes: Downloading KDE Plasma5 The easiest way to get the KDE Plasma5 packages is to use a single wget to fetch them all at once: url=https://download.kde.org/stable/plasma/&plasma5-version;/ 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 Setting Package Order The order of building files is important due to internal dependencies. Create the list of files in the proper order as follows: cat > plasma-&plasma5-version;.md5 << "EOF" d5a143b93d183e46d2d9eecb65ca32d6 kdecoration-5.24.0.tar.xz 25328009546df7703a45a51c27befc76 libkscreen-5.24.0.tar.xz 3869c4c0c3acc7fcb2a210aac6480249 libksysguard-5.24.0.tar.xz 3065e58dd9832b419e68b38921a97c24 breeze-5.24.0.tar.xz 6fad933f0ee6f852ae58d906444b9595 breeze-gtk-5.24.0.tar.xz 7eae43606459dd0a288d5c081d9a6a2a layer-shell-qt-5.24.0.tar.xz 127f90c5e77d404949446813baf7d61a kscreenlocker-5.24.0.tar.xz 626ae567af6b34bb3f8a0ffc18093e95 oxygen-5.24.0.tar.xz f9a542276e05b3b4cb9fbd32c541a552 kinfocenter-5.24.0.tar.xz cad3dc7c0b9ca2faa9f8d25b4b2d857d kwayland-server-5.24.0.tar.xz a401b80ab133740bb9c006cdf0eaedbf kwin-5.24.0.tar.xz 56e20e9dd1767457613592c1edece60b plasma-workspace-5.24.0.tar.xz c8aa0ccd5cf5b428e16a25410f8ac33f plasma-disks-5.24.0.tar.xz 6b7e9f27503c829924048bf65a0c4763 bluedevil-5.24.0.tar.xz 5dcd7cb3e9401942b1307ec65dcf7ea5 kde-gtk-config-5.24.0.tar.xz 5a289a97f76a416a9ac6a62dc8fe733a khotkeys-5.24.0.tar.xz a7485966e66b63f50eddbcbc4790832c kmenuedit-5.24.0.tar.xz 507d12a9237fded95bbd1532e4a7b66b kscreen-5.24.0.tar.xz 4c2f698253f260a955ed1867d1ec9007 kwallet-pam-5.24.0.tar.xz 1e5ff352ea3b039b112efe37677eff45 kwayland-integration-5.24.0.tar.xz 4f3d56f758541d046ad69e842fccac7b kwrited-5.24.0.tar.xz 5e1d46d9bf8d0a03694903e83d070e3f milou-5.24.0.tar.xz b6e7be0be859d21947284e233d6e2931 plasma-nm-5.24.0.tar.xz d99ceab1dd9986122690a4b24d50b114 plasma-pa-5.24.0.tar.xz bad6e9079ac8ad192b8375242e5b1121 plasma-workspace-wallpapers-5.24.0.tar.xz eacdd3ef241f27d7ae68abce49d47a45 polkit-kde-agent-1-5.24.0.tar.xz 8b1299077c31395e2f04b28d94d1ca06 powerdevil-5.24.0.tar.xz 8c07b6d13e9ed8965abb38f0c3bdfdbf plasma-desktop-5.24.0.tar.xz 0f52913bec0b9ae5fe7c39b7eb7c0822 kdeplasma-addons-5.24.0.tar.xz 3dfd5a918fe12eaec8cf3fc291c69bfb kgamma5-5.24.0.tar.xz 63bd9da2abdbffb38f7b89d4d1e6e52b ksshaskpass-5.24.0.tar.xz #e4353dc4d36d9ed54d25df4e2538ef04 plasma-sdk-5.24.0.tar.xz 9f4568cf9b1ace13f082bb38f45f0079 sddm-kcm-5.24.0.tar.xz 1759fb71e190f0fd506e98f68d1df938 discover-5.24.0.tar.xz #89000e84cca76de236e576c922979352 breeze-grub-5.24.0.tar.xz #5f34ae758eab4fc8343e2fad5b7afbfb breeze-plymouth-5.24.0.tar.xz f2485f5a857898ae47c256ae8d9b4893 kactivitymanagerd-5.24.0.tar.xz 050d04b18ce5f00fb7dfef31000d88b6 plasma-integration-5.24.0.tar.xz 1eab4ed3b88ef3a712223afc4c116a7d plasma-tests-5.24.0.tar.xz #8b19cc2d7929cf988a44606a3eba7644 plymouth-kcm-5.24.0.tar.xz 9aafa58faea1bd7f90776f6e63d3866a xdg-desktop-portal-kde-5.24.0.tar.xz fe87c0f534cbefe3955faecfe5fcfc4d drkonqi-5.24.0.tar.xz c6f224eb9eb6f87e0af1464d7a933d09 plasma-vault-5.24.0.tar.xz d3c42b17d180af6ddf9821abd6f36d7e plasma-browser-integration-5.24.0.tar.xz a7157d0f6a12d2da890643b30bb02967 kde-cli-tools-5.24.0.tar.xz 3c7a50b0eb124cb6d1886cc89a0de5e8 systemsettings-5.24.0.tar.xz e6346ea04baa5c25e706145777a193dc plasma-thunderbolt-5.24.0.tar.xz #e4daa179a4bce0f03f4988186dfe3e31 plasma-nano-5.24.0.tar.xz #3e0e67f2a798b51025cb97a750fc1dea plasma-phone-components-5.24.0.tar.xz #3e0e67f2a798b51025cb97a750fc1dea plasma-mobile-5.24.0.tar.xz 2c43882de9c657073aed4df2c01eeac4 plasma-firewall-5.24.0.tar.xz 886d89f75a6ba9324586154816a9bcef plasma-systemmonitor-5.24.0.tar.xz 61903525c0e1585cb00e1b7c7c690145 qqc2-breeze-style-5.24.0.tar.xz f1e7a6af9a0862cc8812426e4d040be6 ksystemstats-5.24.0.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 plasma-sdk package is optional and used for software development. The plasma-nano package is used for embedded systems and plasma-phone-components provides phone functionality for Plasma. Installation of Plasma5 &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-&plasma5-version;.md5 exit If you did not set $KF5_PREFIX to /usr, create symlinks to allow display managers to find Plasma: as_root install -dvm 755 /usr/share/xsessions && cd /usr/share/xsessions/ && [ -e plasma.desktop ] || as_root ln -sfv $KF5_PREFIX/share/xsessions/plasma.desktop && as_root install -dvm 755 /usr/share/wayland-sessions && cd /usr/share/wayland-sessions/ && [ -e plasmawayland.desktop ] || as_root ln -sfv $KF5_PREFIX/share/wayland-sessions/plasmawayland.desktop Useless systemd units have been installed in $KF5_PREFIX/lib. Remove them now (as root): rm -rf $KF5_PREFIX/lib/systemd Configuring Plasma Linux PAM Configuration 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 Starting Plasma5 You can start Plasma5 from runlevel 3, using , or from runlevel 5, using a Display Manager, such as . You can start Plasma5 from a TTY, using . To start Plasma 5 using , run the following commands: cat > ~/.xinitrc << "EOF" dbus-launch --exit-with-session $KF5_PREFIX/bin/startplasma-x11 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). Contents Installed Programs Installed Libraries Installed Directories There are too many plasma programs (63 in /opt/kf5/bin) to list separately here. There are too many plasma libraries (40 in /opt/kf5/lib) to list separately here. There are too many plasma directories (over 1000 in /opt/kf5) to list separately here.