Найти в Дзене

Установка Artix Linux часть 5 (установка графической облолочки Mate, Звук, Wayland-сессия)

Добрый день дорогой читатель, данное повествование не является истиной в последней инстанции, это некая инструкция по установке (в основном для собственного пользования) Mate на Artix Linux с пояснениями и все возможными мыслями. Действия будут происходить на KVM/QEMU для наглядности. Mate это классическая среда рабочего стола, которая является продолжением GNOME 2. Она сочетает в себе традиционный интерфейс, высокую стабильность и умеренное потребление ресурсов, что делает её актуальной для слабых по современным меркам пк. Особенности Mate Если сравнить с другими окружениями, исключив такие как KDE Plasma и Gnome, а одного класса Установка MATE на Artix Linux очень похожа на установку Cinnamon, но с
использованием другой группы пакетов. Если хотите избежать ручной настройки, скачайте официальный образ Artix с пометкой Mate. Если у вас уже установлена базовая система без графической оболочки, и есть
интерес по копаться в недрах конфигов установив и настроив самостоятельно то перейд
Оглавление

Добрый день дорогой читатель, данное повествование не является истиной в последней инстанции, это некая инструкция по установке (в основном для собственного пользования) Mate на Artix Linux с пояснениями и все возможными мыслями. Действия будут происходить на KVM/QEMU для наглядности.

Mate это классическая среда рабочего стола, которая является продолжением GNOME 2. Она сочетает в себе традиционный интерфейс, высокую стабильность и умеренное потребление ресурсов, что делает её актуальной для слабых по современным меркам пк.

Особенности Mate

  • Традиционный интерфейс: Использует классическую метафору рабочего стола с панелями, меню приложений и списком окон, привычную пользователям Windows и старых версий GNOME.
  • Легковесность и скорость: MATE потребляет меньше оперативной памяти и ресурсов процессора, чем современные GNOME или Cinnamon, что позволяет ей плавно работать на старом или слабом оборудовании.
  • Высокая кастомизация: С помощью приложения MATE Tweak можно легко менять макеты панелей (например, имитировать интерфейс macOS, Windows или классический GNOME).
  • Стабильность: Окружение развивается консервативно, минимизируя резкие изменения в интерфейсе и обеспечивая надежную работу системы.

Если сравнить с другими окружениями, исключив такие как KDE Plasma и Gnome, а одного класса

  • Если сравнить c XFCE то Mate предлагает чуть больше функций "из коробки" и визуально более современна, при этом сопоставима по потреблению ресурсов.
  • Если сравнить с Cinnamon то Mate значительно легче и быстрее на бюджетных ноутбуках, хотя Cinnamon выглядит более "отполированным" и современным.

Установка MATE на Artix Linux очень похожа на установку Cinnamon, но с
использованием другой группы пакетов.

1. Простой способ: Использование образа системы с Mate

Если хотите избежать ручной настройки, скачайте официальный образ Artix с пометкой Mate.

  • Выберите ISO с нужной системой инициализации (OpenRC, runit, s6 или dinit).
  • Запустите графический инсталлятор Calamares, который автоматически установит систему и настроит Mate «из коробки».

2. Установка на базовую систему

Если у вас уже установлена базовая система без графической оболочки, и есть
интерес по копаться в недрах конфигов установив и настроив самостоятельно то перейдем к выполнению следующих шагов:

Опционально. Отсортируйте зеркала репозитория предварительно установив свежий пакет зеркал artix-mirrorlist, дабы избежать проблем со скачиванием, метод описан в статье "Artix решение проблем с зеркалами или ведро дёгтя в кружке мёда"

Обновите Artix Linux, выполнив до боле известную команду:

sudo pacman -Syu

Установка пакетов Mate

после успешного обновления Artix Linux приступим к установке Mate
выполнив три основных этапа: установка необходимых пакетов, настройка дисплейного менеджера (входа в систему) и активация сервисов (так как в Artix нет systemd). Но сначала определимся с пакетами какие будем устанавливать

  • xorg, xorg-server, xorg-xinit - пакеты Xorg
  • mate mate-extra - метапакеты оболочки
  • lightdm, lightdm-gtk-greeter, lightdm-gtk-greeter-settings - пакеты дисплейного менеджера
  • artix-gtk-presets - пакет содержит настройки оформления специально для Artix.
  • networkmanager network-manager-applet - пакеты сетевого менеджера
  • pipewire pipewire-pulse pipewire-alsa wireplumber - пакеты звукового сервера

