1
0
Fork 0
mirror of https://git.oat.zone/dark-firepit/dotfiles synced 2024-05-04 16:46:06 +02:00
git.oat.zone--dark-firepit-.../hosts/dark-firepit/wireguardInterface.nix
Jill "oatmealine" Monoids 39ec224d05 refactor authorizedKeys
2022-10-18 19:54:57 +02:00

23 lines
450 B
Nix

{ lib, pkgs, config, ... }:
with lib;
let
peerKeys = import ./authorizedKeys.nix;
wgKeys = filter (hasAttr "wg") peerKeys;
in {
ips = [ "10.100.0.1/24" ];
privateKeyFile = "/etc/wg0.keys/wg0";
listenPort = 51820;
peers = genList (n:
let
keychain = elemAt wgKeys n;
ip = "10.100.0.${toString (n+2)}/32";
in {
publicKey = trace "${keychain.hostname}: ${ip}" keychain.wg;
allowedIPs = [ ip ];
}) (length wgKeys);
}