- Что такое gdm3, kdm, lightdm? Как установить и удалить их?
- Диспетчер отображения GNOME ( gdm3 )
- Диспетчер отображения KDE ( kdm )
- LightDM
- Что такое диспетчер отображения Linux? Как выбрать и установить один
- Что такое Диспетчер отображения?
- Чем не является Диспетчер отображения
- Зачем заменять Диспетчер отображения?
- Шесть Linux Display Manager, на которые вы можете переключиться
- 1. КДМ
- 2. GDM (Диспетчер отображения GNOME)
- 3. SDDM (простой диспетчер отображения рабочего стола)
- 4. LXDM
- 5. LightDM
- 6. XDM
- Как заменить Диспетчер отображения в Linux?
- Debian, Ubuntu, Linux Mint и большинство производных Ubuntu
- Для Arch Linux и Manjaro
- Изменить Диспетчер отображения в Fedora
- Для PCLinuxOS
- Для openSUSE
- Измените свой Диспетчер отображения Linux сегодня
- Как устроена графика в Linux: обзор различных сред оформления рабочего стола
- Основные компоненты, из которых состоит графика
- DM (Display Manager)
- Display Server
- Практикум «запускаем Х и приложения в нём»
- Компоненты DE
- Компоненты DE: кнопка «Пуск» и «Панель задач»
- Компоненты DE: WM (Window Manager)
- Компоненты DE: остальные
- DE (Desktop Environment)
- Многообразие DE
Что такое gdm3, kdm, lightdm? Как установить и удалить их?
Что такое gdm3, kdm, lightdm? Как их установить, снять и починить? Кто-нибудь может объяснить в деталях?
gdm3 , kdm И lightdm все менеджеры дисплея . Они предоставляют графический логин и обрабатывают аутентификацию пользователя.
Диспетчер отображения предоставляет пользователю экран входа в систему. Сессия начинается, когда пользователь успешно вводит правильную комбинацию имени пользователя и пароля.
Диспетчер отображения GNOME ( gdm3 )
gdm3 преемником gdm которого был менеджер дисплеев GNOME. Более новая gdm3 версия использует минимальную версию gnome-shell и обеспечивает тот же внешний вид, что и сеанс GNOME3. Является каноническим выбором начиная с Ubuntu 17.10. Вы можете установить его с помощью:
и удалите его с помощью:
Диспетчер отображения KDE ( kdm )
kdm был менеджером отображения KDE. Но в KDE5 он устарел, так как он более удобен в SDDM качестве диспетчера отображения и, следовательно, поставляется по умолчанию с Kubuntu. Вы можете установить его с помощью:
и удалите его с помощью:
LightDM
LightDM был решением Canonical для дисплеев. Он должен был быть легким и поставляется по умолчанию с Ubuntu, Xubuntu и Lubuntu. Это настраивается, с различными темами приветствия доступны.
Вы можете установить его с помощью:
И удалите его с помощью:
Ремонт это широкий срок. Однако, если у вас установлено несколько дисплеев, вы можете выбрать между ними:
Вы можете использовать любое имя диспетчера отображения вместо gdm3 вышеуказанной команды, и это позволит вам выбирать между ними. Вы должны перезагрузиться, чтобы изменения вступили в силу.
Чтобы проверить, какой диспетчер отображения используется в данный момент, выполните следующую команду:
Важно отметить, что в настоящее время из-за ошибки (я проверял в 16.04) вы не можете запустить сеанс GNOME3 или Ubuntu Unity с использованием SDDM. Таким образом, если у вас есть как KDE и Unity или gnome3 установлены, убедитесь , что ваш менеджер дисплея либо gdm3 или lightdm .
Источник
Что такое диспетчер отображения Linux? Как выбрать и установить один
Вы, вероятно, довольны своей операционной системой Linux, но время от времени ее можно обновлять. Один из способов сделать это — заменить некоторые стандартные приложения и компоненты. Подумайте о файловом менеджере по умолчанию, текстовом редакторе или даже о среде рабочего стола или ядре.
Одним из переключаемых компонентов, который часто упускают из виду, является диспетчер отображения. Но что это за компонент? Как вы переключаетесь на новый менеджер дисплеев в Linux? Давайте разберемся.
Что такое Диспетчер отображения?
Диспетчер отображения, также известный как «менеджер входа в систему», отвечает за запуск сервера отображения и загрузку рабочего стола. Это происходит сразу после правильного ввода вашего имени пользователя и пароля
Проще говоря, он управляет сессиями пользователей и управляет аутентификацией пользователей. Большая часть магии диспетчера происходит «под капотом». Единственным видимым элементом является окно входа в систему, которое иногда называют «приветствующим».
Чем не является Диспетчер отображения
Вы, наверное, уже знаете, что на вашем компьютере с Linux есть менеджер окон и сервер отображения.
Диспетчер отображения — это отдельная часть программного обеспечения. Хотя все три взаимодействуют, они имеют разную функциональность и выполняют разные задания.
Примеры оконного менеджера включают в себя:
Некоторые известные серверы отображения для Linux:
(Многие дистрибутивы Linux используют Wayland в качестве сервера отображения по умолчанию, и некоторые другие также движутся в этом направлении, поэтому лучше узнать больше об использовании Linux с Wayland.)
Между тем, некоторые менеджеры отображения:
- GDM (Диспетчер отображения Gnome)
- LightDM
- LXDM
Ниже мы рассмотрим еще несколько менеджеров отображения.
Зачем заменять Диспетчер отображения?
Вы спрашиваете, зачем кому-то заменять менеджер дисплеев? Ну, вот несколько вероятных сценариев:
Есть несколько популярных менеджеров отображения для Linux. Вы заметите, что они очень похожи по внешности; Основными отличиями являются размер, сложность и то, как они управляют пользователями и сессиями.
Шесть Linux Display Manager, на которые вы можете переключиться
С новым установленным диспетчером отображения вы можете повеселиться с темами. MDM — лучший выбор, если настройка является вашим приоритетом, поскольку он поддерживает как старые GDM, так и новые HTML-темы. DeviantART показывает много коллекция тем для различных дисплеев, например. Если вы используете SDDM, вы можете найти пакеты тем для него в репозиториях.
Но сначала, на какой менеджер дисплеев вы собираетесь перейти?
1. КДМ
Диспетчер отображения для KDE вплоть до KDE Plasma 5, KDM имеет множество опций настройки. Вы можете легко настроить его через модуль управления в Системных настройках. Там вы можете выбрать, какую тему KDM использовать, или перейти к простому приветствию, которое позволяет настроить фон, приветственное сообщение и шрифт.
Другие функции включают в себя:
- Быстрое переключение пользователей
- Показать список пользователей
- Включить отключение root
- Разрешить вход без пароля
- Автоматическая авторизация
- Сканирование отпечатков пальцев
KDM поддерживает X и Wayland, а также может обнаруживать установленные среды рабочего стола и оконные менеджеры. Затем они предлагаются в виде списка, чтобы вы могли выбрать, какой из них начать при вводе учетных данных.
Хотя некоторые функции могут ошеломить новичка, KDM легко настроить благодаря простому графическому диалогу.
2. GDM (Диспетчер отображения GNOME)
Что такое KDM для KDE, а GDM3 для GNOME — диспетчера отображения по умолчанию в популярной рабочей среде Linux. Как и KDM, он поддерживает X и Wayland и предлагает:
- Автоматический вход
- Скрытие списка пользователей
- Логин без пароля
- Пользовательские сессии
- Встроенные темы
- Многопользовательский логин
- Быстрое переключение сеансов
- Сканирование отпечатков пальцев
- Проверка подлинности с помощью смарт-карты
Конфигурирование GDM3 может быть выполнено либо через специальный диалог в Системных настройках, либо путем редактирования файлов конфигурации.
Обратите внимание, что GDM3 отличается от устаревшего GDM. Хотя они могут выглядеть одинаково, GDM3 не имеет обратной совместимости с устаревшими темами GDM, а параметры скрыты в файлах конфигурации.
3. SDDM (простой диспетчер отображения рабочего стола)
SDDM — сравнительно новая сцена диспетчера отображения. Первоначально выпущенный в 2013 году, он выжил, а более старые конкуренты, такие как SLiM и Mint Display Manager, сложились.
Благодаря поддержке X и Wayland SDDM опирается на темы QML и заменил KDM в качестве диспетчера отображения по умолчанию в KDE Plasma 5.
- Автоматический вход
- Num Lock включен
- Изменить пользователей приветствия
- Поддержка тем
Как и в других диспетчерах отображения без излишеств, вы можете настроить SDDM, отредактировав файл конфигурации (sddm.conf). Если вы используете SDDM в KDE, в Системных настройках есть модуль конфигурации. В качестве альтернативы используйте удобный sddm-конфиг-редактор утилита.
4. LXDM
LXDM является частью среды LXDE, но комфортно работает в других средах рабочего стола, поскольку не имеет много зависимостей. Вы можете настроить его через собственную утилиту конфигурации или отредактировать файлы конфигурации в / etc / lxdm (или, если вы используете Lubuntu, / etc / xdg / lubuntu / lxdm).
Используя LXDM, вы можете ожидать:
- Настраиваемый список пользователей
- Автоматическая авторизация
- Иконки для каждого пользователя
- Переключение пользователей
- Таймер автологин
- Пользовательские фоновые изображения
Как официальная документация, так и неофициальные учетные записи свидетелей на различных форумах отмечают, что LXDM не завершает пользовательские процессы при выходе из системы. Чтобы это произошло, Modify файл / etc / lxdm / PostLogout.
LXDM может показаться странным, но он быстрый, поэтому, если это приемлемый компромисс для вас, попробуйте.
5. LightDM
Пожалуй, самый популярный и, безусловно, самый универсальный менеджер дисплеев — LightDM. Заменив старые дисплеи менеджеров в популярных дистрибутивах, они настраиваемы и многофункциональны. LightDM также легок и поддерживает X.Org и Mir.
С LightDM вы можете ожидать:
- Приветвители для GTK, Qt / KDE, Unity и других
- Темы экрана входа
- Список пользователей
- Пользовательское фоновое изображение
- Регулируемое положение окна
Конфигурационные файлы должны быть отредактированы, чтобы сделать эти изменения — самый простой способ Настройки LightDM GTK Greeter инструмент.
6. XDM
Это менеджер дисплеев по умолчанию для X Window System, который был впервые выпущен в 1988 году. Это минималистский менеджер дисплеев, подходящий для систем с низкими характеристиками или систем со скромными требованиями.
Несмотря на это, XDM все еще предлагает некоторые функции:
- Темы
- Установить фоновые обои
- Твик шрифты
- Отрегулируйте положение окна входа
- Обрабатывает несколько сеансов X
- Логин без пароля
Большинство настроек применяются путем редактирования etc / X11 / xdm / Xresources.
Как заменить Диспетчер отображения в Linux?
Видели что-то, что вам нравится? Возможно, вы хотите переключить диспетчер отображения в Ubuntu на LightDM.
Независимо от ваших предпочтений и дистрибутива, есть только два шага для замены вашего текущего диспетчера отображения в Linux:
- Установите новый менеджер отображения
- Установите его как значение по умолчанию
Первая часть процесса проста, так как вам нужно только найти подходящий пакет для вашего дистрибутива и установить его. Вы можете удалить старый диспетчер отображения, если хотите, но в большинстве случаев в этом нет необходимости.
Настройка нового диспетчера отображения по умолчанию отличается для каждого дистрибутива. Это сводится к редактированию нескольких файлов конфигурации или выполнению простой однострочной команды в терминале.
Используйте это краткое руководство, чтобы настроить выбранный вами менеджер дисплеев, который вы уже должны были установить.
Debian, Ubuntu, Linux Mint и большинство производных Ubuntu
При установке нового диспетчера отображения должен быть запущен инструмент dpkg -configure. Если нет, запустите его вручную:
- Запустите sudo dpkg-переконфигурировать gdm3
- Выберите менеджер отображения по умолчанию в появившемся диалоговом окне.
Вы можете заменить «gdm3» на любой из диспетчера отображения, который в настоящее время установлен в вашей системе. Если это не удалось, отредактируйте файл / etc / X11 / default-display / manager с правами суперпользователя.
Для Arch Linux и Manjaro
Включите службу systemd для вашего нового диспетчера отображения:
systemctl включить displaymanager.service -f
Если это не работает, пользователи Manjaro могут сначала попытаться отключить предыдущий менеджер дисплея:
sudo systemctl stop gdm sudo systemctl отключить gdm sudo systemctl включить lightdm.service sudo systemctl запустить lightdm
в то время как в Arch Linux вам, возможно, придется удалить файл /etc/systemd/system/default.target и создать файл display-manager.service в каталоге / etc / systemd / system. Этот новый файл должен быть символической ссылкой на файл службы вашего нового диспетчера отображения в / usr / lib / systemd / system /.
Изменить Диспетчер отображения в Fedora
Начните с отключения старого диспетчера отображения, включите только что установленную замену, затем перезагрузите компьютер:
- Запустите systemctl отключить [old display manager]
- Следуйте за этим с включением systemctl [new display manager]
- Затем перезагрузите
Когда Fedora перезагрузится, это будет с новым менеджером отображения.
Для PCLinuxOS
Вы должны иметь возможность выбрать свой новый диспетчер отображения на рабочем столе.
- Открыть Центр управления> Загрузка
- Найти Настройка диспетчера отображения
- Выберите менеджер дисплея, который вы установили ранее
Если система не подтверждает изменения, отредактируйте файл / etc / sysconfig / desktop и установите новый диспетчер отображения.
Для openSUSE
Чтобы изменить диспетчер отображения в openSUSE, сначала загрузите замену и подтвердите место установки.
альтернативы обновления sudo —set default-displaymanager [FILEPATH]
Предпочитаете сменить диспетчер отображения с помощью инструмента рабочего стола?
- Установите yast2-альтернативы
- Откройте Центр управления
- Перейдите в Диспетчер отображения
- Установите новый менеджер отображения
Ваш новый менеджер дисплея должен активироваться при следующей перезагрузке.
Измените свой Диспетчер отображения Linux сегодня
Как вы уже видели, замена диспетчера дисплея не так сложна, как кажется. Как только вы начнете читать больше об их функциях, у вас может возникнуть желание протестировать несколько разных дисплеев в поисках лучшего — и я призываю вас сделать это.
Вам не нужно ждать, пока программное обеспечение «сломается», чтобы попробовать что-то новое или поэкспериментировать с новой средой рабочего стола Linux.
Источник
Как устроена графика в Linux: обзор различных сред оформления рабочего стола
Эта статья о том, как устроена графика в Linux и из каких компонентов она состоит. В ней много скриншотов с различными реализациями сред рабочих столов.
Если вы не сильно различаете KDE и GNOME или различаете, но хотели бы узнать, какие еще есть альтернативы, то эта статья для вас. Она обзорная, и хотя в ней много названий и немного терминов, материал будет также полезен начинающим и только посматривающим в сторону Linux.
Тема может заинтересовать и продвинутых пользователей при настройке удаленного доступа и при реализации тонкого клиента. Часто встречаю вполне матерых линуксойдов с утверждениями «на сервере только командная строка, и графику подробнее изучать не планирую, так как это всё нужно для простых пользователей». Но даже знатоки Linux с большим удивлением и радостью открывают для себя опцию «-X» у команды ssh (а для этого полезно понимать работу и функции X-сервера).
Источник
Я почти 15 лет обучаю на курсах Linux в «Сетевой Академии ЛАНИТ» и уверен, что многие из тех более пяти тысяч человек, которых обучил, читают и наверняка пишут статьи на Хабр. Курсы всегда очень насыщены (средняя продолжительность курса — пять дней), нужно рассказать темы, на полноценное знакомство с которыми требуется минимум дней десять. И всегда в ходе курса в зависимости от аудитории (новички собрались или матерые администраторы), а также от «вопросов из зала» я делаю выбор, что донести подробнее, а что — более поверхностно, чтобы посвятить больше времени утилитам командной строки и их практическому применению. Таких тем, которыми приходится немного жертвовать, достаточно. Это «История Linux», «Различия в дистрибутивах Linux», «Про лицензии: GPL, BSD, . », «Про графику и среды рабочих столов» (тема этой статьи) и др. Не то, чтобы они не важны, но обычно есть множество более актуальных «здесь и сейчас» вопросов и всего каких-то пять дней… Однако для общего понимания основ ОС Linux, понимания доступного разнообразия (чтобы даже пользуясь одним конкретным дистрибутивом Linux, всё-таки иметь более широкий взгляд на весь этот огромный и необъятный мир, что зовется «Linux») изучать эти темы полезно и нужно.
По ходу статьи по каждому компоненту я указываю ссылки для тех, кому захочется глубже погрузиться в тему, например, на статьи в Википедии (при этом указываю на более полную/полезную версию при наличии англоязычной и русскоязычной статей).
Для основных примеров и скриншотов я использовал дистрибутив openSUSE. Можно было использовать любой другой дистрибутив, разрабатываемый сообществом, с наличием большого количества пакетов в репозитории. Сложно, но возможно, продемонстрировать многообразие оформления рабочего стола на коммерческом дистрибутиве, так как часто в них используются только одна или две наиболее известных сред рабочего стола. Так разработчики сужают себе задачу выпуска стабильной отлаженной ОС. На данную же систему я установил все DM/DE/WM (объяснение этих терминов ниже), которые нашёл в репозитории.
Скриншоты с «синими рамками» как раз и сделаны на openSUSE.
Скриншоты с «белыми рамками» делал на других дистрибутивах, они указаны на скриншоте.
Скриншоты с «серыми рамками» были взяты из интернета, в качестве примеров оформлений рабочего стола из прошлых лет.
Основные компоненты, из которых состоит графика
Выделю три основные компонента и перечислю их в порядке, как они запускаются при старте системы:
- DM (Display Manager);
- Display Server;
- DE (Desktop Environment).
Дополнительно в качестве важных подпунктов у Desktop Environment:
- Apps Manager/Launcher/Switcher (кнопка «Пуск»);
- WM (Window Manager);
- различное ПО, поставляемое вместе со средой рабочего стола.
Подробнее по каждому пункту.
DM (Display Manager)
Первое приложение, которое запускается при старте «графики», — это DM (Display Manager), дисплейный менеджер. Его основные задачи:
- спросить, каких пользователей пустить в систему, запросить аутентификационные данные (пароль, отпечаток пальца);
- выбрать, какую среду оформления рабочего стола запустить.
На текущий момент в различных дистрибутивах широко используются:
- SDDM (сменил KDM),
- GDM,
- LightDM,
- XDM.
- Также можно упомянуть Fly-DM (используемый в AstraLinux).
Список существующих DM ведётся в актуальном состоянии в Wiki-статье.
Стоит отметить, что на следующих скриншотах используется один и тот же дисплейный менеджер LightDM, но в разных дистрибутивах (названия дистрибутивов указаны в круглых скобках). Оцените, насколько по-разному может выглядеть этот DM благодаря работе дизайнеров различных дистрибутивов.
Главное в этом многообразии, чтобы было понятно, что есть такое приложение, которое отвечает за запуск графики и допуск пользователя к этой графике, и есть разные реализации этого приложения, различающиеся внешним видом и немного функционалом (выбор сред оформления, выбор пользователей, версия для плохо видящих пользователей, наличие возможности удаленного доступа по протоколу XDMCP).
Display Server
Display Server — это некий фундамент графики, основная задача которого — работать с видеокартой, монитором и с различными устройствами ввода (клавиатура, мышь, тачпады). То есть приложению (например, браузер или текстовый редактор), которое отрисовывается в «графике», не нужно знать, как напрямую работать с устройствами, не нужно знать про драйверы. Это всё на себя берет X Window.
Когда говорится про Display Server, то много лет в Linux, да и в Unix имелось в виду приложение X Window System или в простонародье X (Иксы).
Сейчас во многих дистрибутивах на смену X внедряют Wayland.
Также можно почитать:
- общее описание архитектуры X’ов,
- запуск X’ов в X’ах,
- Х’ы под ОС Windows (нужны для удаленного запуска графических приложений, например используя PuTTY).
Для начала запустим X’ы и несколько графических приложений в них.
Практикум «запускаем Х и приложения в нём»
Выполнять всё буду от свежесозданного пользователя webinaruser (проще, но не безопаснее было бы всё выполнить от root’а).
- Так как Х’ам нужен доступ к устройствам, даю доступ: Список устройств определил посмотрев ошибки при запуске Х’ов в логе (/home/webinaruser/.local/share/xorg/Xorg.77.log)
% sudo setfacl -m u:webinaruser:rw /dev/tty8 /dev/dri/card0 /dev/fb0 /dev/input/*
- После этого запускаю X’ы:
% X -retro :77 vt8 &
Опции: * -retro — запускают с «серым» классическим фоном, а не с чёрным как по умолчанию; * :77 — задаю (можно любой в разумном диапазоне, только :0 уже скорее всего занят под уже запущенную графику) номер экрана, фактический некий уникальный идентификатор, по которому можно будет различать несколько запущенных X’ов; * vt8 — указывает терминал, здесь /dev/tty8, на котором будут отображаться X’ы).
- Запускаем графическое приложение:
Для этого предварительно задаём переменную, по которой приложение будет понимать, в какие из запущенных у меня X’ов отсылать то, что нужно нарисовать:
Посмотреть список запущенных X’ов можно так:
После того, как задали переменную, можно запускать приложения в наши X’ы — например, запускаю часы:
% xclock -update 1 &
% xeyes -g 200×150-300+50 &
Основные идеи и выводы из этого фрагмента:
- X’ам требуется доступ к устройствам: терминалу, видеокарте, устройствам ввода,
- Сами X’ы никаких элементов интерфейса не отображают — это серое (если с опцией «—retro») или чёрное полотно определённых размеров (например, 1920×1080 или 1024×768), чтобы запускать в нем графические приложения.
- По движению «крестика» видно, что X’ы отслеживают положения мыши и передают эту информацию запущенным в нём приложениям.
- Также X’ы отлавливают нажатия клавиш на клавиатуре и передают эту информацию приложениям.
- Переменная DISPLAY указывает графическим приложениям, в каком экране (каждые X’ы при запуске запускаются с уникальным номером экрана), а следовательно и в какие из запущенных на моей машине, нужно будет рисовать X’ы. (Также есть возможность в этой переменной указать удалённую машину и отсылать вывод на X’ы, запущенные на другой машине в сети.) Так как X’ы запускали без опции -auth, поэтому нет необходимости разбираться с переменной XAUTHORITY или с командой xhost.
- Графические приложения (или как их называют X-клиенты) отрисовываются в X’ах — при этом без возможности их перемещать/закрывать/изменить «-g (Ширина)x(Высота)+(СдвигОтЛевогоКрая)+(СдвигОтВехнегоКрая)». Со знаком «минус» соответственно от правого и от нижнего края.
- Два термина, которые стоит озвучить: X-сервер (так называют X’ы) и X-клиенты (так называют любое графическое приложение, запускаемое в X’ах). Есть небольшая путаница в понимании этой терминологии, многие понимают её в точности до наоборот. В случае, когда я с «клиентской машины» (в терминологии удалённого доступа) подключаюсь к «серверу» (в терминологии удалённого доступа), чтобы отобразить на своём мониторе графическое приложение с сервера, то X-сервер запускается на той машине, где монитор (то есть на «клиентской машине», а не на «сервере»), а X-клиенты запускаются и работают на «сервере», хоть и отображаются на мониторе «клиентской машины».
Компоненты DE
Далее разберём компоненты, из которых обычно состоит рабочий стол.
Компоненты DE: кнопка «Пуск» и «Панель задач»
Начнём с так называемой кнопки «Пуск». Часто это отдельный апплет, используемый на «Панели задач». Также там обычно имеется апплет для переключения между запущенными приложениями.
Посмотрев на разные среды рабочих столов, я обобщил бы подобные приложения под общим названием «Apps Manager (Launcher/Switcher)», то есть инструмент для управления приложениями (запуска и переключением между запущенными), а также укажу утилиты, которые являются примером приложения данного типа.
- Бывает в виде кнопки «Пуск» на классической (во всю длину одного из краёв экрана) «Панели задач»:
○ xfce4-panel,
○ mate-panel/gnome-panel,
○ vala-panel,
○ tint2.
Также можно отдельно выделить «MacOS-образные панели задач» (не на всю длину края экрана), хотя многие панели задач могут отображаться в обоих вариантах. Тут скорее главное отличие чисто визуальное — наличие «эффекта увеличения пиктограмм при наведении».
○ docky,
○ latte-dock,
○ cairo-dock,
○ plank.
И/Или службы, запускающей приложения при нажатии «горячих клавиш» (во многих средах рабочего стола аналогичный компонент обязательно присутствует и позволяет настроить свои собственные горячие клавиши):
○ sxhkd.
Также имеются различные меню-образные «лаунчеры» (от англ. Launch (запускать)):
○ dmenu-run,
○ rofi -show drun,
○ albert,
○ grun.
Компоненты DE: WM (Window Manager)
WM (Оконный менеджер) — некое приложение, которое отвечает за управление окнами, добавляет возможность:
- перемещений окон по рабочему столу (в том числе стандартное с зажатием клавиши Alt за любую часть окна, а не только за заголовок);
- изменение размеров окон, например, перетаскивая за «рамку окна»;
- добавляет к интерфейсу окна «заголовок (title)» и кнопки сворачивания/разворачивания/закрытия приложения;
- понятие, какое приложение находится в «фокусе».
Перечислю наиболее известные (в круглых скобках указываю, в каком DE используется по умолчанию):
Также перечислю «старые WM с элементами DE». Т.е. помимо оконного менеджера в них имеются элементы типа кнопки «Пуск» и «Панели задач», более присущие полноценным DE. Хотя какие они «старые», если и IceWM, и WindowMaker уже выпустили свои обновлённые версии в 2020 году. Получается, что корректнее не «старые», а «старожилы»:
Помимо «классических» («стековых оконных менеджеров») стоит отдельно отметить тайловые WM, которые позволяет размещать окна «черепицей» по всему экрану, а также для некоторых приложений отдельный рабочий стол для каждого запускаемого приложения на весь экран. Это немного непривычно для людей, ранее их не использовавших, но так как я сам достаточно давно использую такой интерфейс, могу сказать, что это вполне удобно и быстро привыкаешь к такому интерфейсу, после чего уже «классические» оконные менеджеры не кажутся удобными.
Также стоит отдельно упомянуть проект Compiz и такое понятие, как «Композитный менеджер окон», использующий возможности аппаратного ускорения для отображения прозрачности, теней, различных трёхмерных эффектов. Около 10 лет назад был бум 3D-эффектов на Linux-десктопах. Сейчас многие из оконных менеджеров, встроенных в DE, частично используют композитные возможности. Недавно появился Wayfire — продукт с аналогичным Compiz функционалом под Wayland.
Подробный список различных оконных менеджеров также можно посмотреть в статье-сравнении.
Компоненты DE: остальные
Также стоит отметить следующие компоненты рабочего стола (здесь использую английские устоявшиеся термины для описания разновидности приложения — это не названия самих приложений):
- Applets(Аплеты):
- ПО (Widget toolkit) — часто со средой поставляется некий «минимальный набор» ПО:
DE (Desktop Environment)
Из перечисленных выше компонентов получается так называемая «Среда оформления рабочего стола». Часто все её компоненты разрабатываются с использованием одних и тех же графических библиотек и с использованием одинаковых принципов оформления. Тем самым, как минимум, выдерживается общий стиль для внешнего вида приложений.
Здесь можно выделить следующие существующие на данный момент среды рабочего стола:
Сравнение по различным параметрам в виде таблицы можно посмотреть в соответствующей статье Википедии.
Многообразие DE
Даже есть такие интересные примеры уже из истории: в 2003-2007 годах для Linux было сделано «3D-оформление рабочего стола» с названием «Project Looking Glass» от фирмы Sun. Я сам пользовался этим рабочим столом, точнее «игрался», так как пользоваться было тяжело. Это «3D-оформление» было написано на Java во времена, когда не было ещё видеокарт с поддержкой 3D. Потому все эффекты пересчитывались процессором, и компьютер должен был быть очень мощным, иначе все работало медленно. Но зато получалось красиво. Трёхмерные плашки приложений можно было поворачивать/разворачивать. Можно было поворачиваться в цилиндре рабочего стола с обоями из панорамы в 360 градусов. Было несколько своих красивых приложений: например, прослушивание музыки в виде «смены CD-дисков» и т. д. Можно на youtube посмотреть видео про этот проект, только качество этих видео скорее всего будет плохим, так как в те годы не было возможности загрузить видео высокого качества.
Легковесный рабочий стол. Существует проект достаточно давно, с 1996 года. В последние годы достаточно популярен, в противовес более тяжёлым KDE и GNOME, на многих дистрибутивах которым требуется лёгкий и «классический» интерфейс рабочего стола. В нем имеется много настроек и большое количество своих программ: терминал (xfce4-terminal), файловый менеджер (thunar), просмотрщик картинок (ristretto), текстовый редактор (mousepad).
Используется в дистрибутиве «Elementary OS». Тут можно сказать, что есть «рабочие столы», которые разрабатываются и используются в рамках одного отдельного дистрибутива и не сильно используются (если не сказать «совсем не используются») в других дистрибутивах. По крайней мере они пока не набрали популярность и не убедили большую часть аудитории в преимуществах своего подхода. Pantheon ставит перед собой задачу построить интерфейс, похожий на macOS.
Вариант с dock-панелью:
Сильный уклон в графические эффекты и виджеты (ещё со времён, когда другие рабочие среды не имели виджеты на рабочем столе, например, календарь/часы). Использует свои библиотеки. Имеется большой набор своих «красивых» приложений: терминал (Terminology), видеоплеер (Rage), просмотр картинок (Ephoto).
Это форк Enlightenment17, который используется в дистрибутиве BodhiLinux.
Изначально «классический» интерфейс рабочего стола, созданный в противовес KDE, который был написан на библиотеке Qt, на тот момент распространяющийся по лицензии, не очень удобной для коммерческих дистрибутивов.
С третьей версии GNOME стал поставляться с оболочкой GNOME Shell, имеющей «неклассический вид», что понравилось не всем пользователям (любые резкие изменения в интерфейсах пользователями сложно принимаются). Как следствие — появление форк-проектов, продолжающих развитие этого рабочего стола в «классическом» стиле: MATE и Cinnamon. Используется по умолчанию во многих коммерческих дистрибутивах. Имеет большое количество настроек и своих приложений.
Дополнение: Рекомендую к просмотру очень хорошую ретроспективу «как менялся внешний вид и функционал оболочки GNOME»: История GNOME (Видео)
Появилась на основе GNOME2 и продолжает развитие этой среды оформления. Имеет большое количество настроек и форков приложений, которые использовались еще в GNOME2 (употребляются новые имена) для того, чтобы не путать форки с их новой версией для GNOME3.
Форк GNOME Shell, предоставляющий пользователям интерфейс в «классическом» стиле (как это было в GNOME2).
Имеет большое количество настроек и те же приложения, что и для GNOME Shell.
Форк GNOME в «классическом» стиле, который развивался в рамках дистрибутива Solus, но сейчас также поставляется в рамках самостоятельного рабочего стола на различных других дистрибутивах.
KDE_Plasma (или, как часто называют, просто KDE)
Среда рабочего стола, развиваемая в рамках проекта KDE.
Имеет огромное количество настроек, доступных простому пользователю из графического интерфейса и много графических приложений, развиваемых в рамках этого рабочего стола.
Дополнение: Рекомендую к просмотру ретроспективу «как менялся внешний вид и функционал оболочки KDE»: История KDE (Видео)
В 2008 году KDE выпустила свою новую реализацию KDE Plasma (был сильно переписан движок рабочего стола). Также, как и с GNOME/MATE, не всем фанатам KDE это понравилось. В результате появился форк проекта, продолжающий развитие предыдущей версии, под названием TDE (Trinity Desktop Environment).
Одна из новых сред рабочего стола, написанная с использованием Qt (на котором написан KDE). Имеет много настроек и достаточно красивый (хотя это субъективное понятие) и проработанный интерфейс. Разрабатывается в рамках дистрибутива Deepin Linux. Также есть пакеты под другие дистрибутивы
Fly
Пример среды рабочего стола, написанной с использованием Qt. Разрабатывается в рамках дистрибутива Astra Linux.
Легковесная среда рабочего стола. Как и несколько предыдущих примеров, написана с использованием Qt. Фактически является продолжением проекта LXDE и результатом объединения с проектом Razor-qt.
Как видите, рабочий стол в Linux может выглядеть очень по-разному и на вкус любого здесь найдётся подходящий интерфейс: от очень красивых и с 3D-эффектами до минималистических, от «классических» до необычных, от активно использующих ресурсы системы до легковесных, от больших экранов до планшетов/смартфонов.
Ну и хочется надеяться, что у меня получилось дать представление о том, из каких основных компонентов состоит графика и рабочий стол в ОС Linux.
Материал для этой статьи был обкатан в июле 2020 года на вебинаре. Его можно посмотреть здесь.
На этом всё. Надеюсь, было полезно. Если есть какие-то вопросы и комментарии, пишите. Буду рад ответить. Ну и приходите учиться в «Сетевую Академию ЛАНИТ»!
Источник