https://git.jolheiser.com/dotnix.git
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
{ pkgs, ... }: let modules = import ./go.nix; in { services.caddy = { enable = true; virtualHosts = { "jolheiser.com" = { extraConfig = '' handle_path /.well-known/webfinger { header Content-Type application/jrd+json respond ${ builtins.toJSON { subject = "acct:john@jolheiser.com"; links = [ { rel = "http://openid.net/specs/connect/1.0/issuer"; href = "https://auth.jolheiser.com"; } ]; } } } handle_path /bennet* { root * ${pkgs.jolheiser.bennet} file_server } handle /resume* { root * ${pkgs.jolheiser.resume} rewrite /resume /resume.pdf file_server } handle { root * ${pkgs.jolheiser.website} file_server } ''; serverAliases = [ "www.jolheiser.com" ]; }; "blog.jolheiser.com" = { extraConfig = '' root * ${pkgs.jolheiser.blog} file_server ''; }; "go.jolheiser.com" = { extraConfig = '' header Content-Type text/html ${modules} respond /* `<html><head> <meta name="go-import" content="go.jolheiser.com{path} git https://git.jolheiser.com{path}.git"> <meta http-equiv="refresh" content="3; url=https://pkg.go.dev/go.jolheiser.com{path}" /> </head><body> Redirecting to <a href="https://pkg.go.dev/go.jolheiser.com{path}">https://pkg.go.dev/go.jolheiser.com{path}</a> </body></html>` ''; }; "git.jolheiser.com".extraConfig = '' reverse_proxy localhost:8449 ''; "pr.jolheiser.com".extraConfig = '' reverse_proxy localhost:7449 ''; "social.jolheiser.com".extraConfig = '' reverse_proxy localhost:4686 ''; "auth.jolheiser.com".extraConfig = '' reverse_proxy localhost:2884 ''; "todo.jolheiser.com".extraConfig = '' reverse_proxy localhost:8636 ''; "recipes.jolheiser.com".extraConfig = '' reverse_proxy localhost:3663 ''; "irc.jolheiser.com".extraConfig = '' reverse_proxy localhost:7658 ''; "dnd.jolheiser.com".extraConfig = '' reverse_proxy localhost:30000 ''; }; }; }