Doas
doas is a utility to execute commands as a different user, typically the super user. It is often installed as a replacement for sudo, due to its ease of configuration and greater simplicity.
Не рекомендуется использовать doas из-за проблем с совместимостью с sudo. Конфигурации на основе Flake требуют установки git в качестве системного пакета для пересборки.
Настройка
Следующая конфигурация даст пользователю foo
возможность выполнять команды от имени суперпользователя через doas
, при этом отключив команду sudo
.
security.sudo.enable = false;
security.doas.enable = true;
security.doas.extraRules = [{
users = ["foo"];
# Необязательно, сохраняет переменные окружения при выполнении команд
# например, сохраняет ваш NIX_PATH при применении вашего конфига
keepEnv = true;
persist = true; # Необязательно, не запрашивать пароль в течение некоторого времени после успешной аутентификации
}];