Depois de dar uma olhada no código-fonte, parece que o consolekit (ck) usa um script curto para desligar e reiniciar. Esses dois scripts são instalados como
/usr/lib/ConsoleKit/scripts/ck-system-{stop,restart}
no Arch Linux e eles simplesmente encontram e {,/usr}/sbin/shutdown
executam para fazer isso.
Portanto, parece não haver maneira de configurar o ck para fazer isso agora (por normal, eu quero dizer simplesmente editar alguns arquivos /etc
), e a solução é simples.
simplesmente edite esses dois scripts para exec systemctl {shutdown,reboot}
. (Mas pelo menos no Arch Linux, ele provavelmente será substituído após cada atualização.)
basta criar um script de wrapper para /sbin/shutdown
fazer a coisa certa. (Isso causará conflito se você desejar instalar o sysvinit mais tarde, mas espero que não seja um problema.)
Também vou procurar (e criar, se não houver) um relatório de bug sobre o problema e espero que possa ser feito de uma maneira melhor no futuro (realmente não gosto de fazer configurações externas /etc
).
NOTA: O Arch Linux agora possui o pacote systemd-sysvcompat que os fornece ( init
/ halt
/ shutdown
etc.) como link simbólico para systemctl
/ systemd
.