KDE

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page KDE and the translation is 67% complete.
Outdated translations are marked like this.

KDE — это сообщество свободного программного обеспечения, разрабатывающее множество приложений, в том числе Plasma — популярную среду рабочего стола.

Проект Gentoo обеспечивает прекрасную поддержку проекта KDE, и всех библиотек KDE Frameworks 5, новое рабочее окружение Plasma 5 и Applications, а также широкий спектр дополнительного программного обеспечения на базе проекта KDE.

Предварительные требования

Профиль

Важно
Прочитайте соответствующую документацию перед выполнением любых изменений профиля.

Выбор подходящего профиля, хоть и не требуется, но рекомендуется, так как он устанавливает ряд глобальных и пакетных USE-флагов для более простой установки и не требует большого опыта в настройке KDE.

При выборе наиболее подходящего профиля сперва посмотрите какие доступны:

root #eselect profile list
  ...
  [1]   default/linux/amd64/17.1 (stable)
  [2]   default/linux/amd64/17.1/selinux (stable)
  [3]   default/linux/amd64/17.1/hardened (stable)
  [4]   default/linux/amd64/17.1/hardened/selinux (stable)
  [5]   default/linux/amd64/17.1/desktop (stable)
  [6]   default/linux/amd64/17.1/desktop/gnome (stable)
  [7]   default/linux/amd64/17.1/desktop/gnome/systemd (stable)
  [8]   default/linux/amd64/17.1/desktop/plasma (stable)
  [9]   default/linux/amd64/17.1/desktop/plasma/systemd (stable)
  ...

Выберите подходящий профиль, заменив X соответствующим номером:

root #eselect profile set X

Для окружения рабочего стола Plasma 5 выберите профиль desktop/plasma c OpenRC или desktop/plasma/systemd c systemd. Обратите внимание, что комбинации USE-флагов, отличающиеся от установленных профилем, технически возможны (особенно, если вместо полного окружения рабочего стола KDE Plasma выполняются только некоторые приложения), но могут быть неподдерживаемыми, непроверенными или привести к неожиданной потере функциональности.

Сервисы

Перед установкой связанного с KDE программного обеспечения рекомендуется настроить несколько сервисов. Если используется профиль "desktop/plasma" или "desktop", то часть работы делается автоматически. Вот необходимые сервисы:

  • D-Bus: Включает использование системы межпроцессного взаимодействия D-Bus.
  • polkit: Включает набор инструментов polkit для контроля привилегий системных сервисов.
  • udev: Включает поддержку динамического и постоянного именования устройств Linux через udev.
  • udisks: Включает поддержку некоторых сервисов, связанных с хранением данных.

Session tracker

Выберите один из:

  • elogind: Standalone logind package, default for desktop/plasma profile, extracted from systemd project for use with OpenRC or other init systems.
  • systemd: Uses the session tracker part of systemd. Users of systemd do not need to take any other initiative here.

Менеджер устройств

Выберите один из:

  • udev: Enables support for udev Linux dynamic and persistent device naming.
  • eudev: Fork of udev for better compatibility with older kernels and various toolchains.
  • systemd: Uses the device manager part of systemd. Users of systemd do not need to take any other initiative here.

Разное

  • D-Bus: Включает использование системы межпроцессного взаимодействия D-Bus.
  • polkit: Включает набор инструментов polkit для контроля привилегий системных сервисов.
  • udisks: Включает поддержку некоторых сервисов, связанных с хранением данных.

X-сервер

Для установки X-окружения следуйте инструкциям статьи X-сервер.

Plasma

Plasma 5 — это текущее поколение рабочего окружения KDE, основанное на Qt 5 и KDE Frameworks 5.

Доступные версии

KDE Gentoo Ebuild repository Status
KDE Plasma 5.26.5 kde-plasma/plasma-meta-5.26.5 gentoo Stable for amd64, arm64, and x86; Testing for arm, loong, ppc64, riscv
KDE Plasma 5.27.3 kde-plasma/plasma-meta-5.27.3 gentoo Testing for amd64, arm, arm64, loong, ppc64, riscv and x86
KDE Plasma master branch kde-plasma/plasma-meta-9999 KDE Live version
Заметка
Перед продолжением убедитесь, что выбран профиль Plasma.

Установка

USE-флаги

Пакет kde-plasma/plasma-meta предоставляет полный набор Plasma 5 и настраивается следующими USE флагами:

USE flags for kde-plasma/plasma-meta Merge this to pull in all Plasma 5 packages

