diff options
Diffstat (limited to 'users')
-rw-r--r-- | users/tazjin/nixos/koptevo/default.nix | 4 | ||||
-rw-r--r-- | users/tazjin/nixos/modules/homepage.nix | 50 |
2 files changed, 52 insertions, 2 deletions
diff --git a/users/tazjin/nixos/koptevo/default.nix b/users/tazjin/nixos/koptevo/default.nix index fe34fb21aaa0..e5199f34e7de 100644 --- a/users/tazjin/nixos/koptevo/default.nix +++ b/users/tazjin/nixos/koptevo/default.nix @@ -11,12 +11,12 @@ in imports = [ (mod "quassel.nix") (mod "www/base.nix") - (mod "www/tazj.in.nix") (usermod "airsonic.nix") (usermod "geesefs.nix") + (usermod "homepage.nix") + (usermod "miniflux.nix") (usermod "predlozhnik.nix") (usermod "tgsa.nix") - (usermod "miniflux.nix") (depot.third_party.agenix.src + "/modules/age.nix") ]; diff --git a/users/tazjin/nixos/modules/homepage.nix b/users/tazjin/nixos/modules/homepage.nix new file mode 100644 index 000000000000..b109fbefd3be --- /dev/null +++ b/users/tazjin/nixos/modules/homepage.nix @@ -0,0 +1,50 @@ +# serve tazjin's website & blog +{ depot, config, lib, pkgs, ... }: + +{ + config = { + services.nginx.virtualHosts."tazj.in" = { + enableACME = true; + forceSSL = true; + root = depot.users.tazjin.homepage; + serverAliases = [ "www.tazj.in" ]; + + extraConfig = '' + location = /en/rss.xml { + return 301 https://tazj.in/feed.atom; + } + + ${depot.users.tazjin.blog.oldRedirects} + location /blog/ { + alias ${depot.users.tazjin.blog.rendered}/; + + if ($request_uri ~ ^/(.*)\.html$) { + return 302 /$1; + } + + try_files $uri $uri.html $uri/ =404; + } + + location = /predlozhnik { + return 302 https://predlozhnik.ru; + } + + # redirect for easier entry on a TV + location = /tv { + return 302 https://tazj.in/blobs/play.html; + } + + # Temporary place for serving static files. + location /blobs/ { + alias /var/lib/tazjins-blobs/; + } + ''; + }; + + services.nginx.virtualHosts."git.tazj.in" = { + enableACME = true; + forceSSL = true; + extraConfig = "return 301 https://code.tvl.fyi$request_uri;"; + }; + }; +} |