aboutsummaryrefslogtreecommitdiff
path: root/www/caddy.nix
diff options
context:
space:
mode:
authorValentin <valentin@fricklerhandwerk.de>2025-12-20 18:22:27 +0100
committerValentin <valentin@fricklerhandwerk.de>2025-12-20 18:22:27 +0100
commit8b0a011c7c37d882a2e12ea8de38acaa9e782d38 (patch)
tree2daea25b800a0733baa6f45fd71afcadf02a9ffc /www/caddy.nix
parent9a5020deaed97df8ab1307068f34a382b2e24b31 (diff)
parent0efd609dd832b11c4e4e20c008edc1cc52dbfbd9 (diff)
Merge branch 'nix-html'
HTML werden ab jetzt aus Nix-modulen generiert.
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