accessibility Add support for accessibility (eg 'at-spi' library)
bluetooth Enable Bluetooth Support
browser-integration Enable integration with Chrome/Firefox with browser extensions
colord Enable kde-plasma/kwin color management via x11-misc/colord
crash-handler Pull in kde-plasma/drkonqi for assisted upstream crash reports
crypt Pull in kde-plasma/plasma-vault for encrypted vaults integration
desktop-portal Enable sys-apps/xdg-desktop-portal backend implementation for Plasma
discover Pull in resources management GUI; a centralised GHNS alternative and optional sys-apps/fwupd frontend
display-manager Pull in a graphical display manager
elogind Enable session tracking via sys-auth/elogind
firewall Pull in kde-plasma/plasma-firewall for system firewall administration
grub Pull in Breeze theme for sys-boot/grub
gtk Enable Breeze widget style and system settings module for GTK+
handbook Enable handbooks generation for packages by KDE
kwallet Enable support for KWallet auto-unlocking via kde-plasma/kwallet-pam
legacy-systray Add support for legacy applications using kde-plasma/xembed-sni-proxy
networkmanager Enable net-misc/networkmanager support
plymouth Pull in Breeze theme for sys-boot/plymouth
pulseaudio Install Plasma applet for PulseAudio volume management
sddm Pull in the x11-misc/sddm display manager and system settings module
sdk Pull in kde-plasma/plasma-sdk for Plasma development
smart Pull in kde-plasma/plasma-disks for disk health monitoring
systemd Enable use of systemd-specific libraries and features like socket activation or session tracking
thunderbolt Pull in kde-plasma/plasma-thunderbolt control center module
wallpapers Install wallpapers for the Plasma Workspace

Emerge

root #emerge --ask kde-plasma/plasma-meta

В качестве альтернативы пакет kde-plasma/plasma-desktop предоставляет очень базовый рабочий стол, оставляя пользователям свободу устанавливать только те дополнительные пакеты, которые им необходимы — самостоятельно заменяя недостающие функции.

Заметка
Пожалуйста, обратите внимание, что при такой установке будут пропущены важные пакеты, такие как kde-plasma/powerdevil (управление питанием, режимы сна и гибернации) и kde-plasma/systemsettings, если установлен другой пакет выполняющий те же функции.

Запуск Plasma

Менеджер экрана

SDDM (Simple Desktop Display Manager) — рекомендуемый менеджер входа (login manager), который автоматически установится как зависимость от kde-plasma/plasma-meta. Это предпочтительное приложение. В качестве альтернативы LightDM может быть использован; он установится автоматически, если установлен USE-флаг -sddm для пакета kde-plasma/plasma-meta. Измените настройки соответственно в /etc/conf.d/display-manager. Кроме того, убедитесь, что прочитали страницу SDDM, если появляются дополнительные вопросы.

Без менеджера экрана

Plasma can be started the old-fashioned way with startx, but extra care needs to be taken to ensure it gets a valid session.

ФАЙЛ ~/.xinitrc
#!/bin/sh
exec dbus-launch --exit-with-session startplasma-x11

When using Wayland, Plasma can be launched with dbus-launch --exit-with-session startplasma-wayland

This can be added to a user's profile file which will be executed when logging in:

ФАЙЛ ~/.profile
#!/bin/sh
dbus-launch --exit-with-session startplasma-wayland

Виджеты

Много полезных виджетов в пакете kde-plasma/kdeplasma-addons (уже установленный пакетом kde-plasma/plasma-meta):

root #emerge --ask kde-plasma/kdeplasma-addons

System tray

Plasma 5 uses the StatusNotifier specification for systray icons [1]. As not all applications have been ported to the new system, some workarounds exist [2], and Plasma 5 has a means to convert old xembed-based system tray icons to StatusNotifier icons.

Legacy support is enabled by activating legacy-systray for kde-plasma/plasma-meta, which is pulling in kde-plasma/xembed-sni-proxy.

ФАЙЛ /etc/portage/package.use/kde-plasma-settingsChange USE flags for kde-plasma/plasma-meta
# xembed system tray support for legacy applications
kde-plasma/plasma-meta legacy-systray

Pidgin

net-im/pidgin requires x11-plugins/pidgin-indicator. After install, the Ubuntu Indicator plugin can be found under Tools | Plugins.

KWallet

Многие пользователи познакомятся с kde-frameworks/kwallet, зашифрованным хранилищем паролей Plasma, когда будут добавлять поддержку (беспроводного) сетевого подключения после входа пользователя или учётные записи электронной почты в kde-apps/kmail.

