"Plasma" 5 do "KDE" é uma coleção de pacotes baseados no "Frameworks" 5 do "KDE" e "QML". Eles implementam o Ambiente de Exibição do "KDE" ("Plasma" 5).
Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.1.
As instruções abaixo constroem todos os pacotes do "Plasma" 5 em uma etapa usando um conjunto de comandos sequenciais do "Bash".
Transferência (HTTP): https://download.kde.org/stable/plasma/5.27.10
Soma de verificação MD5 da transferência: Veja-se Abaixo
Tamanho da transferência: 243 MB
Espaço em disco estimado exigido: 1,7 GB (419 MB instalado)
Tempo de construção estimado: 7,6 UPC (usando paralelismo = 4)
GTK+-3.24.41, KDE Frameworks-5.115.0, kuserfeedback-1.3.0, libpwquality-1.4.5, libqalculate-4.9.0, libxcvt-0.1.2, libxkbcommon-1.6.0, Mesa-24.0.1 construído com Wayland-1.22.0, NetworkManager-1.44.2, pipewire-1.0.3, PulseAudio-17.0, qca-2.3.8, sassc-3.6.2, taglib-2.0 e xcb-util-cursor-0.1.4
fftw-3.3.10, gsettings-desktop-schemas-45.0, libdbusmenu-qt-0.9.3+16.04.20160218, libcanberra-0.30, libinput-1.25.0, libpcap-1.10.4, Linux-PAM-1.6.0, lm-sensors-3-6-0, oxygen-icons-5.115.0, pciutils-3.10.0 e power-profiles-daemon-0.20 (para laptops)
AccountsService-23.13.9, smartmontools-7.4, xdg-desktop-portal-1.18.2 e Xwayland-23.2.4
AppStream-1.0.1 (construído com -qt=true), GLU-9.0.3, ibus-1.5.29, qtwebengine-5.15.17, Controlador Synaptics do Xorg-1.9.2, KDevPlatform, libgps, libhybris, libraw1394, packagekit-qt, Qalculate, Qapt, SCIM e socat (para pam_kwallet)
qtwebengine-5.15.17 é exigido para aura-browser. Também é opcional para dois outros pacotes: libksysguard e kdeplasma-addons. Se QtWebEngine for instalado posteriormente, somente esses dois pacotes precisarão ser reconstruídos. Isso permite uma exibição mais completa no aplicativo de monitoramento do sistema.
A maneira mais fácil de obter os pacotes do "Plasma5" do "KDE" é a de usar um "wget" para buscá-los todos de uma vez:
url=https://download.kde.org/stable/plasma/5.27.10/
wget -r -nH -nd -A '*.xz' -np $url
As opções usadas aqui são:
-r recursar ao longo de diretórios descentes
-nH desabilitar a geração de diretórios com prefixo de dispositivo
-nd não crie uma hierarquia de diretórios
-A '*.xz' apenas obter os arquivos *.xz
-np não obtenha diretórios ancestrais
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-5.27.10.md5 << "EOF"
a1361a811dc93389d0ce771d1ff82c3a kdecoration-5.27.10.tar.xz
1f491e823bc83df650d04d5d9948da45 libkscreen-5.27.10.tar.xz
571aa0c18a14ee74f3081f96f73a7f9d libksysguard-5.27.10.tar.xz
541d1b06db3b707a7a73df1526f37b44 breeze-5.27.10.tar.xz
9acdc232ea675b761e7386837f25f420 breeze-gtk-5.27.10.tar.xz
54562594af547614648cded522c3e747 layer-shell-qt-5.27.10.tar.xz
c44cfe3ba7fb03fc30b2ae305f16ed79 kscreenlocker-5.27.10.tar.xz
171949dd2dfc3b2325c959389694860a oxygen-5.27.10.tar.xz
0ef8d9f18707712fc4bcccf59138f2c7 kinfocenter-5.27.10.tar.xz
e4e4409af71c4f5a67aa35c04f6b2bc7 kwin-5.27.10.tar.xz
5c2ff5158503e983207e700ce513e929 plasma-workspace-5.27.10.tar.xz
46001c7671f7ff2f08ca0dd9c3cdbf3f plasma-disks-5.27.10.tar.xz
820566ae6effedbdd208a78e0031bf67 bluedevil-5.27.10.tar.xz
490bd81c915f332b65631b87b6eaa49d kde-gtk-config-5.27.10.tar.xz
7cade9cfce3ef14f14f55cd7a50fd7cf khotkeys-5.27.10.tar.xz
e98c999e6ee7f9bbe775d4e512368420 kmenuedit-5.27.10.tar.xz
24bc4ed3ad5587bd05591aafd758df2c kscreen-5.27.10.tar.xz
3ab1c88cf91f0fb46ae3395d57709e12 kwallet-pam-5.27.10.tar.xz
53d59d76b3dfac5f755d607798b08f85 kwayland-integration-5.27.10.tar.xz
d7a9f2999352e91d504d52ad65336d9b kwrited-5.27.10.tar.xz
8a51e19d58acebb89a919b7377d8bc83 milou-5.27.10.tar.xz
0e11c62c2a23d161b5b8cbe6e87517bc plasma-nm-5.27.10.tar.xz
02657d8fd46384f75ffe9c504f7c97b4 plasma-pa-5.27.10.tar.xz
5c1cbd459e786deb16d5615748114bfa plasma-workspace-wallpapers-5.27.10.tar.xz
17302ca60f68e13e85bc24a4ec873622 polkit-kde-agent-1-5.27.10.tar.xz
cc39dc5777614bd89ae96d38008dc7c9 powerdevil-5.27.10.tar.xz
2417bb974152d4f2274ebe3b7b524ca8 plasma-desktop-5.27.10.tar.xz
f51521902f0665349c0fa012590a1eec kgamma-5.27.10.tar.xz
e95d6813c180b078be4bf40550791e26 ksshaskpass-5.27.10.tar.xz
#8c52fad441ffe43969458ae71b6a2f26 plasma-sdk-5.27.10.tar.xz
1af573d08dd99879f27c5a2b55b02bc9 sddm-kcm-5.27.10.tar.xz
#560ac5c60112e18bb44c46eec3563d7d discover-5.27.10.tar.xz
#3af40cfe47213087d2a8c89132ff004d discover-5.27.10.1.tar.xz
#2cd0a4e1e3e89197e18f48d893c0f2d6 breeze-grub-5.27.10.tar.xz
#fe7bb4efec17206a9faceb9cfe35fbf5 breeze-plymouth-5.27.10.tar.xz
5bbb5c7a2985f8d7b8816a35d517d333 kactivitymanagerd-5.27.10.tar.xz
c1810c7d54842028fb5968097add5538 plasma-integration-5.27.10.tar.xz
#75bedf5da4b7497a18238011d12bec26 plymouth-kcm-5.27.10.tar.xz
440dd7cb1f43d7d86862a1165b48c4f2 xdg-desktop-portal-kde-5.27.10.tar.xz
657984f8356578253e1911c8d35041f6 drkonqi-5.27.10.tar.xz
912db896afe71a8283e36037b4bba79e plasma-vault-5.27.10.tar.xz
e03d33ca8a9905df3c2901cef5512a14 plasma-browser-integration-5.27.10.tar.xz
30797f3809675e61542518f9b15be2c3 kde-cli-tools-5.27.10.tar.xz
1319f82a4043456a4cb99cfcc2ba90fe systemsettings-5.27.10.tar.xz
2861104cf1e31393d9cd87701042d3aa plasma-thunderbolt-5.27.10.tar.xz
#79ffc86387c7024bd834b349fba9b79f plasma-nano-5.27.10.tar.xz
#802d5a3cd34f5ec3825c21905f0ed9db plasma-mobile-5.27.10.tar.xz
1f4875f2cf9c0d949961aa9ad6635e6f plasma-firewall-5.27.10.tar.xz
b6648b45d9824b565dda1f100e7d83a6 plasma-systemmonitor-5.27.10.tar.xz
8e46e5afde739a6361b1838f71eb182d qqc2-breeze-style-5.27.10.tar.xz
fd93592f9895c5c09f4c0db771c1710a ksystemstats-5.27.10.tar.xz
4f55bb4490751abb23046165d68e8ca7 oxygen-sounds-5.27.10.tar.xz
#6300c88c07debeb60760dede52a791ee aura-browser-5.27.10.tar.xz
00afc45528267a5e2ec11b47b8a7779b kdeplasma-addons-5.27.10.tar.xz
7f432fbb0d205d6e30714e731f91a459 kpipewire-5.27.10.tar.xz
5f37a2e3acf00a0616e13d86ed225d7f plank-player-5.27.10.tar.xz
f3a08cefe61643273a9e06cfd6b2746a plasma-bigscreen-5.27.10.tar.xz
a69142a27ab62c583fa5d4d4577427ff plasma-remotecontrollers-5.27.10.tar.xz
#16e67ca215d44ec59130214ca6e13e80 flatpak-kcm-5.27.10.tar.xz
#4ef3e1d988e5edfa8ee20f9373a82680 plasma-welcome-5.27.10.tar.xz
EOF
Os pacotes breeze-grub, breeze-plymouth e plymouth-kcm acima são todos para suporte personalizado do Plymouth, que é projetado para ser executado em um disco RAM inicial durante a inicialização (veja-se “A respeito do initramfs”). O pacote plasma-sdk é opcional e usado para desenvolvimento de software. O pacote plasma-nano é usado para sistemas embarcados. O pacote plasma-mobile fornece funcionalidade de telefone para o Plasma. O pacote aura-browser exige qtwebengine-5.15.17. O pacote discover exige AppStream-1.0.1 para ser construído com a chave -Dqt=true. A versão discover-5.27.10.1 do pacote é uma atualização da versão anterior. O pacote plasma-welcome exige o pacote externo kaccounts-integration. O pacote flatpack-kcm é para suporte de gerenciamento de aplicativos flatpack.
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.15p5.
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 # Obtenha o nome do arquivo, ignorando comentários e linhas em branco if $(echo $line | grep -E -q '^ *$|^#' ); then continue; fi file=$(echo $line | cut -d" " -f2) pkg=$(echo $file|sed 's|^.*/||') # Remove diretório packagedir=$(echo $pkg|sed 's|\.tar.*||') # Diretório do pacote 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.27.10.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:
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 as_root install -dvm 755 /usr/share/xdg-desktop-portal && cd /usr/share/xdg-desktop-portal/ && [ -e kde-portals.conf ] || as_root ln -sfv $KF5_PREFIX/share/xdg-desktop-portal/kde-portals.conf as_root install -dvm 755 /usr/share/xdg-desktop-portal/portals && cd /usr/share/xdg-desktop-portal/portals && [ -e kde.portal ] || as_root ln -sfv $KF5_PREFIX/share/xdg-desktop-portal/portals/kde.portal
Unidades do "systemd" inúteis foram instaladas em "$KF5_PREFIX/lib
". Remova-as agora (como
"root
"):
rm -rf $KF5_PREFIX/lib/systemd
Se você construiu o "Plasma" com o suporte "Linux PAM" recomendado, [então] 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"# Inicia /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 # Termina /etc/pam.d/kde
EOF cat > /etc/pam.d/kde-np << "EOF"# Inicia /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 # Termina /etc/pam.d/kde-np
EOF cat > /etc/pam.d/kscreensaver << "EOF"# Inicia /etc/pam.d/kscreensaver auth include system-auth account include system-account # Termina /etc/pam.d/kscreensaver
EOF
Você consegue iniciar o "Plasma5" a partir do nível de execução 3, usando o "xinit-1.4.2", ou a partir do nível de execução 5, usando um Gerenciador de Tela, como o "lightdm-1.32.0".
Para iniciar o "Plasma 5" usando o "xinit-1.4.2", execute os seguintes comandos:
cat > ~/.xinitrc << "EOF"
dbus-launch --exit-with-x11 $KF5_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).