Как настроить автологин без дисплейного менеджера в NixOS с Wayland и Niri
Автоматический вход в систему (автологин) — удобная функция, которая позволяет пользователю избежать ввода пароля при загрузке и сразу приступать к работе. В традиционных дистрибутивах Linux автологин обычно настраивается через дисплейный менеджер (например, GDM, SDDM). Однако в NixOS, особенно при использовании Wayland и минималистичного окружения Niri, часто хочется обойтись без дисплейного менеджера. В этой статье мы подробно разберём, как реализовать автологин в такой среде.
Особенности автологина без дисплейного менеджера в NixOS
NixOS — уникальный дистрибутив, построенный на декларативной конфигурации системы, и здесь привычные инструменты управляются немного иначе. Отсутствие стандартного дисплейного менеджера — это распространённая ситуация при использовании облегчённых или кастомных окружений, таких как Niri, которые работают поверх Wayland.
Так как дисплейного менеджера нет, нужно самостоятельно настроить автологин и запуск пользовательской сессии. Обычно это достигается с помощью автологина на уровне консоли и последующего запуска Wayland-сессии вручную или автоматически.
Настройка автологина консоли в NixOS
Первый шаг — разрешить консоли автоматически входить под определённым пользователем. В NixOS это делается через службу getty@tty1.service
и настройку agetty
с параметрами автологина.
В файл конфигурации /etc/nixos/configuration.nix
нужно добавить следующие строки:
nix
services.getty.autoLogin.enable = true;
services.getty.autoLogin.user = "имя_пользователя";
Здесь вместо "имя_пользователя"
укажите вашего пользователя, под которым хотите автоматически входить.
Данная настройка заставит систему автоматически входить в консоль на tty1 без запроса пароля.
Запуск Wayland сессии и Niri после автологина
После автологина в консоль нужно запускать Wayland-сессию и окружение Niri. Для этого обычно создают или изменяют файл ~/.bash_profile
или ~/.profile
пользователя, добавляя в конец что-то вроде:
bash
if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
exec dbus-run-session — niri
fi
Это условие проверяет, что пользователь находится на tty1, и запускает сессию Niri под управлением dbus.
Важно, что niri
— это запуск вашего окружения на Wayland, который должен быть установлен и корректно настроен.
Обеспечение безопасности и удобства
При использовании автологина важно помнить о безопасности — ваш компьютер становится доступен без пароля, что подходит только для приватных или безопасных сред.
Рекомендуется дополнительно изучить, как настроить блокировку экрана в Niri, чтобы компенсировать потенциальные риски.
Выводы
Автологин без дисплейного менеджера в NixOS с использованием Wayland и Niri — реалистичная и удобная задача. Ключевые шаги:
- Включение автологина консоли через
services.getty.autoLogin
в конфигурации NixOS. - Автоматический запуск Wayland-сессии и Niri из консоли после входа.
- Обеспечение безопасности при использовании данной схемы.
Это позволяет получить быструю и лёгкую загрузку в минималистичное окружение без необходимости в тяжёлых дисплейных менеджерах.
Если вам нужна помощь с конкретными настройками Wayland или нюансами Niri, не стесняйтесь обращаться к документации и сообществу NixOS.