Выжимаем все соки: оптимизация Gnome 40

В современной Linux-тусовке всё чаще можно встретить мнение, будто среда рабочего стола Gnome 4 это весьма прожорливое нечто с закосом под планшеты и для пользователя не годится. В этом материале мы попытаемся опровергнуть большинство заблуждений, которые витают вокруг этой темы, а также поэтапно оптимизируем Gnome 4 для максимальной производительности.

Выжимаем все соки: оптимизация Gnome 40 Gnome, Оптимизация, Компиляция, Флаг, Arch, Видео, Длиннопост

Внимание!

Гайд написан линуксоидом для линуксоидов и является помощником для продвинутых пользователей Linux. Гайд не претендует на инструкцию для новичков. Все манипуляции производились на ArchLinux.


Установка

Хотя проект Gnome почему-то и считается прерогативой Canonical и их дистрибутива Ubuntu, но ничего не мешает установить Gnome 4 и на многие другие Linux-дистрибутивы. Выполним чистую установку Gnome 4 на ArchLinux.


sudo pacman -S gnome

Выжимаем все соки: оптимизация Gnome 40 Gnome, Оптимизация, Компиляция, Флаг, Arch, Видео, Длиннопост

Полный набор устанавливаемых компонентов это универсальный сет для офисных задач и если вы не тётя Галя из жэка, то не стоит загромождать свой Linux-дистрибутив мусором. Установим только нужные компоненты: 6 7 17 27 28 29 30 31 40 48 49.

Описание устанавливаемых компонентов Gnome 4

6) File-roller — это Gui для архиватора (аналог Winrar в Linux). Можно не ставить!

7) Gdm — это менеджер входа (Смотрите альманах новичка). Можно не ставить, если предпочитаете другой!

17) Gnome-control-center — это панель настроек всей системы.

27) Gnome-screenshot — это утилита для снятия скриншотов через Print Screen. Можно не ставить!

28) Gnome-session — это Обработчик сеанса GNOME.

29) Gnome-settings-daemon — это демон/служба настройки сеанса.

30) Gnome-shell — это интерфейс рабочей системы.

31) Gnome-shell-extensions — это утилита для управления дополнениями и кастомизации системы. Можно не ставить!

40) Gvfs — это компонент для ускорения работы системы.

48) Mutter — синхронизатор и отрисовщик эффектов (оконный менеджер).

49) Nautilus — стандартный файловый менеджер в Gnome. Можно не ставить, если предпочитаете другой!


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


Удаление мусора в Gnome (Если случайно установили всё):

sudo pacman -Rsn epiphany gnome-books gnome-boxes gnome-calculator gnome-calendar gnome-contacts gnome-maps gnome-music gnome-weather gnome-clocks gnome-documents gnome-photos gnome-software gnome-user-docs totem malcontent yelp gnome-getting-started-docs gvfs-afc gvfs-goa gvfs-gphoto2 gvfs-mtp gvfs-nfs gvfs-smb gvfs-google vino gnome-user-share gnome-characters simple-scan eog tracker3-miners rygel nautilus evolution-data-server gnome-font-viewer gnome-remote-desktop gnome-logs gnome-software gnome-boxes orca

Отключение ненужных служб/демонов

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

Выжимаем все соки: оптимизация Gnome 40 Gnome, Оптимизация, Компиляция, Флаг, Arch, Видео, Длиннопост

# Отключение службы интеграции GNOME с графическим планшетом Wacom. Если у вас такого нет, то смело отключайте.

systemctl --user mask org.gnome.SettingsDaemon.Wacom.service

# Отключение службы уведомления о печати. Если нет принтера, то отключаем.

systemctl --user mask org.gnome.SettingsDaemon.PrintNotifications.service

# Отключение службы управления цветовыми профилями в GNOME.

systemctl --user mask org.gnome.SettingsDaemon.Color.service

# Отключение службы управления специальными возможностями. Не отключать людям с ограниченными возможностями!

systemctl --user mask org.gnome.SettingsDaemon.A11ySettings.service

# Отключает службу управления беспроводными интернет-соединениями. Не рекомендуется отключать, если у вас Wi-Fi.

systemctl --user mask org.gnome.SettingsDaemon.Wwan.service

# Отключение службы защиты от неизвестных USB-устройств при блокировке экрана.

systemctl --user mask org.gnome.SettingsDaemon.UsbProtection.service

# Отключаем службу настройки автоматической блокировки экрана.

systemctl --user mask org.gnome.SettingsDaemon.ScreensaverProxy.service

# Отключение службы настройки общественного доступа к файлам и директориям.

systemctl --user mask org.gnome.SettingsDaemon.Sharing.service

# Отключение любого радиопередатчика в системе (Wi-Fi и Bluetooth, в «самолёте»).

