16 lines
627 B
Nix
16 lines
627 B
Nix
{ config, lib, ... }:
|
|
|
|
with lib;
|
|
let
|
|
supportedFilesystems = builtins.map (builtins.getAttr "fsType") (builtins.attrValues config.fileSystems);
|
|
mkScrubConfig = fsType: {
|
|
enable = builtins.elem fsType supportedFilesystems;
|
|
interval = "weekly";
|
|
};
|
|
in {
|
|
services.btrfs.autoScrub = mkScrubConfig "btrfs";
|
|
services.zfs.autoScrub = mkScrubConfig "zfs";
|
|
|
|
# bcachefs exists but it was "ejected from the kernel" for "repeated violations of kernel dev. guidelines"
|
|
# linus "tech tips" torvalds said himself "nobody sane uses bcachefs and expects it to be stable" (https://en.wikipedia.org/wiki/Bcachefs#Stability)
|
|
}
|