diff options
| author | tv <tv@krebsco.de> | 2015-05-20 22:16:48 +0200 | 
|---|---|---|
| committer | tv <tv@krebsco.de> | 2015-05-20 22:16:48 +0200 | 
| commit | 0bb1b4493d2f24c89159121289a412ae3aa58576 (patch) | |
| tree | d3d788592953c0d520357062c406fa3a5dd8615f /lib | |
| parent | c05afbe81aec1b3629c9527b4d9cd8f54f97943a (diff) | |
networking-configuration -> lib/cacnixos.sh
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/cacnixos.sh | 28 | 
1 files changed, 28 insertions, 0 deletions
| diff --git a/lib/cacnixos.sh b/lib/cacnixos.sh new file mode 100644 index 0000000..24502d6 --- /dev/null +++ b/lib/cacnixos.sh @@ -0,0 +1,28 @@ +. ./lib/net.sh + +# cacnixos_networking : cac-server x hostname -> nixos-module +cacnixos_networking() {( +  server=$1 +  hostname=$2 + +  address=$(echo $server | jq -r .ip) +  gateway=$(echo $server | jq -r .gateway) +  nameserver=8.8.8.8 +  netmask=$(echo $server | jq -r .netmask) +  prefix=$(net_netmask_to_prefix $netmask) + +  printf '{...}:\n' +  printf '{\n' +  printf '  networking.hostName = "%s";\n' $hostname +  printf '  networking.interfaces.enp2s1.ip4 = [\n' +  printf '    {\n' +  printf '      address = "%s";\n' $address +  printf '      prefixLength = %d;\n' $prefix +  printf '    }\n' +  printf '  ];\n' +  printf '  networking.defaultGateway = "%s";\n' $gateway +  printf '  networking.nameservers = [\n' +  printf '    "%s"\n' $nameserver +  printf '  ];\n' +  printf '}\n' +)} | 
