{ config, pkgs, lib, ... }:

{
  imports =
    [
      ./hardware-configuration.nix

      ./ppp.nix
      ./programs.nix
      ./users.nix
    ];

  boot.kernelParams = [ "console=ttyS0,115200n8" ];

  # Use the GRUB 2 boot loader.
  boot.loader.grub.enable = true;
  # boot.loader.grub.efiSupport = true;
  # boot.loader.grub.efiInstallAsRemovable = true;
  # boot.loader.efi.efiSysMountPoint = "/boot/efi";
  # Define on which hard drive you want to install Grub.
  boot.loader.grub.device = "/dev/sda"; # or "nodev" for efi only
  boot.loader.grub.extraConfig = "
    serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1
    terminal_input serial
    terminal_output serial
  ";

  #networking.firewall.enable = false;

  services.wg-clerie = {
    enable = true;
    ipv6s = [ "2a01:4f8:c0c:15f1::8108/128" ];
    ipv4s = [ "10.20.30.108/32" ];
  };

  clerie.monitoring = {
    enable = true;
    id = "214";
    pubkey = "I4xh3t6vIcNyntZkewXX56eWrEd3J0hhaYV45xj6uVU=";
    serviceLevel = "event";
  };

  system.stateVersion = "23.05";
}