{
  lib,
  system,
  pkgs,
  ...
}:
let
  isArm = ("aarch64-linux" == system) || ("aarch64-darwin" == system);
in
{
  hardware = {
    # Bluetooth
    bluetooth.enable = lib.mkDefault true;

    i2c.enable = lib.mkDefault true;

    # Enable all firmware
    enableAllFirmware = lib.mkForce true;

    # Enable graphics
    graphics = {
      enable = lib.mkDefault true;
      enable32Bit = lib.mkDefault (!isArm);
    };

    # Enable Sane and Brother printer support.
    sane = {
      enable = true;
      brscan5.enable = false;
      extraBackends = if (!isArm) then [ pkgs.brscan5 ] else [ ];
    };

    flipperzero.enable = true;
  };
}
