Construction de Plasma 5

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.2 platform.

Les instructions suivantes construisent tous les paquets Plasma 5 en une étape en utilisant un script bash.

Informations sur le paquet

Dépendances de Plasma 5

Requises

GTK+-2.24.33, GTK+-3.24.34, KDE Frameworks-5.97.0, libpwquality-1.4.4, libqalculate-4.2.0, libxkbcommon-1.4.1, Mesa-22.1.7 construit avec Wayland-1.21.0, NetworkManager-1.38.4, pipewire-0.3.56, PulseAudio-16.1, qca-2.3.4, sassc-3.6.2, taglib-1.12 et xcb-util-cursor-0.1.3

Recommandées

Recommandées (à l'exécution)

Facultatives

GLU-9.0.2, ibus-1.5.27, qtwebengine-5.15.10, Xorg Synaptics Driver-1.9.2, appstream-qt, KDevPlatform, libgps, libhybris, libraw1394, mockcpp, packagekit-qt, Qalculate, Qapt, SCIM et socat (pour pam_kwallet)

[Note]

Note

Seuls deux paquets de plasma utilisent éventuellement qtwebengine-5.15.10 : 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

Téléchargement de KDE Plasma5

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.25.4/
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

Initialisation de l'ordre des paquets

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.25.4.md5 << "EOF"
cc886e068156be2e3a38dd581ef5c7cd  kdecoration-5.25.4.tar.xz
dc335301006b1007714dc2af028856ef  libkscreen-5.25.4.tar.xz
38101d3a8fee3a6eef04370e29da3538  libksysguard-5.25.4.tar.xz
99b6204e0e782232de0caae00d8b08f9  breeze-5.25.4.tar.xz
9cff677a443097f0cd6ff997d75cd8d3  breeze-gtk-5.25.4.tar.xz
63f91c68af6cf236931455e3f2f7db8d  layer-shell-qt-5.25.4.tar.xz
f0390e8aa342f3b6f78383ffbd8e6245  kscreenlocker-5.25.4.tar.xz
173c0ff83e4677bd3d493882616f4821  oxygen-5.25.4.tar.xz
0eba490f93429cbae3274f5c80e8e4a4  kinfocenter-5.25.4.tar.xz
8c07df3083286b7fbf2fee061a9b8556  kwin-5.25.4.tar.xz
4322408dc35f32cfa25cde675ca4f950  plasma-workspace-5.25.4.tar.xz
847f15762403af3355dd9f8d313e3160  plasma-disks-5.25.4.tar.xz
a6c95ad969503a0c4f7fa61b457405c1  bluedevil-5.25.4.tar.xz
6b6cf6c6faa28d7593e3065befe8cf8d  kde-gtk-config-5.25.4.tar.xz
943b40a2a7e3738618ddb070233fe6f4  khotkeys-5.25.4.tar.xz
09c80647ed861aa94672fcb5d13fe382  kmenuedit-5.25.4.tar.xz
8671c090d885302d9553cecee3b87d65  kscreen-5.25.4.tar.xz
f0df854ad5288a369c3d38a393ad796c  kwallet-pam-5.25.4.tar.xz
b686e387222177d70f14652d03225fd9  kwayland-integration-5.25.4.tar.xz
7ad4e4512e2c03e351930e83dd2d5c9b  kwrited-5.25.4.tar.xz
7db4206e533f247b878241158f946552  milou-5.25.4.tar.xz
3e7cab69babe28ccafb1eb0df0c18757  plasma-nm-5.25.4.tar.xz
9813c33efcc84eb15d792aad2c096127  plasma-pa-5.25.4.tar.xz
54f0171cb296021b80437d2b5c5821e5  plasma-workspace-wallpapers-5.25.4.tar.xz
b29230b6615e1d4318e37d92940dd35b  polkit-kde-agent-1-5.25.4.tar.xz
207ef7369a9dbe242bb4be12856c9950  powerdevil-5.25.4.tar.xz
58f128569154007f74dd74b8fb1ce976  plasma-desktop-5.25.4.tar.xz
2218d15c9644268c8a001993ac2b75a3  kdeplasma-addons-5.25.4.tar.xz
78407d2ec45a8efbd94be4be4e458ec6  kgamma5-5.25.4.tar.xz
12f157a44265e888238e44567c49ffdd  ksshaskpass-5.25.4.tar.xz
#8f34f405bd2e81866f484c8fb2b3e4bf  plasma-sdk-5.25.4.tar.xz
5cf6a96fac52af822c28a5b414dfb05e  sddm-kcm-5.25.4.tar.xz
e5d1e81e741fcb94c6d3b7f0a460f0f2  discover-5.25.4.tar.xz
#7317d218fb9bcbd3bb52dcc2d0b45497  breeze-grub-5.25.4.tar.xz
#891882622ea5f8fc9e42aec7c349708a  breeze-plymouth-5.25.4.tar.xz
f8c1e906f17ce513113af47dadbf0222  kactivitymanagerd-5.25.4.tar.xz
4cbd66be9bfac48ff222c787652a0e1f  plasma-integration-5.25.4.tar.xz
ae0cc94583a0b6bd977a15b0ffba57d2  plasma-tests-5.25.4.tar.xz
#43096cf164e17176cc381d804823bac2  plymouth-kcm-5.25.4.tar.xz
53d0980ca27e7233ca24bae9eceb4e57  xdg-desktop-portal-kde-5.25.4.tar.xz
23b19b8d694ec98bc3e049cd628e8413  drkonqi-5.25.4.tar.xz
5a466c0da69b52836ddbf5524ddb14b9  plasma-vault-5.25.4.tar.xz
71c02fb4b8f3953a8548978b6309f7c8  plasma-browser-integration-5.25.4.tar.xz
5e0063ee3e50a7a336d80d17ed3c6651  kde-cli-tools-5.25.4.tar.xz
d0dcc4214861fc05328d5df46fe618f5  systemsettings-5.25.4.tar.xz
3a786aae80fa31643ace5b3c62e70254  plasma-thunderbolt-5.25.4.tar.xz
#74e38cc52ac71d74f0bce96ac6c2e288  plasma-nano-5.25.4.tar.xz
#86db281d990e794a0890b9b7933995fa  plasma-mobile-5.25.4.tar.xz
e08c0ad74f68666713c5891f73b6432b  plasma-firewall-5.25.4.tar.xz
030f1d0236b31407745300858f4f6db5  plasma-systemmonitor-5.25.4.tar.xz
005283e828b3ed1d1a9006dea23fd647  qqc2-breeze-style-5.25.4.tar.xz
5a8ef1866697cf5a660a59213d2f38e7  ksystemstats-5.25.4.tar.xz
ab1fd9c2a595b09925fc2f9ddfe18406  oxygen-sounds-5.25.4.tar.xz
EOF
[Note]

Note

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.

Installation de Plasma5

[Note]

Note

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 :

  1. Lancer le script entièrement en tant qu'utilisateur root (pas recommandé).

  2. Use the sudo command from the Sudo-1.9.11p3 package.

  3. 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.25.4.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

Des unités systemd inutiles ont été installées dans $KF5_PREFIX/lib. Supprimez-les maintenant (en tant que root) :

rm -rf $KF5_PREFIX/lib/systemd

Configuration de Plasma

Configuration de Linux PAM

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

Démarrage de Plasma5

Vous pouvez démarrer Plasma5 depuis le niveau d'exécution 3, en utilisant xinit-1.4.1, ou depuis le niveau d'exécution 5, en utilisant un gestionnaire d'affichage, comme lightdm-1.32.0.

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).

Contenu

Programmes installés: Il y a trop de programmes plasma (63 dans /opt/kf5/bin) pour les lister séparément ici.
Bibliothèques installées: Il y a trop de bibliothèques plasma (40 dans /opt/kf5/lib) pour les lister séparément ici.
Répertoires installés: Il y a trop de répertoires plasma (plus de 1000 dans /opt/kf5) pour les lister séparément ici.

Last updated on