KDE

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page KDE and the translation is 100% complete.

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

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

Сервисы

Варианты данных сервисов по умолчанию будут установлены автоматически (при следовании указанным ниже инструкциям по установке) в соответствии с выбранным ранее профилем, но всё ещё нуждаются в корректной настройке до первого запуска KDE Plasma. Для отклонения от вариантов по умолчанию рекомендуется установить их заранее, до KDE Plasma или KDE Release Service, с помощью emerge --oneshot чтобы Portage учёл их. Пройдите по ссылкам ниже для получения информации о настройке этих сервисов.

Трекер сессий

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

  • elogind: Самостоятельный пакет logind, выбор по умолчанию для профиля desktop/plasma, извлечён из проекта systemd для использования с OpenRC или иными системами инициализации
  • systemd: Использует трекер сессий systemd. Пользователям systemd не требуется предпринимать каких-либо иных действий.

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

Совет
По умолчанию используется systemd-utils на системах с OpenRC и systemd на системах с systemd. Пользователи, не желающие менять поставщиков, должны пропустить этот шаг.

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

  • udev: Включает поддержку динамического и постоянного именования устройств Linux udev.
  • eudev: Форк udev для лучшей совместимости со старыми ядрами и различными тулчейнами. Более не поддерживается Gentoo, не рекомендован.
  • systemd: Использует менеджер устройств systemd. Пользователям systemd не требуется предпринимать каких-либо иных действий.

Разное

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

X-сервер

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

Plasma

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

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

KDE Gentoo Репозиторий Статус
KDE Plasma 5.27.10 kde-plasma/plasma-meta-5.27.10 gentoo Stable for amd64, arm64, and x86; Testing for arm, loong, ppc64, riscv
KDE Plasma 5.27.11 kde-plasma/plasma-meta-5.27.11 gentoo Testing for amd64, arm, arm64, loong, ppc64, riscv and x86
KDE Plasma 6.0.1 kde-plasma/plasma-meta-6.0.1 gentoo Masked, testing for amd64
KDE Plasma 6.0 stable branch kde-plasma/plasma-meta-6.0.49.9999 KDE Live version
KDE Plasma 6 master branch kde-plasma/plasma-meta-9999 KDE Live version
Заметка
Перед продолжением убедитесь, что выбран профиль Plasma.

Установка

USE-флаги

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

USE flags for kde-plasma/plasma-meta Merge this to pull in all Plasma 6 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
cups Add support for CUPS (Common Unix Printing System)
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
flatpak Pull in kde-plasma/flatpak-kcm for flatpak permissions 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
oxygen-theme Pull in Oxygen icons, sound theme and visual style for KDE Plasma
plymouth Pull in Breeze theme for sys-boot/plymouth
pulseaudio Install Plasma applet for PulseAudio volume management
qt5 Pull in required packages for seamless integration of KF5/Qt5-based applications
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
unsupported Allow packages that are known to ruin runtime experience ** DO NOT FILE BUGS WITH THIS ENABLED **
wacom Pull in kde-plasma/wacomtablet control center module
wallpapers Install wallpapers for the Plasma Workspace
webengine Use kde-apps/khelpcenter to access the locally installed KDE Help System Handbook
xwayland Enable Wayland windows screensharing to XWayland applications via gui-apps/xwaylandvideobridge

Emerge

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

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

Предупреждение
Пожалуйста, обратите внимание, что установка только kde-plasma/plasma-desktop пропустит важные пакеты, необходимые для работы KDE Plasma, такие как kde-plasma/powerdevil (управление питанием, suspend и гибернация), 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 может быть запущена по-старинке через startx, но требуется особая осторожность для удостоверения наличия действительной сессии.

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

При использовании Wayland Plasma можно запускать с помощью dbus-launch --exit-with-session startplasma-wayland

Следующее может быть добавлено в пользовательский файл profile, который будет выполнен при входе в систему:

ФАЙЛ ~/.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

Системный трей

