aboutsummaryrefslogtreecommitdiff
path: root/www/caddy.nix
diff options
context:
space:
mode:
Diffstat (limited to 'www/caddy.nix')
-rw-r--r--www/caddy.nix24
1 files changed, 11 insertions, 13 deletions
diff --git a/www/caddy.nix b/www/caddy.nix
index 6721316..9a5bd50 100644
--- a/www/caddy.nix
+++ b/www/caddy.nix
@@ -1,16 +1,11 @@
{ self, lib, ... }:
-let
- html =
- with lib.fileset;
- toSource {
- root = ./html;
- fileset = ./html;
- };
-in
{
flake.machines.tharos = {
nixos =
- { lib, ... }:
+ { config, lib, ... }:
+ let
+ website = self.websites.${config.nixpkgs.hostPlatform.system}.${self.domain};
+ in
{
services.caddy.virtualHosts.${self.domain} = {
serverAliases = [ "www.${self.domain}" ];
@@ -18,13 +13,15 @@ in
file_server
root * /var/www/${self.domain}
encode gzip
+
+ ${website.redirects.caddy}
'';
};
systemd.tmpfiles.rules = [
# Verzeichnis für Web-Inhalte sofort anlegen, da der Webserver sonst nicht startet,
# aber nur wenn es noch nicht existiert.
- "C /var/www/${self.domain} - - - - ${html}"
+ "C /var/www/${self.domain} - - - - ${website.result}"
];
};
vm =
@@ -52,10 +49,14 @@ in
pkgs,
lib,
system,
+ config,
self',
...
}:
{
+ # Website aus Quellcode generiert
+ packages.html = self'.websites.${self.domain}.result;
+
# Website-Inhalte auf den Server hochladen
packages.publish = pkgs.writeShellApplication {
name = "publish";
@@ -66,9 +67,6 @@ in
};
# Lokale Vorschau
- packages.html = pkgs.runCommand "source" { } ''
- cp -r ${html} $out
- '';
packages.preview = pkgs.devmode.override {
buildArgs = ''
"$(${lib.getExe pkgs.git} rev-parse --show-toplevel)" -A packages.${system}.html -vv