forked from c3d2/nix-config
64 lines
1.3 KiB
Nix
64 lines
1.3 KiB
Nix
{ config, ... }:
|
|
|
|
{
|
|
system.stateVersion = "22.05";
|
|
|
|
c3d2 = {
|
|
deployment.server = "server10";
|
|
hq.statistics.enable = true;
|
|
};
|
|
microvm = {
|
|
vcpu = 8;
|
|
mem = 16 * 1024;
|
|
};
|
|
|
|
networking = {
|
|
hostName = "caveman";
|
|
firewall.allowedTCPPorts = [ 23 ];
|
|
};
|
|
|
|
services.journald.extraConfig = ''
|
|
Storage=volatile
|
|
'';
|
|
|
|
services.caveman = {
|
|
redis.maxmemory = config.microvm.mem * 1024 * 1024 / 2;
|
|
|
|
hunter = {
|
|
enable = true;
|
|
settings = {
|
|
max_workers = 384;
|
|
hosts = with builtins;
|
|
filter isString (
|
|
split "\n" (
|
|
readFile ./mastodon-instances.txt
|
|
)
|
|
);
|
|
};
|
|
};
|
|
gatherer.enable = true;
|
|
smokestack.enable = true;
|
|
};
|
|
|
|
services = {
|
|
nginx = rec {
|
|
enable = true;
|
|
virtualHosts."fedi.buzz" = {
|
|
default = true;
|
|
forceSSL = true;
|
|
enableACME = true;
|
|
serverAliases = [
|
|
"www.fedi.buzz"
|
|
"caveman.flpk.zentralwerk.org"
|
|
];
|
|
locations."/".proxyPass = "http://127.0.0.1:${toString config.services.caveman.gatherer.settings.listen_port}/";
|
|
};
|
|
virtualHosts."relay.fedi.buzz" = {
|
|
forceSSL = true;
|
|
enableACME = true;
|
|
locations."/".proxyPass = "http://127.0.0.1:${toString 3000}/";
|
|
};
|
|
};
|
|
};
|
|
}
|