commit 2eaf3cafc3742f88df8f1ed625e8706fb002686d
parent eb38466b1ba5f8ac72746325ec02963c67256ed6
Author: Francesco Saccone <francesco@francescosaccone.com>
Date: Thu, 27 Mar 2025 16:31:49 +0100
refactor: create domain.nix file as common domain name for servers
Signed-off-by: Francesco Saccone <francesco@francescosaccone.com>
Diffstat:
3 files changed, 24 insertions(+), 16 deletions(-)
diff --git a/hosts/git-server/default.nix b/hosts/git-server/default.nix
@@ -2,15 +2,19 @@
config,
...
}:
+let
+ domain = import ../server/domain.nix;
+ gitDomain = "git.${domain}";
+in
{
imports = [
./disk-config.nix
];
modules = {
- bind = rec {
+ bind = {
enable = true;
- domain = "francescosaccone.com";
+ inherit domain;
records = import ../server/dns.nix domain;
};
openssh.listen = {
@@ -24,7 +28,7 @@
};
};
- networking.domain = "git.francescosaccone.com";
+ networking.domain = gitDomain;
boot.loader.grub = {
efiSupport = true;
diff --git a/hosts/server/default.nix b/hosts/server/default.nix
@@ -5,6 +5,7 @@
...
}:
let
+ domain = import ./domain.nix;
scripts = import ./scripts.nix { inherit config pkgs inputs; };
in
rec {
@@ -22,12 +23,12 @@ rec {
"${inputs.site}/scripts/generate-atom.sh"
"/var/tmp/site/gemini"
"\"Francesco Saccone's blog\""
- "gemini://${networking.domain}"
+ "gemini://${domain}"
];
generateSitemap = builtins.concatStringsSep " " [
"${inputs.site}/scripts/generate-sitemap.sh"
"/var/tmp/site/gemini"
- "gemini://${networking.domain}"
+ "gemini://${domain}"
];
generateGemini = builtins.concatStringsSep " " [
"${inputs.site}/scripts/generate-gemini.sh"
@@ -59,9 +60,9 @@ rec {
bind = {
enable = true;
inherit (networking) domain;
- records = import ./dns.nix networking.domain;
+ records = import ./dns.nix domain;
};
- darkhttpd = rec {
+ darkhttpd = {
enable = true;
preStart = {
scripts =
@@ -70,12 +71,12 @@ rec {
"${inputs.site}/scripts/generate-atom.sh"
"/var/tmp/site/html"
"\"Francesco Saccone's blog\""
- "https://${networking.domain}"
+ "https://${domain}"
];
generateSitemap = builtins.concatStringsSep " " [
"${inputs.site}/scripts/generate-sitemap.sh"
"/var/tmp/site/html"
- "https://${networking.domain}"
+ "https://${domain}"
];
generateHtml = builtins.concatStringsSep " " [
"${inputs.site}/scripts/generate-html.sh"
@@ -108,9 +109,9 @@ rec {
};
acme = {
enable = true;
- email = "admin@${networking.domain}";
- inherit (networking) domain;
- extraDomains = builtins.map (sub: "${sub}.${networking.domain}") [
+ email = "admin@${domain}";
+ inherit domain;
+ extraDomains = builtins.map (sub: "${sub}.${domain}") [
"www"
];
};
@@ -121,8 +122,8 @@ rec {
inherit (config.modules.darkhttpd.acme) directory;
in
[
- "${directory}/${acme.domain}/fullchain.pem"
- "${directory}/${acme.domain}/privkey.pem"
+ "${directory}/${domain}/fullchain.pem"
+ "${directory}/${domain}/privkey.pem"
];
};
};
@@ -150,7 +151,7 @@ rec {
additionalFiles = {
inherit description;
owner = "Francesco Saccone";
- url = "git://${networking.domain}/${name}";
+ url = "git://${domain}/${name}";
};
hooks.postReceive = scripts.stagitPostReceive { inherit name; };
}
@@ -171,7 +172,9 @@ rec {
};
};
- networking.domain = "francescosaccone.com";
+ networking = {
+ inherit domain;
+ };
boot.loader.grub = {
efiSupport = true;
diff --git a/hosts/server/domain.nix b/hosts/server/domain.nix
@@ -0,0 +1 @@
+"francescosaccone.com"