{ config, pkgs, ... }:
{

  # Configurations are set in disko-config.nix!

  # mdadm.conf generated by `mdadm --detail --scan`
  boot.swraid.enable = true;
  boot.swraid.mdadmConf = ''
    MAILADDR root
    ARRAY /dev/md/raid_system metadata=1.2 name=any:raid_system UUID=1becc692:aeb83b67:1c65da45:b8bd4b93
    ARRAY /dev/md/raid_data metadata=1.2 name=any:raid_data UUID=576eabb1:0722bc27:84d9314f:d0145000
    INACTIVE-ARRAY /dev/md125 metadata=1.2 name=nixos:md_data UUID=b9c36b6d:a2e0fa86:f6dbfe57:857cd0d2
  '';

  # TODO: RAID Monitoring
  # TODO: Set spin-down time of physical disks

  services.fwupd.daemonSettings.EspLocation = pkgs.lib.mkForce config.disko.devices.disk.system-1.content.partitions.boot.content.mountpoint;

  # Use the systemd-boot EFI boot loader.
  boot.loader.efi.canTouchEfiVariables = true;
  boot.loader.grub = {
    enable = true;
    efiSupport = true;
    mirroredBoots = [
      {
        devices = [ "nodev" ];
        path = "/boot-primary";
        efiBootloaderId = "NixOS primary";
      }
      #{
      #  devices = [ "nodev" ];
      #  path = "/boot-secondary";
      #  efiBootloaderId = "NixOS secondary";
      #}
    ];
  };
}