Установим пакеты выполнив команду ниже:

sudo pacman -S xorg xorg-server xorg-xinit mate mate-extra lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings artix-gtk-presets networkmanager network-manager-applet pipewire pipewire-pulse pipewire-alsa wireplumber
Установка необходимых пакетов для дальнейшего запуска Mate
Установка необходимых пакетов для дальнейшего запуска Mate
Процесс установки пакетов
Процесс установки пакетов

Важно. Забегу чуть вперед, обратите внимание на выхлоп pacman'а при установки выше описанных пакетов на Artix Linux с системой инициализации S6, могут быть ошибки с такими демонами как elogind и dbus, их следует проверить на активность перед запуском дисплейного модуля lightdm.

Установка пакетов для запуска сервисов (LightDM, NetworkManager, PipeWire)

для dinit установим следующие пакеты:

sudo pacman -S lightdm-dinit networkmanager-dinit pipewire-dinit pipewire-pulse-dinit wireplumber-dinit dinit-user-spawn
установка пакетов для запуска сервисов в системе инициализавии dinit
установка пакетов для запуска сервисов в системе инициализавии dinit

для openrc установим следующие пакеты:

sudo pacman -S lightdm-openrc networkmanager-openrc pipewire-openrc pipewire-pulse-openrc wireplumber-openrc
установка пакетов для запуска сервисов в системе инициализавии openrc
установка пакетов для запуска сервисов в системе инициализавии openrc

для runit установим следующие пакеты, пакеты для запуска звукового сервера для данной системы инициализации отсутствуют по этому в дальнейшем запустим средствами Mate:

sudo pacman -S lightdm-runit networkmanager-runit
установка пакетов для запуска сервисов в системе инициализавии runit
установка пакетов для запуска сервисов в системе инициализавии runit

для s6 установим следующие пакеты, аналогичные обстоятельства c PipeWire что и с runit будем запускать средствами Mate:

sudo pacman -S lightdm-s6 networkmanager-s6
установка пакетов для запуска сервисов в системе инициализавии s6
установка пакетов для запуска сервисов в системе инициализавии s6

Запуск сервисов (LightDM, NetworkManager, PipeWire)

Прежде чем запускать сервисы, надо убедится в каких группах состоит пользователь

Проверим следующей командой:

groups $USER

или же:

id -Gn $USER

если пользователь не состоит в группах audio и video то следует добавить выполнив команду ниже:

sudo usermod -aG audio,video $USER
groups $USER
добавление пользователя в группы audio и video
добавление пользователя в группы audio и video

для dinit выполним следующие команды. Останавливаем сервис dhcpcd и вместо него запустим NetworkManager что бы сетевые соединения отображались в оболочке.

sudo dinitctl disable dhcpcd
sudo dinitctl stop dhcpcd
sudo dinitctl status dhcpcd
sudo dinitctl enable NetworkManager
sudo dinitctl status NetworkManager

далее запустим dinit-user-spawn для возможности запуска сервисов PipeWire от имени пользователя

sudo dinitctl enable dinit-user-spawn
dinitctl enable pipewire
dinitctl enable pipewire-pulse
dinitctl enable wireplumber
запуск сервисов в системе инициализавии dinit
запуск сервисов в системе инициализавии dinit

Звуковой сервер запущен, проверим корректность запуска выполнив команду

pactl info

если все корректно как на скрине ниже, то переходим к запуску дисплейного менеджера

sudo dinitctl enable ligthdm
проверка звукового сервера и запуск дисплейного менеджера
проверка звукового сервера и запуск дисплейного менеджера
-10
-11

для openrc выполним следующие команды, принцип аналогичен остановим и удалим из автозагрузки dhcpcd, а в место него запустим NetworkManager

sudo rc-service dhcpcd stop
sudo rc-update del dhcpcd default
sudo rc-service dhcpcd status
sudo rc-update add NetworkManager default
sudo rc-service NetworkManager restart
sudo rc-service NetworkManager status
запуск сервисов в системе инициализавии openrc
запуск сервисов в системе инициализавии openrc

далее от имени пользователя добавим в автозапуск PipeWire и перезапустим звуковой сервер, опционально можно глянуть статусы процессов

