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

{
  environment.systemPackages = with pkgs; [
    avahi
    wireguard
  ];

  # Set hostname and hostid
  networking = {
    hostName = "panacea";
    hostId = "8feb0bb8";
    wireless = {
      enable = true;
    };
  };

  # Enable zeroconf
  services.avahi = {
    enable = true;
    nssmdns = true;
  };

  # Wireguard setup
  networking.wireguard.interfaces = {
    wg0 = {
      ips = [ "10.8.0.4/32" ];
      privateKeyFile = "/home/coolneng/.wg/keys/privatekey";
      peers = [
        # zion
        {
          publicKey = "GN8lqPBZYOulh6xD4GhkoEWI65HMMCpSxJSH5871YnU=";
          allowedIPs = [ "0.0.0.0/0" ];
          endpoint = "coolneng.duckdns.org:1194";
          persistentKeepalive = 25;
        }
      ];
    };
  };

}