Plasma для значков системного трея использует спецификацию StatusNotifier [1]. Так как не все приложения были портированы на новую систему, существуют обходные пути [2] и Plasma должна преобразовывать старые значки системного трея, основанные на XEmbed, в основанные на StatusNotifier.

Поддержка устаревшего стандарта может быть включена выставлением legacy-systray для kde-plasma/plasma-meta, который установит kde-plasma/xembed-sni-proxy.

ФАЙЛ /etc/portage/package.use/kde-plasma-settingsИзменение USE-флагов для kde-plasma/plasma-meta
# Поддержка значков системного трея XEmbed для устаревших приложений
kde-plasma/plasma-meta legacy-systray

Pidgin

net-im/pidgin требует x11-plugins/pidgin-indicator. После установки плагин Ubuntu Indicator может быть найден в меню 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 предоставляет механизм для того, чтобы избежать запросов доступа к KWallet после входа в систему.

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.
Заметка
Если файловая система, содержащая пользовательские файлы KWallet, монтируется pam_mount при входе, то можеи потребоваться скопировать ~/.local/share/kwalletd/kdewallet.salt по такому же пути в корневой файловой системе. Иначе, PAM будет пытаться разблокировать KWallet до того, как домашний каталог станет доступен, и не сможет этого сделать. Файл ~/.local/share/kwalletd/kdewallet.kwl, содержащий собственно зашифрованные пароли KWallet копировать не нужно.

Отключение KWallet

Чтобы полностью отключить подсистему KWallet, измените следующий файл:

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

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

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

Аутентификация обычного пользователя для диалогов

Некоторые диалоги KDE, такие как настройка принтеров, добавление беспроводных сетей и добавление пользователей, требуют аутентификации администратора. Это обрабатывается через sys-auth/polkit и работает независимо от app-admin/sudo. По умолчанию в Gentoo, учётная запись root - единственный администратор, и даже если учётная запись пользователя может выполнять команды от имени root через sudo, аутентификация в этих диалогах KDE завершится неудачей.

Добавление беспроводных сетей с помощью net-misc/networkmanager разрешено правилом polkit, являющимся частью пакета Gentoo, и уже разрешает доступ всем пользователям в группе plugdev. Для других диалогов поведение должно быть настроено вручную: если всем пользователям в группе wheel нужно быть администраторами, создайте копию файла /usr/share/polkit-1/rules.d/50-default.rules, начинающуюся с числа меньше 50, и измените строку return ["unix-user:0"] на следующую:

ФАЙЛ /etc/polkit-1/rules.d/49-wheel.rulesГруппа администраторов wheel
polkit.addAdminRule(function(action, subject) {
    return ["unix-group:wheel"];
});

Вики-страница Polkit содержит больше информации по поводу настройки правил.

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

Предупреждение
Запуск графический приложений с привилегиями root может быть крайне плохой идеей, в отличие от добавления пользователя в соответствующую группу или запуска команды без привилегий. Используйте kdesu только в случае крайней необходимости.

KDE Plasma имеет утилиту для запуска графических программ с привилегиями root. Она предоставляется пакетом kde-plasma/kde-cli-tools - будучи собранным с USE-флагом kdesu, он устанавливает графическу оболочку к kde-frameworks/kdesu. Это требует Xorg и работает только в X[3].

ФАЙЛ /etc/portage/package.use/kde-plasma-settingsСмена USE-флагов для kde-plasma/kde-cli-tools
# Сборка графической оболочки для kde-frameworks/kdesu (требует X)
kde-plasma/kde-cli-tools kdesu X

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

root #emerge -1 kde-cli-tools

Она может быть использована путём вызова kdesu из KRunner или эмулятора терминала:

user $kdesu <program-name>

Будет показано диалоговое окно, запрашивающее пароль root.

