%general-entities; ]> $LastChangedBy: bdubbs $ $Date: 2015-09-24 16:44:04 -0500 (Thu, 24 Sep 2015) $ Building Plasma 5 KDE Plasma 5 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). &lfs79_checked;&gcc6_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 , , , , (built with qt5), , and Recommended , , , , , , and Optional , , appstream-qt, ibus, KDevPlatform, libgps, libhybris, libraw1394, mockcpp, packagekit-qt, Qalculate, Qapt, SCIM, and socat (for pam_kwallet) 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=http://download.kde.org/stable/plasma/&plasma5-version;/ wget -r -nH --cut-dirs=3 -A '*.xz' -np $url The options used here are: -r recurse through child directories -nH disable generation of host-prefixed directories --cut-dirs=3 remove three levels of directories when saving -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" 30a16a0dd46ca2ce36b7fc09355b485d kde-cli-tools-5.6.5.tar.xz d979aa9467e7554874681be3f51fd5ce kdecoration-5.6.5.tar.xz #dd6ad77e5d8bfbcd374f0c2e58d636a8 kwayland-5.6.5.tar.xz fd556c9aeaf9330bdb7755226875a245 libkscreen-5.6.5.tar.xz 717a38db625198390e17a147d38fc532 libksysguard-5.6.5.tar.xz 8fb2f83fae5c09bbed5e876831af124d breeze-5.6.5.tar.xz 05282eb95af385e5877efd3ee294429a breeze-gtk-5.6.5.tar.xz d949a468af5da8b1db48a311954b06c6 kscreenlocker-5.6.5.tar.xz cc5407dcd31778b81b929dd833deb25b oxygen-5.6.5.tar.xz 968f0dcd88e96e0e52c561e333b57f2b kinfocenter-5.6.5.tar.xz 898c3b27feb1d86d3936ea170ba65890 ksysguard-5.6.5.tar.xz 42829fd13bb42b2ec494315da1507670 kwin-5.6.5.tar.xz 084b6cd34bb961a1f96234fc6e406e48 systemsettings-5.6.5.tar.xz #340806c1a66ac443837e77f421181c09 plasma-workspace-5.6.5.tar.xz 340806c1a66ac443837e77f421181c09 plasma-workspace-5.6.5.1.tar.xz a8c144df8b08ad0853bcdb51642361d5 bluedevil-5.6.5.tar.xz 2cf0bf3c9e392f1f4751176ddd3fa13f kde-gtk-config-5.6.5.tar.xz 4f956210baea44254d5d5fdd8f516d4a khotkeys-5.6.5.tar.xz 304f6a029ece2b0da8ddd07fb892a0ae kmenuedit-5.6.5.tar.xz 060b56fb63ed8a493a0ab8ab60ae486d kscreen-5.6.5.tar.xz 4774f5d95199bf94806cd6b63a64e676 kwallet-pam-5.6.5.tar.xz a72a8b5f705e6ab68f3f209ae817480a kwayland-integration-5.6.5.tar.xz 5d00f53ee1b3713a54a9f3d64095d932 kwrited-5.6.5.tar.xz d4c33cf3856db7e3af8a2cade370e14d milou-5.6.5.tar.xz 9b9e6c59710285a603f29d01def056c8 plasma-nm-5.6.5.tar.xz 7130274b1089a12697121bdc57dde266 plasma-pa-5.6.5.tar.xz 4ad9d8fc0be4ca99800856b888023fca plasma-workspace-wallpapers-5.6.5.tar.xz d57d8318146fae78dadec75abdf3328c polkit-kde-agent-1-5.6.5.tar.xz d988b78411f1f370230b8854456ebe7b powerdevil-5.6.5.tar.xz 36858c6e1696bfead82d3a06edc6df20 plasma-desktop-5.6.5.tar.xz b0cf3a7e6147d1fc33ca40895a9998fa kdeplasma-addons-5.6.5.tar.xz 37dee802109c585f5ccf94da294b022d kgamma5-5.6.5.tar.xz 4a42a147c82c56924ebdb07de72616fd ksshaskpass-5.6.5.tar.xz 133031892c4c93891ce26176ca483828 plasma-mediacenter-5.6.5.tar.xz #ebde5a3ececfc0b34e43580e0b6e0a26 plasma-sdk-5.6.5.tar.xz 3ff070fd1c450fbbfc9a7628fed15601 sddm-kcm-5.6.5.tar.xz 3b6b859443a79ac47a04542e55f4dc52 user-manager-5.6.5.tar.xz ce253c1c0b1f2d70db2bf9a9b0ba9381 discover-5.6.5.tar.xz #8b23b0b1af6b70e335640d779ca9fc9e breeze-grub-5.6.5.tar.xz #97beb61c443e298196c6ec86cd7533f3 breeze-plymouth-5.6.5.tar.xz 1601ae991cecb49a2fa0eda05ac056a2 kactivitymanagerd-5.6.5.tar.xz bf34fb0e93402001f327bf99c195cebe plasma-integration-5.6.5.tar.xz EOF The breeze-grub and breeze-plymouth packages above are both 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. Thre are two versions of plasma-workspace and we use the most recent. kwaylayland is now installed in . 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 # Correct the name of the extracted directory case $packagedir in plasma-workspace-5.6.5.1 ) packagedir=plasma-workspace-5.6.5 ;; esac tar -xf $file pushd $packagedir mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=$KF5_PREFIX \ -DCMAKE_BUILD_TYPE=Release \ -DLIB_INSTALL_DIR=lib \ -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 cd $KF5_PREFIX/share/plasma/plasmoids for j in $(find -name \*.js); do as_root ln -sfv ../code/$(basename $j) $(dirname $j)/../ui/ done Command Explanations ln -sfv ../code/$(basename $j) $(dirname $j)/../ui/: Create symbolic links so qml files can find needed javascript modules. Starting Plasma5 You can start Plasma5 from runlevel 3, using , or from runlevel 5, using a Display Manager, such as . To start Plasma 5 using , run the following commands: cat > ~/.xinitrc << "EOF" ck-launch-session 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 You may wish to drop consolekit and/or dbus-launch, e.g., just using startkde in ~/.xinitrc. However some capabilities such as mounting or umounting file systems from a file manager will not be possible, or the reboot option may be absent or inoperative, among other problems. 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 (50 in /opt/kf5/bin) to list separately here. There are too many plasma libraries (39 in /opt/kf5/lib) to list separately here. There are too many plasma directories (over 1000 in /opt/kf5) to list separately here.