System76 scheduler
services.system76-scheduler.assignments
Process profile assignments.
Type: attribute set of (submodule)
Default
{ }
Example
{nix-builds = {nice = 15;class = "batch";ioClass = "idle";matchers = ["nix-daemon"];};}
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.assignments.<name>.class
CPU scheduler class.
Type: null or one of "idle", "batch", "other", "rr", "fifo"
Default
null
Example
"batch"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.assignments.<name>.ioClass
IO scheduler class.
Type: null or one of "idle", "best-effort", "realtime"
Default
null
Example
"best-effort"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.assignments.<name>.ioPrio
IO scheduler priority.
Type: null or integer between 0 and 7 (both inclusive)
Default
null
Example
4
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.assignments.<name>.matchers
Process matchers.
Type: null or (list of string)
Default
[ ]
Example
["include cgroup=\"/user.slice/*.service\" parent=\"systemd\"""emacs"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.assignments.<name>.nice
Niceness.
Type: null or integer between -20 and 19 (both inclusive)
Default
null
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.assignments.<name>.prio
CPU scheduler priority.
Type: null or integer between 1 and 99 (both inclusive)
Default
null
Example
49
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.enable
Whether to enable system76-scheduler.
Type: boolean
Default
false
Example
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.exceptions
Processes that are left alone.
Type: list of string
Default
[ ]
Example
["include descends=\"schedtool\"""schedtool"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.package
Which System76-Scheduler package to use.
Type: package
Default
config.boot.kernelPackages.system76-scheduler
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.default.bandwidth-size
sched_cfs_bandwidth_slice_us
.
Type: signed integer
Default
5
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.default.latency
sched_latency_ns
.
Type: signed integer
Default
6
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.default.nr-latency
sched_nr_latency
.
Type: signed integer
Default
8
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.default.preempt
Preemption mode.
Type: one of "none", "voluntary", "full"
Default
"voluntary"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.default.wakeup-granularity
sched_wakeup_granularity_ns
.
Type: floating point number
Default
1.0
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.enable
Tweak CFS latency parameters when going on/off battery
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.responsive.bandwidth-size
sched_cfs_bandwidth_slice_us
.
Type: signed integer
Default
3
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.responsive.latency
sched_latency_ns
.
Type: signed integer
Default
4
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.responsive.nr-latency
sched_nr_latency
.
Type: signed integer
Default
10
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.responsive.preempt
Preemption mode.
Type: one of "none", "voluntary", "full"
Default
"full"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.cfsProfiles.responsive.wakeup-granularity
sched_wakeup_granularity_ns
.
Type: floating point number
Default
0.5
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.enable
Tweak scheduling of individual processes in real time.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.background.class
CPU scheduler class.
Type: null or one of "idle", "batch", "other", "rr", "fifo"
Default
null
Example
"batch"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.background.ioClass
IO scheduler class.
Type: null or one of "idle", "best-effort", "realtime"
Default
"idle"
Example
"best-effort"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.background.ioPrio
IO scheduler priority.
Type: null or integer between 0 and 7 (both inclusive)
Default
null
Example
4
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.background.matchers
Process matchers.
Type: null or (list of string)
Default
[ ]
Example
["include cgroup=\"/user.slice/*.service\" parent=\"systemd\"""emacs"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.background.nice
Niceness.
Type: null or integer between -20 and 19 (both inclusive)
Default
6
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.background.prio
CPU scheduler priority.
Type: null or integer between 1 and 99 (both inclusive)
Default
null
Example
49
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.enable
Boost foreground process priorities.
(And de-boost background ones). Note that this option needs cooperation from the desktop environment to work. On Gnome the client side is implemented by the "System76 Scheduler" shell extension.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.foreground.class
CPU scheduler class.
Type: null or one of "idle", "batch", "other", "rr", "fifo"
Default
null
Example
"batch"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.foreground.ioClass
IO scheduler class.
Type: null or one of "idle", "best-effort", "realtime"
Default
"best-effort"
Example
"best-effort"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.foreground.ioPrio
IO scheduler priority.
Type: null or integer between 0 and 7 (both inclusive)
Default
0
Example
4
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.foreground.matchers
Process matchers.
Type: null or (list of string)
Default
[ ]
Example
["include cgroup=\"/user.slice/*.service\" parent=\"systemd\"""emacs"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.foreground.nice
Niceness.
Type: null or integer between -20 and 19 (both inclusive)
Default
0
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.foregroundBoost.foreground.prio
CPU scheduler priority.
Type: null or integer between 1 and 99 (both inclusive)
Default
null
Example
49
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.enable
Boost Pipewire client priorities.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.profile.class
CPU scheduler class.
Type: null or one of "idle", "batch", "other", "rr", "fifo"
Default
null
Example
"batch"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.profile.ioClass
IO scheduler class.
Type: null or one of "idle", "best-effort", "realtime"
Default
"best-effort"
Example
"best-effort"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.profile.ioPrio
IO scheduler priority.
Type: null or integer between 0 and 7 (both inclusive)
Default
0
Example
4
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.profile.matchers
Process matchers.
Type: null or (list of string)
Default
[ ]
Example
["include cgroup=\"/user.slice/*.service\" parent=\"systemd\"""emacs"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.profile.nice
Niceness.
Type: null or integer between -20 and 19 (both inclusive)
Default
-6
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.pipewireBoost.profile.prio
CPU scheduler priority.
Type: null or integer between 1 and 99 (both inclusive)
Default
null
Example
49
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.refreshInterval
Process list poll interval, in seconds
Type: signed integer
Default
60
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.settings.processScheduler.useExecsnoop
Use execsnoop (otherwise poll the precess list periodically).
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix
services.system76-scheduler.useStockConfig
Use the (reasonable and featureful) stock configuration.
When this option is true
, services.system76-scheduler.settings
are ignored.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/desktops/system76-scheduler.nix