Primeiro, crie um arquivo de ação .policy
em /usr/share/polkit-1/actions/
. É convencional nomear arquivos de ação de uma maneira "hierárquica do fornecedor", como com.ubuntu.pkexec.gparted.policy
ou org.debian.apt.policy
Em seguida, cole o seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<action id="org.freedesktop.policykit.pkexec.run-[Short Program Name]">
<description>Run [Full Program Name]</description>
<message>Authentication is required to run [Full Program Name]</message>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>no</allow_inactive>
<allow_active>auth_admin_keep</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">[Full Program Path]</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">TRUE</annotate>
</action>
</policyconfig>
Substitua [Short/Full Program Name/Path]
pelos valores apropriados, por exemplo gedit
, gedit Text Editor
e /usr/bin/gedit
. O valor <action id>
não precisa corresponder ao nome do arquivo escolhido (e um único arquivo pode conter várias ações), mas convencionalmente o nome do arquivo é o prefixo de todas as suas ações.
Depois de salvar o arquivo, o programa específico será executado com X, GUI e outros.
Outra correção parece ser: Adicione a seguinte linha em /etc/pam.d/polkit-1:
% bl0ck_qu0te%