Для управления KWallet'ами, а также для импорта и экспорта паролей, существует пакет kde-apps/kwalletmanager:

root #emerge --ask kde-apps/kwalletmanager

Автоматическая разблокировка KWallet

kde-plasma/kwallet-pam provides a mechanism to avoid being subsequently asked for access to kwallet after login.

root #emerge --ask kde-plasma/kwallet-pam

Этому пакету требуется следующая настройка:

  • Для безопасности KWallet, используйте классическое шифрование blowfish вместо GPG
  • Используйте один и тот же пароль и для входа в систему и для kwallet
  • Настройте менеджер экрана с поддержкой PAM — как x11-misc/sddm, так и x11-misc/lightdm удовлетворяют этому требованию:
ФАЙЛ /etc/pam.d/sddmСтроки для разблокировки KWallet PAM с помощью SDDM
-auth           optional        pam_kwallet5.so
-session        optional        pam_kwallet5.so auto_start
Заметка
Для LightDM необходимо править файл /etc/pam.d/lightdm.
Заметка
If the filesystem containing a user's KWallet files is mounted by pam_mount upon logging on, it may be required to copy ~/.local/share/kwalletd/kdewallet.salt to the same path on the root filesystem. Otherwise, PAM attempts to unlock KWallet before the home directory is available and fails. The file ~/.local/share/kwalletd/kdewallet.kwl which actually contains the encrypted KWallet passwords does not need to be copied.

Отключение KWallet

To disable the KWallet subsystem completely, edit the following file:

ФАЙЛ ~/.config/kwalletrc
[Wallet]
Enabled=false

Скрипты для запуска/остановки агента SSH/GPG

Сценарии агента ssh-agent находятся в /etc/xdg/plasma-workspace/env и etc/xdg/plasma-workspace/shutdown. Для сценариев выключения необходим установленный бит запуска, так как они выполняются напрямую, а не включаются другими сценариями. Статья Keychain содержит более подробную информацию на эту тему.

Non-root user authentication for dialogs

Some KDE dialogs such as printers, adding wireless networks and adding users require administrator authentication. This is handled through sys-auth/polkit and operates independently from app-admin/sudo. By default in Gentoo, the root account is the only administrator, and so even if a user account can run root commands through sudo, authentication in these KDE dialogs will fail.

Adding wireless networks using net-misc/networkmanager is allowed by a polkit rule which is part of the Gentoo package and already allows access for every user in the group plugdev. For other dialogs the behavior must be configured manually: If all users of the group wheel are required to be administrators, create a copy of /etc/polkit-1/rules.d/50-default.rules starting with a number lower than 50, and edit the line return ["unix-user:0"] to the following:

ФАЙЛ /etc/polkit-1/rules.d/49-wheel.rulesAdministrator wheel group
polkit.addAdminRule(function(action, subject) {
    return ["unix-group:wheel"];
});

The Polkit wiki page provides more details on rules configuration.

Запуск графических приложений без прав root

Предупреждение
It could be a very bad idea to start GUI applications with root privileges, versus adding the regular user to the relevant group or simply just running the command unprivileged. Only use kdesu when absolutely necessary.

KDE Plasma has a utility in order to start graphical programs with root privileges. It is provided by kde-plasma/kde-cli-tools - if built with USE flag kdesu, a graphical frontend to kde-frameworks/kdesu is installed. This requires Xorg, and only works within X[3].

ФАЙЛ /etc/portage/package.use/kde-plasma-settingsChange USE flags for kde-plasma/kde-cli-tools
# Build graphical frontend for kde-frameworks/kdesu (requires X)
kde-plasma/kde-cli-tools kdesu X

Не забудьте пересобрать пакет, чтобы применить изменения:

root #emerge -1 kde-cli-tools

It can be used by invoking kdesu either from KRunner or a terminal emulator:

user $kdesu <program-name>

A message dialog will be displayed prompting for the root password.

Заметка
Some applications such as kwrite, dolphin etc. refuse to be opened with kdesu for security reasons.
Заметка
By default, kdesu internally uses su, which may not be preferred for some use cases. It is possible to use sudo or other sudo-compatible commands, by changing kdesurc:
ФАЙЛ $XDG_CONFIG_HOME/kdesurcИспользование sudo вместо su в kdesu
[super-user-command]
super-user-command=sudo

Файлы

XDG standard directories are being used for KDE Plasma and KDE applications:

  • $XDG_CONFIG_HOME (defaults to $HOME/.config) - Configuration files
  • $XDG_DATA_HOME (defaults to $HOME/.local/share) - Application data

Удаление

