summaryrefslogtreecommitdiff
path: root/host/software/server/website.nix
blob: c347c258cad10266069e37f0cb7f501e5a9a00da (plain)
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
{ pkgs, ... }:

{
  users.extraUsers.public = {
    isNormalUser = true;
    uid          = 2000;
    shell        = pkgs.fish;
    home         = "/home/public";
  };

  # `public` generates websites using their custom derivations via `nix-build`
  services.nginx.virtualHosts = let
    default = locations: {
      inherit locations;
      addSSL     = true;
      enableACME = true;
    };
    website = sub: default {
      "/".root = "/home/public/${sub}/result";
    };
  in {
    "kummerlaender.eu"        = website "overview";
    "blog.kummerlaender.eu"   = website "blog";
    "tree.kummerlaender.eu"   = website "tree";
    "static.kummerlaender.eu" = website "static";

    "pkgs.kummerlaender.eu" = default {
      "/".root                     = "/home/public/pkgs/result";
      "/nixexprs.tar.gz".proxyPass = "http://localhost:3000/adrian/pkgs/archive/master.tar.gz";
    };
  };
}