summary refs log tree commit diff
path: root/host/Rory-nginx/configuration.nix
blob: eaea14b693eb48e4b3c2bf58e9531edd38f2e026 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
{ config, pkgs, lib, ... }:

{
  imports =
    [
      ../../modules/base-server.nix
      ../../modules/packages/gitfs.nix
    ];

  networking = {
    hostName = "Rory-nginx";
    interfaces.ens18.ipv4.addresses = [ { 
      address = "192.168.1.2";
      prefixLength = 24;
    } ];
    interfaces.ens19.ipv4.addresses = [ {
      address = "10.10.10.2";
      prefixLength = 16;
    } ];
  };

  services = {
    nginx = {
      enable = true;
      package = pkgs.nginxQuic;
      recommendedProxySettings = true;
      recommendedTlsSettings = true;
      appendConfig = ''
        worker_processes 512;
        '';
       eventsConfig = ''
        #use kqueue;
        worker_connections 1024;
        '';
      upstreams = import ./matrix/upstreams.nix;
      virtualHosts = {
        "siliconheaven.thearcanebrony.net" = import ./hosts/thearcanebrony.net/siliconheaven.nix;
        "lfs.thearcanebrony.net" = import ./hosts/thearcanebrony.net/lfs.nix;
        "http.thearcanebrony.net" = import ./hosts/thearcanebrony.net/http.nix;
        "thearcanebrony.net" = import ./hosts/thearcanebrony.net/root.nix;
        "sentry.thearcanebrony.net" = import ./hosts/thearcanebrony.net/sentry.nix;
        "awooradio.thearcanebrony.net" = import ./hosts/thearcanebrony.net/awooradio.nix;
        "search.thearcanebrony.net" = import ./hosts/thearcanebrony.net/search.nix;
        "git.thearcanebrony.net" = import ./hosts/thearcanebrony.net/git.nix;
        "files.thearcanebrony.net" = import ./hosts/thearcanebrony.net/files.nix;
        "spigotav.thearcanebrony.net" = import ./hosts/thearcanebrony.net/spigotav.nix;
        "terra.thearcanebrony.net" = import ./hosts/thearcanebrony.net/terra.nix;
        "vives.thearcanebrony.net" = import ./hosts/thearcanebrony.net/vives.nix;
        "rory.gay" = import ./hosts/rory.gay/root.nix;
        "rory.boo" = import ./hosts/rory.gay/root.nix;
        "lfs.rory.gay" = import ./hosts/rory.gay/lfs.nix;
        "git.rory.gay" = import ./hosts/rory.gay/git.nix;
        "matrix.rory.gay" = import ./hosts/rory.gay/matrix.nix;
        "mru.rory.gay" = import ./hosts/rory.gay/mru.nix;
        "tunnel.rory.boo" = import ./hosts/rory.boo/tunnel.nix;
        "boorunav.com" = import ./hosts/boorunav.com/root.nix;
        "catgirlsaresexy.com" = import ./hosts/catgirlsaresexy.com/root.nix;
        "sugarcanemc.org" = import ./hosts/sugarcanemc.org/root.nix;

        #bots...
        "0bottests.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "catnipbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "impulsyeeter.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "omnibot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "yatopiawatchdog.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "playground.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "kinobot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "siliconbotpublic.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "thearcanebot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "anonbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "hericanbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "siliconbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "impulsbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "studiobot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "carsnbots.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "binsh.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "fosscordbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "sugarcanebot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
        "gradbot.bots.rory.gay" = import ./hosts/rory.gay/bots.nix;
      };
    };
  };
  systemd.services.nginx.serviceConfig = {
    LimitNOFILE=5000000;
  };
  systemd.services.nginx.requires = [ "data.mount" ];
  security.acme.acceptTerms = true;
  security.acme.defaults.email = "root@thearcanebrony.net";

  environment.systemPackages = with pkgs; [
    #gitfs
  ];

  system.stateVersion = "22.11"; # DO NOT EDIT!
}