The first step to remove KDE Plasma and its dependencies is to unmerge kde-plasma/plasma-meta. This will not yet remove any files from the installation, so the desktop environment will keep running:

root #emerge --ask --depclean --verbose kde-plasma/plasma-meta

In a next step it makes sense to scan /etc/portage directory for any KDE Plasma specific entries in package.mask, package.unmask and package.accept_keywords and clean them up.

Finally, run the command to uninstall any Plasma packages and their dependencies. It would make sense to quit any running Plasma session beforehand:

root #emerge --ask --depclean  
Предупреждение
Please note that this will not just remove KDE Plasma but also any other package not registered (or being depended on) in @world. It makes sense to carefully read through the list of packages to be removed before continuing. Alternatively, run this command prior to unmerging of kde-plasma/plasma-meta to get an overview of already dangling packages on the system.

Приложения

Сервисный релиз содержит в себе различные приложения и библиотеки, основанные на Qt 5/KDE Frameworks 5.

Доступные версии

KDE Gentoo Ebuild repository Status
KDE Gear 22.08.3 kde-apps/kde-apps-meta-22.08.3 gentoo Stable for amd64, arm64, and x86; testing for ppc64
KDE Gear 22.12.3 kde-apps/kde-apps-meta-22.12.3 gentoo Testing for amd64, arm64, ppc64 and x86
KDE Gear 23.04 beta kde-apps/kde-apps-meta-23.03.80 gentoo Masked, testing for amd64, arm64 and x86
KDE Gear 23.04 stable branch kde-apps/kde-apps-meta-23.04.49.9999 KDE Live version
KDE Gear master branch kde-apps/kde-apps-meta-9999 KDE Live version

Релизы KDE подразделены на следующие мета-пакеты:

Название пакета Описание
kde-apps/kdeaccessibility-meta Приложения и утилиты для людей с ограниченными возможностями.
kde-apps/kdeadmin-meta Административные утилиты для управления системой.
kde-apps/kdecore-meta Базовые приложения, такие как менеджер файлов, текстовый редактор, эмулятор терминала.
kde-apps/kdeedu-meta Образовательные приложения и игры.
kde-apps/kdegames-meta Стандартные игры.
kde-apps/kdegraphics-meta Графические приложения, такие как программы для просмотра изображений, выделения цвета и так далее
kde-apps/kdemultimedia-meta Приложения и сервисы для проигрывания аудио и видео.
kde-apps/kdenetwork-meta Сетевые приложения и сервисы VNC.
kde-apps/kdepim-meta Приложения PIM, такие как почтовая программа, адресная книга, органайзер, и так далее
kde-apps/kdesdk-meta Различные инструменты разработки.
kde-apps/kdeutils-meta Стандартные утилиты рабочего стола, такие как архиватор, калькулятор, и так далее

Установка

Пакет kde-apps/kde-apps-meta включает в себя полный набор Сервисного релиза:

root #emerge --ask kde-apps/kde-apps-meta

If not all the packages are required, one or several smaller meta packages from the list above may be picked instead. Alternatively, it is possible to set USE flags to reduce the number of applications installed by kde-apps/kde-apps-meta.

Локализация

Plasma 5 и приложения поставляются с собственным пакетным набором [[:|локализаций]]. Их можно включить в системных настройках.

KDE PIM

KDE PIM is a whole suite of applications to manage personal information including mail, calendar, contacts and more. It has several optional runtime dependencies to extend its functionality:

Frameworks

KDE Frameworks 5 представляет собой набор библиотек и фреймворков в качестве основы для KDE Plasma 5 и KDE Applications, но может быть использован любым Qt-приложением.

Frameworks, в основном библиотеки, обеспечивающие небольшой функциональностью пользователя, не требуют отдельной установки - все необходимые пакеты будут затянуты автоматически в качестве зависимостей.

Доступные версии

KDE Gentoo Ebuild repository Status
KDE Frameworks 5.102.0 kde-frameworks/*-5.102.0 gentoo Stable for amd64, arm64, and x86; testing for arm, loong, ppc64 and riscv
KDE Frameworks 5.104.0 kde-frameworks/*-5.104.0 gentoo Testing for amd64, arm, arm64, loong, ppc64 riscv and x86
KDE Frameworks kf5 branch kde-frameworks/*-5.9999 KDE Live version

Другое ПО из состава KDE

Наиболее важные приложения KDE находятся в Gentoo репозитории, большинство из них размещается в категориях kde-apps и kde-misc.

Устранение проблем

Refer to the Troubleshooting sub-article.

Смотрите также

Внешние ссылки

References