Руководство по настройке Sway
|
На этой странице представлен краткий обзор деталей конфигурации, специфичных для Fedora, и он является общим как для Sway Spin на основе пакетов, так и для варианта Sway Atomic. Важные различия будут выделены. |
Если вы ищете более общие ресурсы, обратитесь к:
-
страницы руководства:
sway(5)sway-bar(5)sway-input(5)sway-output(5) -
Руководство пользователя i3—хотя оно написано для i3, все важные концепции одинаковы для Sway.
Профили конфигурации
Пакет Sway в Fedora передаёт большинство зависимостей и владение файлом конфигурации подпакетам sway-config-*. Это позволяет нам поставлять различные профили конфигурации с разными наборами зависимостей времени выполнения.
Следующие пакеты профилей в настоящее время доступны в Fedora:
-
sway-config-upstream — конфигурация из основного репозитория, как она поставляется с исходными кодами Sway. Единственными допустимыми изменениями в файле конфигурации этого профиля являются корректировки для зависимостей, в настоящее время недоступных в Fedora.
-
sway-config-minimal — минимальная конфигурация с исключением всех необязательных зависимостей. Профиль был создан для использования на безголовых серверах, в контейнерах и в среде сборки buildroot. Он также подходит для создания минимальной установки с нуля.
-
sway-config-fedora — настроенная конфигурация для Fedora Sway Spin.
Пакеты являются взаимоисключающими, и один из них должен присутствовать. Пакет, устанавливаемый по умолчанию с помощью dnf install sway, — это sway-config-upstream, а пакет, который будет установлен с Sway Spin/ группой сред рабочего стола Sway, — это sway-config-fedora.
Вы можете выбрать профиль с помощью следующей команды:
$ sudo dnf swap sway-config sway-config-upstream
$ sudo dnf swap sway-config sway-config-minimal
$ sudo dnf swap sway-config sway-config-fedora
Команда заменит файл /etc/sway/config по умолчанию и применит новый набор зависимостей. Пакеты, не используемые новым профилем, будут автоматически удалены.
Соответствующая команда для Sway Atomic и других пользовательских образов Sway:
$ sudo rpm-ostree override remove sway-config --install sway-config-upstream
Однако обратите внимание, что это не удаляет зависимости исходного профиля из базового слоя развёртывания.
Конфигурация Fedora
sway-config-fedora содержит конфигурацию по умолчанию для Fedora Sway Spin. Она построена поверх конфигурации Sway по умолчанию с несколькими улучшениями качества жизни и субъективными изменениями.
Большинство дополнений реализованы как отдельные фрагменты конфигурации, хранящиеся по адресу /usr/share/sway/config.d/ и автоматически загружаемые из основного файла конфигурации. Настройка окружения и перехват журналирования реализованы в скрипте-обёртке /usr/bin/start-sway.
Переменные окружения
Если вы используете совместимый менеджер дисплея (GDM или SDDM), вы должны иметь возможность настроить начальное окружение для Sway с помощью общесистемной конфигурации в /etc/sway/environment или пользовательской конфигурации в ~/.config/sway/environment. Переменные, заданные в пользовательской конфигурации, переопределяют соответствующие переменные, заданные на системном уровне.
Пожалуйста, ознакомьтесь с комментариями и примерами в /etc/sway/environment, чтобы узнать больше.
Разделы
Предоставляемые нами фрагменты конфигурации сгруппированы в следующие разделы:
- 50-59 (
50-rules-*.conf) -
Правила окон (
for_window,assignи связанная конфигурация). - 60-69 (
60-bindings-*.conf,65-mode-*.conf) -
Привязки клавиш и режимы привязок.
- 90-94 (
90-*.conf) -
Системные приложения: панели, демоны бездействия и другие компоненты.
- 95-99 (
95-*.conf) -
Автозапуск приложений.
Переопределения и приоритет загрузки
Конфигурация Fedora использует детали реализации парсера конфигурации Sway (wordexp(3p)) для реализации механизма переопределения фрагментов.
Приоритет возрастает от поставляемой конфигурации к общесистемной конфигурации и каталогам пользовательской конфигурации:
-
/usr/share/sway/config.d/*.conf -
/etc/sway/config.d/*.conf -
$XDG_CONFIG_HOME/sway/config.d/*.conf(по умолчанию~/.config/sway/config.d/*.conf)
Включаемые файлы также сортируются по имени файла во всех каталогах.
Создав файл с тем же именем в /etc/sway/config.d, вы заставите препроцессор конфигурации игнорировать соответствующий фрагмент из /usr и загружать его из /etc. Аналогично, фрагмент конфигурации из домашнего каталога имеет приоритет над более ранними местоположениями.
Если говорить ещё проще: представьте файл конфигурации дистрибутива /usr/share/sway/config.d/90-bar.conf, который устанавливает waybar в качестве панели состояния. Если вы хотите предотвратить запуск waybar, вы можете создать пустой файл в своём домашнем каталоге:
$ mkdir -p ~/.config/sway/config.d
$ touch ~/.config/sway/config.d/90-bar.conf
Если вы хотите использовать другую панель, вам просто нужно добавить некоторое содержимое в файл. Например, скопируйте раздел панели по умолчанию из конфигурации основного репозитория Sway:
$ mkdir -p ~/.config/sway/config.d
$ cat >~/.config/sway/config.d/90-bar.conf <<EOF
## Прочитайте `man 5 sway-bar` для получения дополнительной информации об этом разделе.
bar {
position top
## Когда status_command выводит новую строку в stdout, swaybar обновляется.
## По умолчанию показывает текущую дату и время.
status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
colors {
statusline #ffffff
background #323232
inactive_workspace #32323200 #32323200 #5c5c5c
}
}
EOF
Устранение неполадок
Иногда полезно знать, как на самом деле выглядит конфигурация, загруженная Sway. Есть два способа это проверить:
-
Запустите проверку конфигурации sway:
$ sway --debug --validate [--config /путь/к/конфигурации] -
Проверьте промежуточные файлы, созданные многослойным скриптом включения
$ less $XDG_RUNTIME_DIR/sway/layered-include-*.conf
Want to help? Learn how to contribute to Fedora Docs ›