stockholm/tv/1systems/mkdir.nix

106 lines
2.1 KiB
Nix
Raw Normal View History

2015-07-11 14:55:22 +00:00
{ config, lib, pkgs, ... }:
with lib;
2015-09-26 22:22:50 +00:00
let
# TODO merge with lass
getDefaultGateway = ip:
concatStringsSep "." (take 3 (splitString "." ip) ++ ["1"]);
primary-addr4 =
builtins.elemAt config.krebs.build.host.nets.internet.addrs4 0;
#secondary-addr4 =
# builtins.elemAt config.krebs.build.host.nets.internet.addrs4 1;
in
2015-07-11 14:55:22 +00:00
{
krebs.build.host = config.krebs.hosts.mkdir;
2015-07-27 02:33:37 +00:00
krebs.build.user = config.krebs.users.tv;
2015-09-26 22:22:50 +00:00
krebs.build.target = "root@${primary-addr4}";
2015-07-27 02:33:37 +00:00
2015-09-26 22:22:50 +00:00
krebs.build.source = {
git.nixpkgs = {
2015-07-27 02:33:37 +00:00
url = https://github.com/NixOS/nixpkgs;
2015-10-16 21:07:24 +00:00
rev = "e57024f821c94caf5684964474073649b8b6356b";
2015-07-27 02:33:37 +00:00
};
2015-09-26 22:22:50 +00:00
dir.secrets = {
host = config.krebs.hosts.wu;
path = "/home/tv/secrets/mkdir";
2015-07-27 02:33:37 +00:00
};
2015-09-26 22:22:50 +00:00
dir.stockholm = {
host = config.krebs.hosts.wu;
path = "/home/tv/stockholm";
2015-07-27 02:33:37 +00:00
};
};
2015-07-11 14:55:22 +00:00
imports = [
2015-07-28 18:40:25 +00:00
../2configs/CAC-Developer-1.nix
../2configs/CAC-CentOS-7-64bit.nix
../2configs/base.nix
../2configs/consul-server.nix
../2configs/exim-smarthost.nix
../2configs/git.nix
2015-07-11 14:55:22 +00:00
{
tv.iptables = {
enable = true;
input-internet-accept-new-tcp = [
"ssh"
"tinc"
"smtp"
];
input-retiolum-accept-new-tcp = [
"http"
];
};
}
{
2015-07-24 10:34:25 +00:00
krebs.retiolum = {
2015-07-11 14:55:22 +00:00
enable = true;
connectTo = [
"cd"
"fastpoke"
"pigstarter"
"ire"
];
};
}
];
networking.interfaces.enp2s1.ip4 = [
{
2015-09-26 22:22:50 +00:00
address = primary-addr4;
2015-07-11 14:55:22 +00:00
prefixLength = 24;
}
2015-09-26 22:22:50 +00:00
#{
# address = secondary-addr4;
# prefixLength = 24;
#}
2015-07-11 14:55:22 +00:00
];
2015-09-26 22:22:50 +00:00
# TODO define gateway in krebs/3modules/default.nix
networking.defaultGateway = getDefaultGateway primary-addr4;
2015-07-11 14:55:22 +00:00
networking.nameservers = [
"8.8.8.8"
];
environment.systemPackages = with pkgs; [
git # required for ./deploy, clone_or_update
htop
iftop
iotop
iptables
nethogs
rxvt_unicode.terminfo
tcpdump
];
services.journald.extraConfig = ''
SystemMaxUse=1G
RuntimeMaxUse=128M
'';
}