rc-update add pipewire default --user
rc-update add pipewire-pulse default --user
rc-update add wireplumber default --user
rc-service pipewire restart --user
rc-service pipewire-pulse restart --user
rc-service wireplumber restart --user
rc-service pipewire status --user
rc-service pipewire-pulse status --user
rc-service wireplumber status --user
запуск звуковго сервера в системе инициализавии openrc
запуск звуковго сервера в системе инициализавии openrc

после проверим звуковой сервер командой ниже

pactl info

далее переходим к запуску дисплейного менеджера

sudo rc-update add ligthdm default
sudo rc-service ligthdm restart
проверка звукового сервера и запус дисплейного менеджера
проверка звукового сервера и запус дисплейного менеджера
-15
-16

для runit следует выполнить следующие команды

sudo sv stop /run/runit/service/dhcpcd
sudo sv satus /run/runit/service/dhcpcd
sudo rm /run/runit/service/dhcpcd
sudo ln -s /etc/runit/sv/NetworkManager /run/runit/service/
sudo sv start /run/runit/service/NetworkManager
sudo sv satus /run/runit/service/NetworkManager
sudo ln -s /etc/runit/sv/lightdm /run/runit/service/
запуск сервисов в системе инициализавии runit
запуск сервисов в системе инициализавии runit
-18

Обратите внимание при добавлении в автозапуск пакетов PipeWire укажите задержку старта опытным путем можно подобрать оптимальное значение, я указал в 5 секунд, дабы на верняка. Иначе звуковой апплет не виден на панели, но он есть.

Запуск звукового сервера средствами Mate
Запуск звукового сервера средствами Mate
-20

для s6 тут немного придется по возиться, пока все подготовим к запуску Mate но запустим не сразу, сначала выключим dhcpcd и в место него добавим в автозапуск NetworkManager и так же добавим lightdm

sudo rm /etc/s6/adminsv/default/contents.d/dhcpcd
sudo touch /etc/s6/adminsv/default/contents.d/NetworkManager
sudo touch /etc/s6/adminsv/default/contents.d/lightdm
sudo s6-db-reload

но прежде чем перезагружаться или запускать дисплейный менеджер следует проверить запущены ли dbus и elogind иначе можно получить при входе в профиль пользователя "failed to start session" это как раз связано с отсутствием запущенных сервисов управления сессиями или некорректными правами доступа на директорию пользователя.

добавление сервисов в автозапуск системы инициализавии s6
добавление сервисов в автозапуск системы инициализавии s6

особо важно проверить статус dbus и elogind если они выключены то их обязательно надо включить иначе в сессию Mate не войти

sudo s6-stat /run/service/dbus-srv
sudo s6-stat /run/service/elogind
sudo touch /etc/s6/adminsv/default/contents.d/dbus-srv
sudo touch /etc/s6/adminsv/default/contents.d/elogind
sudo s6-db-reload

в моем случае они выключены добавим в автозагрузку и обновим базу сервисов

проверка статусов и добавление в автозапуск elogind и dbus системы инициализации s6
проверка статусов и добавление в автозапуск elogind и dbus системы инициализации s6

далее пробуем запустить и удостоверимся что они запущены корректно

sudo s6-rc -u change dbus-srv
sudo s6-rc -u change elogind
sudo s6-stat /run/service/dbus-srv
sudo s6-stat /run/service/elogind

Нюанс. иногда dbus копризничает говорит что доступ запрещен s6-log fatal unable to open /var/log/dbus/lock, это бывает из за того что не создана структура директорий лога для процесса, лечится это командами ниже

sudo mkdir -p /var/log/dbus
sudo chown -R s6log:s6log /var/log/dbus
sudo chmod 755 /var/log/dbus

и последней командой запускаем дисплейный менеджер

sudo s6-rc -u change lightdm
последовательный запуск elogind dbus и дисплейного менеджера в системе инициализации s6
последовательный запуск elogind dbus и дисплейного менеджера в системе инициализации s6
-24

Обратите внимание ситуация та же что и в runit, при добавлении в автозапуск пакетов PipeWire укажите задержку старта, я указал в 5 секунд, дабы на верняка. Иначе звуковой апплет не виден на панели, но он есть.

-25
-26

Запуск wayland сессии в Mate

Хотя большинство приложений MATE уже портированы на Wayland,
официальной стабильной сессии (как в GNOME или KDE) пока не
существует. Запуск полноценной Wayland-сессии в MATE на данный момент остается
экспериментальной возможностью.

За основу взято ArtixWiki, ArchWiki и темы форумов по данной тематике, а так же собственный опыт и наработки.
За сим откланиваюсь...