{ pkgs, config, ... }:
{
  # This value determines the NixOS release with which your system is to be
  # compatible, in order to avoid breaking some software such as database servers.
  # You should change this only after NixOS release notes say you should.
  system.stateVersion = "19.09"; # Did you read the comment?

  boot.initrd.systemd = {
    enable = true;
    emergencyAccess = true; # FIXME: use a password
  };

  nix.gc.dates = "weekly";
  nix.gc.options = "--delete-older-than 7d";

  /*
    boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
    nix.binaryCaches = [
    "https://nixcache.reflex-frp.org"
    "https://arm.cachix.org"
    ];
    nix.binaryCachePublicKeys = [
    "ryantrinkle.com-1:JJiAKaRv9mWgpVAz8dwewnZe0AzzEAzPkagE9SP5NWI="
    "arm.cachix.org-1:5BZ2kjoL1q6nWhlnrbAl+G7ThY7+HaBRD9PZzqZkbnM="
    ];
  */

  # Avoid the use of systemd-run --user --scope tmux
  # and let mosh work smoothly.
  services.logind.killUserProcesses = false;

  hardware.bluetooth.enable = true;
  #services.blueman.enable = true;

  documentation.nixos = {
    enable = false; # NOTE: useless on a server, and CPU intensive.
  };

  boot.kernelParams = [
    # Rotate the consoles anti-clockwise.
    #"fbcon=rotate:3"
  ];

  # Setting the machine-id avoids to reencrypt all credentials
  # when reinstalling NixOS on a new drive.
  # Manually generated with : uuidgen | tr -d -
  environment.etc.machine-id.source = ./machine-id.clear;
}