* Add a module for rtkit. The PulseAudio module enables rtkit to
acquire real-time priority. svn path=/nixos/trunk/; revision=27963
This commit is contained in:
parent
2aaff3aa06
commit
645205b600
|
@ -48,6 +48,9 @@ with pkgs.lib;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# Allow PulseAudio to get realtime priority using rtkit.
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -63,6 +63,7 @@ in
|
||||||
fourStore = 42;
|
fourStore = 42;
|
||||||
fourStoreEndpoint = 43;
|
fourStoreEndpoint = 43;
|
||||||
virtuoso = 44;
|
virtuoso = 44;
|
||||||
|
rtkit = 45;
|
||||||
|
|
||||||
# When adding a uid, make sure it doesn't match an existing gid.
|
# When adding a uid, make sure it doesn't match an existing gid.
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
./security/pam_usb.nix
|
./security/pam_usb.nix
|
||||||
./security/policykit.nix
|
./security/policykit.nix
|
||||||
./security/polkit.nix
|
./security/polkit.nix
|
||||||
|
./security/rtkit.nix
|
||||||
./security/setuid-wrappers.nix
|
./security/setuid-wrappers.nix
|
||||||
./security/sudo.nix
|
./security/sudo.nix
|
||||||
./services/amqp/rabbitmq.nix
|
./services/amqp/rabbitmq.nix
|
||||||
|
|
39
modules/security/rtkit.nix
Normal file
39
modules/security/rtkit.nix
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
# A module for ‘rtkit’, a DBus system service that hands out realtime
|
||||||
|
# scheduling priority to processes that ask for it.
|
||||||
|
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
with pkgs.lib;
|
||||||
|
|
||||||
|
{
|
||||||
|
|
||||||
|
options = {
|
||||||
|
|
||||||
|
security.rtkit.enable = mkOption {
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Whether to enable the RealtimeKit system service, which hands
|
||||||
|
out realtime scheduling priority to user processes on
|
||||||
|
demand. For example, the PulseAudio server uses this to
|
||||||
|
acquire realtime priority.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
config = mkIf config.security.rtkit.enable {
|
||||||
|
|
||||||
|
environment.systemPackages = [ pkgs.rtkit ];
|
||||||
|
|
||||||
|
services.dbus.packages = [ pkgs.rtkit ];
|
||||||
|
|
||||||
|
users.extraUsers = singleton
|
||||||
|
{ name = "rtkit";
|
||||||
|
uid = config.ids.uids.rtkit;
|
||||||
|
description = "RealtimeKit daemon";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in a new issue