26 lines
513 B
Nix
26 lines
513 B
Nix
{ lib, config, ... }:
|
|
|
|
let
|
|
cfg = config.systemModules.hardware.ssd;
|
|
inherit (lib) mkIf mkEnableOption;
|
|
in
|
|
|
|
{
|
|
options.systemModules.hardware.ssd = {
|
|
enable = mkEnableOption "Enable ssd module";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
services.fstrim = {
|
|
enable = true;
|
|
};
|
|
# only run fstrim while connected on AC
|
|
systemd.services.fstrim = {
|
|
unitConfig.ConditionACPower = true;
|
|
serviceConfig = {
|
|
Nice = 19;
|
|
IOSchedulingClass = "idle";
|
|
};
|
|
};
|
|
};
|
|
}
|