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

Ce paquet est connu pour se construire correctement sur une plateforme LFS-8.4.

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

GConf-3.2.6, GTK+-2.24.32, GTK+-3.24.5, KDE Frameworks-5.55.0, libpwquality-1.4.0, libxkbcommon-0.8.3, Mesa-18.3.3 construit avec Wayland-1.16.0, NetworkManager-1.14.6, PulseAudio-12.2, qca-2.1.3, sassc-3.5.0, taglib-1.11.1 et xcb-util-cursor-0.1.3

Recommandées

Facultatives

GLU-9.0.0, ibus-1.5.19, Xorg Synaptics Driver-1.9.1, appstream-qt, KDevPlatform, libgps, libhybris, libraw1394, mockcpp, packagekit-qt, Qalculate, Qapt, SCIM et socat (pour pam_kwallet)

Notes utilisateur : http://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=http://download.kde.org/stable/plasma/5.15.0/
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

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.15.0.md5 << "EOF"
1195f11a0f135da965f7c84a0b535ad6  kdecoration-5.15.0.tar.xz
0d4896be04000503bedcf5c7d51e896a  libkscreen-5.15.0.tar.xz
784f3f907050c36265d0c289aa15779f  libksysguard-5.15.0.tar.xz
41d68903361098906f7feb05aeef96da  breeze-5.15.0.tar.xz
9a0d85a3a6b97e0f0920604e73c8f4f8  breeze-gtk-5.15.0.tar.xz
0ed614d82dff50dd7b1df7165113f600  kscreenlocker-5.15.0.tar.xz
86528bd2bd6f8a66108fc2ceba3cc1af  oxygen-5.15.0.tar.xz
fdd8a90fc4b917602547adf44553990d  kinfocenter-5.15.0.tar.xz
8c0b0aaf98727d52c00bfe3ca5152775  ksysguard-5.15.0.tar.xz
52f86eb52dda1ccd547a8a66893d439e  kwin-5.15.0.tar.xz
5424d6b8af2025c44acdaea10615a539  plasma-workspace-5.15.0.tar.xz
8649b958165f1a87f07373be0f97fbf3  bluedevil-5.15.0.tar.xz
2914de589f74b154fe29e3103be34ef6  kde-gtk-config-5.15.0.tar.xz
79d22683db231b7623cf2ebe384994b6  khotkeys-5.15.0.tar.xz
821abe928b627a33ae43ffeace3990e5  kmenuedit-5.15.0.tar.xz
60dae1dde512a5b8c8f54adb48e83ec4  kscreen-5.15.0.tar.xz
2c41b3ae8862a4243169e45348b1cd63  kwallet-pam-5.15.0.tar.xz
ef01bd635719a4bf3c6845dbc08e7bc3  kwayland-integration-5.15.0.tar.xz
6d461e4deeeae854e7efdff26c0fbc2e  kwrited-5.15.0.tar.xz
7fd8557369f2d3a59e1d84c78a265afc  milou-5.15.0.tar.xz
d3c9475c2b51cdb1f2efedfb5ab6cf88  plasma-nm-5.15.0.tar.xz
6eab227685df4ccd68ada3a4b633711f  plasma-pa-5.15.0.tar.xz
93a379e907d3b03205771e1b5c20ea7d  plasma-workspace-wallpapers-5.15.0.tar.xz
ed5c4fc72e5d72c8da607bd5fe60693f  polkit-kde-agent-1-5.15.0.tar.xz
12d65231a8265ee56d2ef1915aef7894  powerdevil-5.15.0.tar.xz
939ec9bc31bb3c89a73163950bdcedda  plasma-desktop-5.15.0.tar.xz
d7b299906680e0b564ff24f5c0d70f27  kdeplasma-addons-5.15.0.tar.xz
92751cff053861a46f58d5ca8837cb65  kgamma5-5.15.0.tar.xz
f6a267d3e76056a70abc262963f10ed5  ksshaskpass-5.15.0.tar.xz
#f910c1c8e687ddade3c161e9b6b9b598  plasma-sdk-5.15.0.tar.xz
19e3f3cb0c8341039f9855e79b9f395c  sddm-kcm-5.15.0.tar.xz
9755f8d9e1c84fcf105b464b513bb269  user-manager-5.15.0.tar.xz
d7135447c459e8c0bdb5d1fb1d703c01  discover-5.15.0.tar.xz
#745357574864bd167cff7b294486e145  breeze-grub-5.15.0.tar.xz
#a31d2ba0c628cf40d5102c14930a353c  breeze-plymouth-5.15.0.tar.xz
885978ef5cae1c843673be511998fe22  kactivitymanagerd-5.15.0.tar.xz
3fe2706c6c26f26d9aa38fb658763c9f  plasma-integration-5.15.0.tar.xz
e8d58c1860a29905fcfb0933de163231  plasma-tests-5.15.0.tar.xz
710233d7a0cb25b66caba2d496f706ba  plymouth-kcm-5.15.0.tar.xz
78c04d7c16031002fb373a53ba75514a  xdg-desktop-portal-kde-5.15.0.tar.xz
b1c8325c6a26a2b3f48b4adb6ce0a533  drkonqi-5.15.0.tar.xz
3241eed0c5938ecb07c7b6462179fb9b  plasma-vault-5.15.0.tar.xz
90c0b196206104b28def99c770db4ac1  plasma-browser-integration-5.15.0.tar.xz
7033a941eef914415feea7051bf1e42f  kde-cli-tools-5.15.0.tar.xz
580f675f1f03e5d2f4aec5cd6eebfe5f  systemsettings-5.15.0.tar.xz
EOF
[Note]

Note

Les paquets breeze-grub, breeze-plymouth et plymouth-kcm ci-dessus servent à supporter la personnalisation de Plymouth qui est prévu 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.

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.8.27 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 all of the packages en lançant 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.15.0.md5

exit

install -dvm 755 /usr/share/xsessions &&
cd /usr/share/xsessions/              &&
[ -e plasma.desktop ]                 ||
as_root ln -sfv $KF5_PREFIX/share/xsessions/plasma.desktop

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 lançant 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.0, ou depuis le niveau d'exécution 5, en utilisant un gestionnaire d'affichage, comme lightdm-1.28.0.

Pour démarrer Plasma5 en utilisant xinit-1.4.0, lancez les commandes suivantes :

cat > ~/.xinitrc << "EOF"
ck-launch-session dbus-launch --exit-with-session $KF5_PREFIX/bin/startkde
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
[Note]

Note

Vous pouvez souhaiter éviter consolekit ou dbus-launch, par exemple, en utilisant juste startkde dans ~/.xinitrc. Cependant quelques fonctionnalités comme le montage ou le démontage des systèmes de fichiers depuis un gestionnaire de fichiers ne seront pas possibles, ou l'option de redémarrage peut être absente ou inopérant, en plus d'autres problèmes.

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

Si vous prévoyez de démarrer Plasma en utilisant un gestionnaire d'affichage comme lightdm-1.28.0, il y aura deux entrées pour Plasma, une pour l'utilisation de Xorg, et une autre pour Wayland. Modifiez l'entrée Xorgavec la commande suivante, en tant qu'utilisateur root afin que vous puissiez faire la différence entre les deux :

sed '/^Name=/s/Plasma/Plasma on Xorg/' -i /usr/share/xsessions/plasma.desktop

Contenu

Programmes installés: Il y a trop de programmes plasma (50 dans /opt/kf5/bin) pour les lister séparément ici.
Bibliothèques installées: Il y a trop de bibliothèques plasma (39 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 2015-09-24 16:44:04 -0500