Plasma do KDE é uma coleção de pacotes baseados no Frameworks do KDE e QML. Eles implementam o Ambiente de Exibição do KDE (Plasma).
Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.4.
As instruções abaixo constroem todos os pacotes do Plasma em uma etapa usando um conjunto de comandos sequenciais do Bash.
Transferência (HTTP): https://download.kde.org/stable/plasma/6.4.4
Soma de verificação MD5 da transferência: Veja-se Abaixo
Tamanho da transferência: 292 MB
Espaço em disco estimado exigido: 2,7 GB (638 MB instalado)
Tempo de construção estimado: 18 UPC (usando paralelismo = 8)
Boost-1.89.0, FFmpeg-7.1.1, GTK-3.24.50, KDE Frameworks-6.17.0, kirigami-addons-1.9.0, libdisplay-info-0.3.0, libpwquality-1.4.5, libqalculate-5.7.0, libnl-3.11.0, libxcvt-0.1.3, libxkbcommon-1.11.0, Mesa-25.1.8 construído com Wayland-1.24.0, opencv-4.12.0, phonon-4.12.0, pipewire-1.4.7, pulseaudio-qt-1.7.0, qca-2.3.10, qcoro-0.12.0, sassc-3.6.2, taglib-2.1.1, xdotool-3.20211022.1 e Controlador Evdev do Xorg-2.11.0
gsettings-desktop-schemas-48.0, libcanberra-0.30, libinput-1.29.0, libpcap-1.10.5, libwacom-2.16.1 e Controlador Wacom do Xorg-1.2.3 (para wacomtablet), Linux-PAM-1.7.1, lm-sensors-3-6-2, oxygen-icons-6.0.0, pciutils-3.14.0, power-profiles-daemon-0.30, e os seguintes módulos Python: psutil-7.0.0, pygdbmi-0.11.0.0, sentry-sdk-2.35.0, urllib3-2.5.0 (se não estiverem instalados, eles serão baixados e instalados pelo procedimento de construção do drkonqi)
AccountsService-23.13.9, breeze-icons-6.17.0, kio-extras-25.08.0, smartmontools-7.5, xdg-desktop-portal-1.20.3 e Xwayland-24.1.8
AppStream-1.0.6 (construído com -qt=true), GLU-9.0.3, ibus-1.5.32, qtwebengine-6.9.2, KDevPlatform, libgps, libhybris, packagekit-qt, Qapt, SCIM e socat (para pam_kwallet)
A maneira mais fácil de obter os pacotes do Plasma do KDE é a de usar um wget para buscá-los todos de uma vez:
url=https://download.kde.org/stable/plasma/6.4.4/
wget -r -nH -nd -A '*.xz' -np $url
As opções usadas aqui são:
-r recursivamente pelos diretórios descendentes
-nH desabilita a geração de diretórios prefixados pelo anfitrião
-nd não cria uma hierarquia de diretórios
-A '*.xz' apenas obtém os arquivos *.xz
-np não obtém os diretórios pais
A ordem de construção dos arquivos é importante devido às dependências internas. Crie a lista de arquivos na ordem correta conforme segue:
cat > plasma-6.4.4.md5 << "EOF"
1e80c73ad404ff95a607f46ec453ac07 kdecoration-6.4.4.tar.xz
6788dae93c3fb8d3790651c3cc13a459 libkscreen-6.4.4.tar.xz
f7075d4472969968507a72cb35168dbc libksysguard-6.4.4.tar.xz
e45d3b003a98b53f93b027b26038a4d2 breeze-6.4.4.tar.xz
2d8a7936962ae30177c14f9cad0917ff breeze-gtk-6.4.4.tar.xz
57485b21e575b632223946b936a11d35 layer-shell-qt-6.4.4.tar.xz
1294ad60e08e3d14263c316c5f2123c3 plasma-activities-6.4.4.tar.xz
69892c484106a65edc8669f9ff07f1de libplasma-6.4.4.tar.xz
d2660f748364304a38534ad9f8302f65 kscreenlocker-6.4.4.tar.xz
5b2aa8e2f826a5537ce018645094bc06 kinfocenter-6.4.4.tar.xz
2a3cb2bc67a700808ee4de996fbcf7e1 kglobalacceld-6.4.4.tar.xz
5f2f27d10a309f87a7fcc7abe3f33c7a kwayland-6.4.4.tar.xz
b5ce13deed26c030e80078997bcd3f59 aurorae-6.4.4.tar.xz
29aa486a4c9c03623f06019c4c6f4a6f kwin-x11-6.4.4.tar.xz
38bd47faac424693d15e6cbec7bb4f8c kwin-6.4.4.tar.xz
c89eed60be47c41acdaab7f7738474d9 plasma5support-6.4.4.tar.xz
e19f331b7233dfa00c1f9a4dc282aa6d plasma-activities-stats-6.4.4.tar.xz
1234acb0cf42bb51fa1e44de15300daf kpipewire-6.4.4.tar.xz
e387fc191c75643adf8647115e5b8135 plasma-workspace-6.4.4.tar.xz
f7955fe53dcfce1d3ee28385fb0460c5 plasma-disks-6.4.4.tar.xz
359c9fcedc3ee2660a7414c96f6a0888 bluedevil-6.4.4.tar.xz
8dd8c635342894da4a61dabc5820fce4 kde-gtk-config-6.4.4.tar.xz
123d1734729b0f6d66c45017d810ff10 kmenuedit-6.4.4.tar.xz
81cfc86c317b76e66c8fa69bd211580e kscreen-6.4.4.tar.xz
2c7b043f2ec05c4b03f210dcedc0b502 kwallet-pam-6.4.4.tar.xz
5695632187671ca756c4e7185a71195e kwrited-6.4.4.tar.xz
1a6dd6488b0125451102045aa8efdc1a milou-6.4.4.tar.xz
2bf7e0444338ae3a792ccaf1049466ed plasma-nm-6.4.4.tar.xz
00cbf448523569d1ecf799ffe8097961 plasma-pa-6.4.4.tar.xz
44bcf4f669bfa5dfd9b4a54f6016ba7b plasma-workspace-wallpapers-6.4.4.tar.xz
cf1fe247a40af3e6dd5ca2ad53b327d0 polkit-kde-agent-1-6.4.4.tar.xz
96158610825e79a419a28f45bb809eb9 powerdevil-6.4.4.tar.xz
714b58e169c5d2e8c80d65ca8e284cff plasma-desktop-6.4.4.tar.xz
35d2e17964ddda121f50098c29d4c30d kgamma-6.4.4.tar.xz
27a3515f9ae4184b4987c83892d6b74a ksshaskpass-6.4.4.tar.xz
#070839c487e9d8229ce8298d77480c8b plasma-sdk-6.4.4.tar.xz
b19b0189993f7ebc509d3e24cc1e8aa0 sddm-kcm-6.4.4.tar.xz
#328b5f55fd21129c9184b7d1b672a0bf discover-6.4.4.tar.xz
#3094f57a829def773d0f6ebb8b08f1f6 breeze-grub-6.4.4.tar.xz
#b3469dba2137b484b193a99fc064be67 breeze-plymouth-6.4.4.tar.xz
6e15c7a2bb5788b93acebde0318fae83 kactivitymanagerd-6.4.4.tar.xz
902966727cc9a5ebb4761df12e142c32 plasma-integration-6.4.4.tar.xz
#53cde99837265125361385ddf6246070 plymouth-kcm-6.4.4.tar.xz
eaeb0a047ac662cef2ecaf03a336ce91 xdg-desktop-portal-kde-6.4.4.tar.xz
b2b868b09d36cdbd77d086c3e215947e drkonqi-6.4.4.tar.xz
2d2c9bcc3d499fadff6ba8c78e0a78d6 plasma-vault-6.4.4.tar.xz
#5c043fbaf5c84975c469472cc5880a59 plasma-browser-integration-6.4.4.tar.xz
7b9720ff5aaccfff5a9dddc2a71e4eb6 kde-cli-tools-6.4.4.tar.xz
88cf35de0ee8ca3b45474ffaf0d54432 systemsettings-6.4.4.tar.xz
5e2c2591807a58cf6cdf4e884c3dd4be plasma-thunderbolt-6.4.4.tar.xz
#6a9b80fa6e10454556c4528c2510b2f7 plasma-mobile-6.4.4.tar.xz
#257173def078b51674cd27601828d732 plasma-nano-6.4.4.tar.xz
3c58fb9253970cb7a651088f423e0d9c plasma-firewall-6.4.4.tar.xz
ff6d636282233f101ec9349321cc4e70 plasma-systemmonitor-6.4.4.tar.xz
3e2a5476e578a309854f7a965bd627a8 qqc2-breeze-style-6.4.4.tar.xz
9d4579bd5ce554f5d21bfe41a0fe64e6 ksystemstats-6.4.4.tar.xz
3fcde8974282d0ae737f38a2d5cc4c7e oxygen-sounds-6.4.4.tar.xz
88e1e9c59db958a326c8e59769334eae kdeplasma-addons-6.4.4.tar.xz
#e2af8aad6f916339a20d79b70434adde flatpak-kcm-6.4.4.tar.xz
d6849ab3c3d626217e71ac5c571a0e56 plasma-welcome-6.4.4.tar.xz
67e934afb009c0cc85b6b5a7818dfc21 ocean-sound-theme-6.4.4.tar.xz
6a4cc6c6068851e488a85f94efe40959 print-manager-6.4.4.tar.xz
d66d7c32a5811a172ede92e86d0b050b wacomtablet-6.4.4.tar.xz
#6df9d0417921b08811b3b37640f81ae7 kwayland-integration-6.4.4.tar.xz
#e377c170815f38c88d04fbacc6c2ba46 krdp-6.4.4.tar.xz
8bcecf5327af741a21af37a93901fd35 oxygen-6.4.4.tar.xz
#079df59ec207b0c7d9e83fd544c34af9 plasma-dialer-6.4.4.tar.xz
#2425c5d7af8b994b9b2a7b78db8a5bb3 spacebar-6.4.4.tar.xz
51b35f64a4e47bb39d1c27f1e6171ab9 spectacle-6.4.4.tar.xz
EOF
Na lista acima, vários arquivos estão comentados com um caractere cerquilha (#).
O pacote plasma-sdk é opcional e usado para desenvolvimento de software.
O pacote de descoberta exige que AppStream-1.0.6 seja construído com a chave -D qt=true.
Os pacotes breeze-grub, breeze-plymouth e plymouth-kcm acima são todos para suporte personalizado do Plymouth, que foi projetado para ser executado dentro de um disco inicial RAM durante a inicialização (veja-se “A respeito do initramfs”).
O pacote plasma-browser-integration foi projetado para implementar integração do navegador para Plasma no Mozilla Firefox e no Google Chrome. O pacote constrói, mas só é útil se você quiser que esses navegadores sejam integrados ao shell de uma forma que permita que você veja (e controle) downloads originários da área de notificações do Plasma, bem como que você pesquise o histórico do navegador no KDE Runner. Observe que você também precisa instalar uma extensão do navegador para isso funcionar. Para mais detalhes, veja-se a página wiki do KDE Plasma acerca de integração do navegador.
O pacote krdp é usado para permitir que um servidor RDP seja executado enquanto usar Plasma. Esse recurso exige a versão 2.x do FreeRDP, que não está no BLFS.
O pacote plasma-nano é usado para sistemas embarcados.
Os pacotes plasma-mobile, plasma-dialer e spacebar fornecem funcionalidade de telefone para o Plasma.
O pacote flatpak-kcm é para suporte de gerenciamento de aplicativos flatpak.
O aplicativo kwayland-integration exige suporte plasma5.
Quando instalar múltiplos pacotes em um conjunto de comandos sequenciais, a instalação precisa ser feita como o(a) usuário(a) root. Existem três opções gerais que podem ser usadas para se fazer isso:
Executar o conjunto inteiro de comandos sequenciais como o(a) usuário(a) root (não recomendado).
Usar o comando sudo oriundo do pacote Sudo-1.9.17p2.
Usar su -c "argumentos do comando" (aspas exigidas), que solicitará a senha do(a) root para cada interação do loop.
Uma maneira de se lidar com essa situação é a de se criar uma função curta do bash que selecione automaticamente o método apropriado. Uma vez que o comando esteja configurado no ambiente, ele não precisa ser configurado novamente.
as_root() { if [ $EUID = 0 ]; then $* elif [ -x /usr/bin/sudo ]; then sudo $* else su -c \\"$*\\" fi } export -f as_root
Primeiro, inicie um sub shell que sairá em caso de erro:
bash -e
Instale todos os pacotes executando os seguintes comandos:
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 name=$( echo $pkg |sed 's|-6.*$||') # Isolate package name packagedir=$(echo $pkg |sed 's|\.tar.*||') # Source directory tar -xf $file pushd $packagedir mkdir build cd build cmake -D CMAKE_INSTALL_PREFIX=$KF6_PREFIX \ -D CMAKE_INSTALL_LIBEXECDIR=libexec \ -D CMAKE_BUILD_TYPE=Release \ -D BUILD_QT5=OFF \ -D BUILD_TESTING=OFF \ -W no-dev .. && make as_root make install popd as_root rm -rf $packagedir as_root /sbin/ldconfig done < plasma-6.4.4.md5 exit
Se você não configurou $KF5_PREFIX
como
/usr
, crie links simbólicos para
permitir que gerenciadores de tela encontrem o Plasma e para permitir que XDG Desktop Portal
seja detectado. Como o(a) usuário(a) root
:
# Setup xsessions (X11 sessions) install -dvm 755 /usr/share/xsessions cd /usr/share/xsessions [ -e plasma.desktop ] || ln -sfv $KF6_PREFIX/share/xsessions/plasmax11.desktop # Setup wayland-sessions install -dvm 755 /usr/share/wayland-sessions cd /usr/share/wayland-sessions [ -e plasmawayland.desktop ] || ln -sfv $KF6_PREFIX/share/wayland-sessions/plasma.desktop # Setup xdg-desktop-portal install -dvm 755 /usr/share/xdg-desktop-portal cd /usr/share/xdg-desktop-portal [ -e kde-portals.conf ] || ln -sfv $KF6_PREFIX/share/xdg-desktop-portal/kde-portals.conf # Setup kde portal install -dvm 755 /usr/share/xdg-desktop-portal/portals cd /usr/share/xdg-desktop-portal/portals [ -e kde.portal ] || ln -sfv $KF6_PREFIX/share/xdg-desktop-portal/portals/kde.portal
Se você construiu o Plasma com o suporte Linux PAM recomendado, crie os necessários
arquivos de configuração executando os seguintes comandos como
o(a) usuário(a) 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
Você consegue iniciar o Plasma a partir de um TTY, usando o xinit-1.4.4.
Para iniciar o Plasma usando o xinit-1.4.4, execute os seguintes comandos:
cat > ~/.xinitrc << "EOF"
dbus-launch --exit-with-x11 $KF6_PREFIX/bin/startplasma-x11
EOF
startx
A sessão do X inicia no primeiro terminal virtual não usado, normalmente o vt7. Você consegue comutar para outro vtn pressionando simultaneamente as teclas Ctrl-Alt-Fn (n=1, 2, ...). Para comutar de volta para a sessão do X, normalmente iniciada no vt7, use Ctrl-Alt-F7. O vt onde o comando startx foi executado exibirá muitas mensagens, incluindo mensagens de iniciação do X, aplicativos iniciados automaticamente com a sessão e, eventualmente, algumas mensagens de aviso e erro. Você possivelmente prefira redirecionar essas mensagens para um arquivo de registro, que não apenas manterá o vt inicial organizado, mas também poderá ser usado para fins de depuração. Isso pode ser feito iniciando-se o X com:
startx &> ~/x-session-errors
Ao desligar ou reinicializar, as mensagens de desligamento aparecem no terminal virtual onde o X estava executando. Se você desejar ver essas mensagens, pressione simultaneamente as teclas Alt-F7 (assumindo que o X estava executando no terminal virtual 7).