[gui] Fix reset controller button, now needs privileges
Two methods:
- Add a sudo rule.
- Use "polkit"
Polkit
Create: /etc/polkit-1/rules.d/50-pi.rules
Define a rule the file:
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.systemd1.manage-units" &&
action.lookup("unit") == "piper.service" &&
subject.user == "pi") {
return polkit.Result.YES;
}
});
Reload the daemon:
sudo systemctl daemon-reload
Test:
systemctl restart example.service
Notes
Polkit .rules files belong in:
/etc/polkit-1/rules.d/ for custom rules (system-wide, takes precedence).
/usr/share/polkit-1/rules.d/ for default rules (shipped with the OS or software).
Rules in /etc override those in /usr/share.
Polkit (PolicyKit) policies use JavaScript-like syntax for writing rules in .rules files.
Ensure Polkit is Running: Polkit is usually already running as part of system services.
systemctl status polkit
Edited by naikymen