-{ inputs, ... }:
+{ lib, inputs, ... }:
{
- nix.settings.experimental-features = [ "nix-command" "flakes" ];
+ nix.settings.experimental-features = [
+ "nix-command"
+ "flakes"
+ ];
#nix.registry.self.flake = inputs.self;
- # Pin the rev to the revision of the public Nixpkgs that the system was built from.
- # This is the version which will be locked by flakes using flake:nixpkgs
- nix.registry.nixpkgs = {
- from = { id = "nixpkgs"; type = "indirect"; };
- to = {
- owner = "NixOS";
- repo = "nixpkgs";
- inherit (inputs.nixpkgs) rev;
- type = "github";
- };
- };
nix.nixPath = [
"nixpkgs=${inputs.nixpkgs}"
];
+
+ systemd.services.nix-daemon.serviceConfig = {
+ CPUSchedulingPolicy = lib.mkForce "batch";
+ IOSchedulingClass = lib.mkForce "best-effort";
+ # 0: high priority, 7: low priority
+ IOSchedulingPriority = lib.mkForce 4;
+ Nice = 0;
+ };
+
+ systemd.services.nix-gc.serviceConfig = {
+ CPUSchedulingPolicy = "batch";
+ IOSchedulingClass = "best-effort";
+ IOSchedulingPriority = 7;
+ Nice = 5;
+ };
+
+ systemd.sleep.extraConfig = ''
+ AllowSuspend=no
+ AllowHibernation=no
+ '';
}