Заметка
Некоторые приложения (например, kwrite, dolphin и прочие) не будут запускаться через kdesu из соображений безопасности.
Заметка
По умолчанию kdesu внутри использует su, что может в некоторых случаях быть нежелательным. Использование sudo или иных совместимых с sudo комманд возможно после правки kdesurc:
ФАЙЛ $XDG_CONFIG_HOME/kdesurcИспользование sudo вместо su в kdesu
[super-user-command]
super-user-command=sudo

Файлы

В KDE Plasma и приложениях используются стандартные XDG каталоги:

  • $XDG_CONFIG_HOME (по умолчанию $HOME/.config) — конфигурационные файлы
  • $XDG_DATA_HOME (по умолчанию $HOME/.local/share) - данные приложений

Удаление

Первый шаг к удалению KDE Plasma и её зависимостей - удаление kde-plasma/plasma-meta. Это не удалит никаких файлов из текущей установки, так что окружение рабочего стола продолжит работать:

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

Следующим шагом имеет смысл просмотреть директорию /etc/portage на наличие каких-либо специфичных для KDE Plasma строк в package.mask, package.unmask и package.accept_keywords и удалить их.

Наконец, выполните команду удаления всех пакетов Plasma и их зависимостей. Имеет смысл заранее выйти из всех активных сессий Plasma:

root #emerge --ask --depclean  
Предупреждение
Пожалуйста, обратите внимание, что это удалит не просто KDE Plasma, но также и любые пакеты не зарегистрированные в или не зависящие от набора @world. Имеет смысл внимательно прочитать список пакетов, предлагаемых к удалению, прежде чем продолжать. Или же выполните эту команду до удаления kde-plasma/plasma-meta чтобы получить представление об уже имеющихся в системе висячих пакетах.

Приложения

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

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

KDE Gentoo Репозиторий Статус
KDE Gear 23.08.5 kde-apps/kde-apps-meta-23.08.5 gentoo Stable for amd64, arm64, ppc64 and x86
KDE Gear 24.02.0 kde-apps/kde-apps-meta-24.02.0 gentoo Masked, testing for amd64
KDE Gear 24.02 stable branch kde-apps/kde-apps-meta-24.02.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 Офисные приложения: почтовая программа, адресная книга, органайзер и прочее.
kde-apps/kdesdk-meta Различные утилиты разработки.
kde-apps/kdeutils-meta Стандартные утилиты рабочего стола: архиватор, калькулятор и прочее.

Установка

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

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

Если нужны не все пакеты, то вместо этого можно выбрать один или несколько метапакетов поменьше из списка выше. Или же можно выставить USE-флаги в целях уменьшения количества приложений, установленных пакетом kde-apps/kde-apps-meta.

Локализация

Plasma и приложения поставляются с собственным пакетным набором локализаций. Включите нужные локализации в Системных Настройках.

KDE PIM

KDE PIM - полноценный комплект приложений для управления персональными данными, включающий в себя почту, календарь, контакты и другое. Он имеет несколько опциональных runtime-зависимостей, расширяющих его функциональность:

Frameworks

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

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

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

KDE Gentoo Репозиторий Статус
KDE Frameworks 5.115.0 kde-frameworks/*-5.115.0 gentoo Stable for amd64, arm64, and x86; testing for arm, loong, ppc64 and riscv
KDE Frameworks 6.0.0 kde-frameworks/*-6.0.0 gentoo Masked, testing for amd64
KDE Frameworks 5 (kf5) branch kde-frameworks/*-5.239.9999 KDE Live version
KDE Frameworks 6 (master) branch kde-frameworks/*-9999 KDE Live version

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

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

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

Обратитесь к подстатье Устранение проблем.

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

  • Обновление Plasma 4 до 5 — информация по обновлению Plasma 4, миграции и решению проблем.
  • KDE/Ebuild repository — предоставляет инструкции по добавлению разрабатываемого репозитория Gentoo KDE в систему.
  • kde-sunset ebuild repository — для старых приложений KDE, которые были удалены из основного репозитория.
  • Desktop environment — предоставляет список сред рабочего стола, доступных в Gentoo.

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

Ссылки