1
0
localhost/security.nix

51 lines
1.4 KiB
Nix
Raw Permalink Normal View History

2019-05-31 00:02:30 +00:00
{ config, pkgs, ... }:
2023-02-13 09:14:21 +00:00
{
2019-05-31 00:02:30 +00:00
security.allowUserNamespaces = true;
security.allowSimultaneousMultithreading = true;
2019-11-19 16:31:28 +00:00
security.lockKernelModules = false;
2019-05-31 00:02:30 +00:00
programs.ssh.startAgent = false;
programs.gnupg = {
agent.enable = true;
agent.enableSSHSupport = true;
agent.enableExtraSocket = true;
agent.enableBrowserSocket = true;
dirmngr.enable = true;
};
# Bus 001 Device 002: ID 1050:0404 Yubico.com Yubikey 4 CCID
services.udev = {
extraRules = ''
ACTION=="add|change", ATTRS{idVendor}=="1050", ATTRS{idProduct}=="0404", MODE="0666"
'';
};
systemd = {
services = {
"force-lock-after-suspend" = {
serviceConfig.User = "user";
2020-01-06 15:29:14 +00:00
description = "Force xsecurelock after suspend";
2019-05-31 00:02:30 +00:00
before = [ "suspend.target" "hibernate.target" "hybrid-sleep.target" ];
wantedBy = [ "suspend.target" "hibernate.target" "hybrid-sleep.target" ];
script = ''
2020-01-06 15:29:14 +00:00
DISPLAY=:0 ${pkgs.xsecurelock}/bin/xsecurelock
2019-05-31 00:02:30 +00:00
'';
};
};
};
# Allow manage backlight without sudo
security.sudo = {
enable = true;
extraConfig = ''
%wheel ALL=(ALL:ALL) NOPASSWD: ${pkgs.light}/bin/light
%wheel ALL=(captive) NOPASSWD: ${pkgs.firefox}/bin/firefox
2019-05-31 00:02:30 +00:00
'';
};
environment.systemPackages = with pkgs; [
(writeShellScriptBin "captive" "sudo -H -u captive ${pkgs.firefox}/bin/firefox")
];
2019-05-31 00:02:30 +00:00
}