KDE Plasma 5 est une collection de paquets basés sur KDE Frameworks 5 et QML. Ils implémentent l'environnement d'affichage KDE (Plasma 5).
This package is known to build and work properly using an LFS-11.1 platform.
Les instructions suivantes construisent tous les paquets Plasma 5 en une étape en utilisant un script bash.
Téléchargement (HTTP) : https://download.kde.org/stable/plasma/5.24.0
Somme de contrôle MD5 : Voir ci-dessous
Taille du téléchargement : 183 Mo
Estimation de l'espace disque requis : 1,5 Go (366 Mo installés)
Estimation du temps de construction : 19 SBU (avec parallélisme = 4)
GTK+-2.24.33, GTK+-3.24.31, KDE Frameworks-5.91.0, libpwquality-1.4.4, libqalculate-4.0.0, libxkbcommon-1.4.0, Mesa-21.3.6 construit avec Wayland-1.20.0, NetworkManager-1.34.0, pipewire-0.3.47, PulseAudio-15.0, qca-2.3.4, sassc-3.6.2, taglib-1.12 et xcb-util-cursor-0.1.3
fftw-3.3.10, gsettings-desktop-schemas-41.0, libdbusmenu-qt-0.9.3+16.04.20160218, libcanberra-0.30, libinput-1.19.3, libpcap-1.10.1, Linux-PAM-1.5.2, lm-sensors-3-6-0, oxygen-icons5-5.91.0 et pciutils-3.7.0
AccountsService-22.07.5 et smartmontools-7.2
GLU-9.0.2, ibus-1.5.25, qtwebengine-5.15.8, Xorg Synaptics Driver-1.9.1, appstream-qt, KDevPlatform, libgps, libhybris, libraw1394, mockcpp, packagekit-qt, Qalculate, Qapt, SCIM et socat (pour pam_kwallet)
Seuls deux paquets de plasma utilisent éventuellement qtwebengine-5.15.8 : libksysguard et kdeplasma-addons. Si QtWebEngine est installé plus tard, seuls ces deux paquets doivent être reconstruits. Cela permet de fournir un affichage plus complet dans l'application de surveillance du système.
Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/kf5
La meilleure façon d'avoir les paquets de KDE Plasma5 est d'utiliser un seul wget pour les avoir tous en même temps :
url=https://download.kde.org/stable/plasma/5.24.0/
wget -r -nH -nd -A '*.xz' -np $url
Les options utilisée ici sont :
-r récupère les répertoires enfants
-nH désactive la génération de répertoires commençant pour le nom d'hôte
-nd ne crée pas de hiérarchie de répertoires
-A '*.xz' récupère uniquement les fichiers *.xz
-np ne récupère pas les répertoires parents
L'ordre de construction des fichiers est important à cause des dépendances internes. Créez la liste des fichiers dans le bon ordre comme suit :
cat > plasma-5.24.0.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
Les paquets breeze-grub, breeze-plymouth et plymouth-kcm ci-dessus servent à supporter la personnalisation de Plymouth qui est conçu pour fonctionner dans un disque de ram initial pendant le démarrage (voir la section intitulée « À propos de initramfs »). Le paquet plasma-sdk est facultatif et utilisé pour le développement logiciel. Le paquet plasma-nano est utilisé pour les systèmes embarqués et plasma-phone-components fournit des fonctionnalités pour Plasma sur les téléphones.
Pour l'installation de paquets multiples dans un script, les installations doivent être faites en tant qu'utilisateur root. Il y a trois options générales qui peuvent être utilisées pour faire cela :
Lancer le script entièrement en tant qu'utilisateur root (pas recommandé).
Use the sudo command from the Sudo-1.9.9 package.
Use su -c "command arguments" (guillemet requis) qui demandera le mot de passe root à chaque itération de la boucle.
Une façon de gérer cette situation est de créer une petite fonction bash qui sélectionne automatiquement la méthode appropriée. Une fois que la commande est initialisée dans l'environnement, il n'est plus nécessaire de le refaire.
as_root() { if [ $EUID = 0 ]; then $* elif [ -x /usr/bin/sudo ]; then sudo $* else su -c \\"$*\\" fi } export -f as_root
Commencez par démarrer un sous-shell qui sortira s'il y a une erreur :
bash -e
Installez tous les paquets en exécutant les commandes suivantes :
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.24.0.md5 exit
Si vous n'avez pas configuré $KF5_PREFIX
à /usr
, créez des liens symboliques
pour permettre aux gestionnaires d'affichage de trouver
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
Si vous avez construit Plasma avec le support recommandé de
Linux PAM, créez les fichiers de
configuration nécessaires en exécutant les commandes suivantes en
tant qu'utilisateur root
:
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
Vous pouvez démarrer Plasma5 depuis un TTY avec xinit-1.4.1.
Pour démarrer Plasma5 en utilisant xinit-1.4.1, lancez les commandes suivantes :
cat > ~/.xinitrc << "EOF"
dbus-launch --exit-with-session $KF5_PREFIX/bin/startplasma-x11
EOF
startx
La session X démarre dans le premier terminal virtuel inutilisé, normalement vt7. Vous pouvez passer à un autre vtn en appuyant simultanément sur les touches Ctrl-Alt-Fn (n=1, 2, ...). Pour aller sur la session X, normalement démarrée sur vt7, utilisez Ctrl-Alt-F7. Le vt où la commande startx est exécuté affichera beaucoup de messages, incluant les messages de démarrage de X, les applications automatiquement démarrées avec la session, et éventuellement, quelques avertissements et messages d'erreur. Vous pouvez préférer rediriger ces messages dans un fichier de log, qui non seulement laissera le vt initial propre, mais pourra aussi être utilisé pour des questions de débogage. Cela peut être fait en démarrant X avec :
startx &> ~/x-session-errors
Au redémarrage ou à l'arrêt, les messages d'arrêt apparaissent sur le vt où X était lancé. Si vous voulez voir ces messages, appuyez simultanément sur Alt-F7 (en considérant que X était lancé sur vt7).
Last updated on