Выжимаем все соки: оптимизация Gnome 40
В современной Linux-тусовке всё чаще можно встретить мнение, будто среда рабочего стола Gnome 4 это весьма прожорливое нечто с закосом под планшеты и для пользователя не годится. В этом материале мы попытаемся опровергнуть большинство заблуждений, которые витают вокруг этой темы, а также поэтапно оптимизируем Gnome 4 для максимальной производительности.
Внимание!
Гайд написан линуксоидом для линуксоидов и является помощником для продвинутых пользователей Linux. Гайд не претендует на инструкцию для новичков. Все манипуляции производились на ArchLinux.
Установка
Хотя проект Gnome почему-то и считается прерогативой Canonical и их дистрибутива Ubuntu, но ничего не мешает установить Gnome 4 и на многие другие Linux-дистрибутивы. Выполним чистую установку Gnome 4 на ArchLinux.
sudo pacman -S gnome
Полный набор устанавливаемых компонентов это универсальный сет для офисных задач и если вы не тётя Галя из жэка, то не стоит загромождать свой 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 с графическим планшетом 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.
Изменить ваши значения на эти:
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. И многих других.Я устанавливаю только тёмную тему и восстанавливаю привычные угловые знаки для работы с окнами, а также меняю раскладку на Ctrl+Shift, благо интерфейс программы прост и не вызывает каких-либо трудностей.
Итоговый результат
Хотя всё крутится на встройке UHD 610 и используется сеанс Xorg, я получаю отличную плавность при работе с современным Gnome 4 и не испытываю никаких проблем.
Заключение
Не важно какое вы предпочитаете DE, ибо всё это дело привычки, но нельзя отрицать, что Gnome 4 это одно из лучших массовых пользовательских окружений доступных на Linux и тем забавнее наблюдать, как компания Microsoft внедряет похожие принципы работы с системой в свою Windows 11, но это уже совсем другая история. Используйте Linux, наслаждайтесь свободной и всегда оставайтесь гладкими!
Если вам понравился материал, то пожалуйста — посетите блог автора ТЫК.
Видеоверсия
GNU/Linux
1.1K постов15.6K подписчиков
Правила сообщества
Все дистрибутивы хороши.
Будьте людьми.