summaryrefslogtreecommitdiff
path: root/os/pc/modules/nopolkit.nix
diff options
context:
space:
mode:
Diffstat (limited to 'os/pc/modules/nopolkit.nix')
-rw-r--r--os/pc/modules/nopolkit.nix26
1 files changed, 26 insertions, 0 deletions
diff --git a/os/pc/modules/nopolkit.nix b/os/pc/modules/nopolkit.nix
new file mode 100644
index 0000000..0c45f41
--- /dev/null
+++ b/os/pc/modules/nopolkit.nix
@@ -0,0 +1,26 @@
+{ config, pkgs, ... }: let
+ user = config.global.userdata.name;
+in {
+ security.sudo = {
+ enable = true;
+
+ extraRules = [{
+ commands = [
+ {
+ command = "${pkgs.systemd}/bin/systemctl suspend-then-hibernate";
+ options = [ "SETENV" "NOPASSWD" ];
+ }
+ {
+ command = "${pkgs.systemd}/bin/reboot";
+ options = [ "NOPASSWD" ];
+ }
+ {
+ command = "${pkgs.systemd}/bin/poweroff";
+ options = [ "NOPASSWD" ];
+ }
+ ];
+
+ users = [ user ];
+ }];
+ };
+}