Estou executando o Parabola com o OpenRC como meu sistema de inicialização e estou tendo problemas para fazer o Polkit funcionar com o NetworkManager.
Instalei consolekit-openrc
, polkit-consolekit
e adicionei consolekit
ao runlevel padrão do OpenRC. Eu adicionei meu usuário padrão aos grupos wheel
e network
unix e adicionei um arquivo .rules
a /etc/polkit-1/rules.d
que contém o seguinte:
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
return polkit.Result.YES;
}
});
A funcionalidade geral do NetworkManager funciona e eu posso controlá-lo se eu executar nmcli
ou nm-applet
como root, mas todas as solicitações sem sudo
do meu usuário normal falharão com "não autorizado". O Dbus também é instalado e parece funcionar.
Meu gerenciador de janelas é o i3 e inicio usando startx
, que lê meu arquivo ~/.xinitrc
que contém a seguinte linha:
ck-launch-session i3
para iniciar o i3 em uma sessão do ConsoleKit. A execução de ck-list-sessions
retorna minha sessão atual ( active
), o que parece funcionar também.
Agora, como depurar isso e garantir que um usuário normal possa realizar tarefas relacionadas à rede (como conectar-se a uma VPN etc.) sem precisar executar a nm-applet
como raiz?