systemctl --user mask org.gnome.SettingsDaemon.Rfkill.service

# Отключение службы управления клавиатурой и раскладками GNOME. Можно смело отключать, если уже настроили все раскладки и настройки клавиатуры заранее.

systemctl --user mask org.gnome.SettingsDaemon.Keyboard.service

# Отключаем службу управления звуком GNOME 3. Отключает ТОЛЬКО настройки звука GNOME 3, а не вообще всё управлением звуком в системе.

systemctl --user mask org.gnome.SettingsDaemon.Sound.service

# Отключение службы интеграции GNOME с картридером.

systemctl --user mask org.gnome.SettingsDaemon.Smartcard.service

# Отключение службы слежения за свободным пространством на диске.

systemctl --user mask org.gnome.SettingsDaemon.Housekeeping.service

# Отключение службы управления питанием в GNOME.

systemctl --user mask org.gnome.SettingsDaemon.Power.service

# Отключение служб Evolution для синхронизации онлайн аккаунтов.

systemctl --user mask evolution-addressbook-factory evolution-calendar-factory evolution-source-registry


Если после отключения какой-либо службы что-то пошло не так, то просто пропишите:

systemctl --user unmask --now СЛУЖБА

Служба вернётся в строй после перезагрузки.


По окончании оптимизаций мы получаем потребление на уровне современной XFCE, но в отличие от оной уже на современном GTK4, а также со всеми рабочими эффектами и анимациями.


Повышение отзывчивости

Существует целая уйма методов повысить плавность и отзывчивость Gnome, но если не рассматривать отключение анимаций и украшательств, то самое простое это выполнить компиляцию основных компонентов оболочки с нативными флагами, т. e под железо.


sudo nano /etc/makepkg.conf # Редактируем настройки встроенного компилятора gcc.

Выжимаем все соки: оптимизация Gnome 40 Gnome, Оптимизация, Компиляция, Флаг, Arch, Видео, Длиннопост

Изменить ваши значения на эти:


CFLAGS="-march=native -mtune=native -O2 -pipe -fno-plt -fexceptions \
-Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
-fstack-clash-protection -fcf-protection"
CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
RUSTFLAGS="-C opt-level=3"
MAKEFLAGS="-j$(nproc)"
OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug lto)

Установить зависимости для сборки:


sudo pacman -S base-devel git ccache # Зависимости.


Пакеты gnome-shell-performance и mutter-performance — это модифицированные версии пакетов Gnome, где упор сделан на плавность и отзывчивость, благодаря включению большого количества патчей для повышения производительности DE.


Установка gnome-shell-performance

git clone https://aur.archlinux.org/gnome-shell-performance.git
cd gnome-shell-performance
makepkg -sric


Установка mutter-performance

git clone https://aur.archlinux.org/mutter-performance.git
cd mutter-performance
makepkg -sric

Также можно выполнить компиляцию пакетов: Mesa (Only Intel & AMD), Wayland, Wayland-protocols, Lib32-

Кастомизация системы

Gnome это возможна одна из самых красивых и продуманных DE из коробки, ибо ей почти не требуется напильник в плане сторонних тем или дополнительных полибаров (панелей, строк состояний), но кое-какие штрихи ей всё же необходимы.


Выполним установку Gnome-tweaks: sudo pacman -S gnome-tweaks.


Gnome-tweks это небольшая утилита настройки DE, которая позволяет расширить возможности тонкой настройки Gnome, чем стандартная панель управления Gnome-control-center.

wayland, Egl-wayland, xorg-server. И многих других.
Выжимаем все соки: оптимизация Gnome 40 Gnome, Оптимизация, Компиляция, Флаг, Arch, Видео, Длиннопост

Я устанавливаю только тёмную тему и восстанавливаю привычные угловые знаки для работы с окнами, а также меняю раскладку на Ctrl+Shift, благо интерфейс программы прост и не вызывает каких-либо трудностей.


Итоговый результат

Хотя всё крутится на встройке UHD 610 и используется сеанс Xorg, я получаю отличную плавность при работе с современным Gnome 4 и не испытываю никаких проблем.


Заключение

Не важно какое вы предпочитаете DE, ибо всё это дело привычки, но нельзя отрицать, что Gnome 4 это одно из лучших массовых пользовательских окружений доступных на Linux и тем забавнее наблюдать, как компания Microsoft внедряет похожие принципы работы с системой в свою Windows 11, но это уже совсем другая история. Используйте Linux, наслаждайтесь свободной и всегда оставайтесь гладкими!


Если вам понравился материал, то пожалуйста — посетите блог автора ТЫК.


Видеоверсия

GNU/Linux

1.1K постов15.6K подписчиков

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.