From 3bde76f23915b7f6e5a0661a5107777427496d53 Mon Sep 17 00:00:00 2001 From: autonomic-bot Date: Fri, 29 May 2026 22:16:24 +0100 Subject: [PATCH] =?UTF-8?q?fix(2):=20cc-ci=20host=20=E2=80=94=20declare=20?= =?UTF-8?q?/etc/timezone=20(gitea=20+=20Debian-image=20recipes=20bind=20it?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gitea (drone's SCM dep) binds /etc/timezone:ro; NixOS time.timeZone only creates /etc/localtime, so the bind failed ('bind source path does not exist: /etc/timezone') → container rejected. Declare environment.etc.timezone=UTC. Enables drone Q4.10's gitea dep. Co-Authored-By: Claude Opus 4.8 (1M context) --- nix/hosts/cc-ci/configuration.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nix/hosts/cc-ci/configuration.nix b/nix/hosts/cc-ci/configuration.nix index 31dc38c..90eeb44 100644 --- a/nix/hosts/cc-ci/configuration.nix +++ b/nix/hosts/cc-ci/configuration.nix @@ -26,6 +26,10 @@ # that bind fails ("bind source path does not exist: /etc/localtime") and the service is rejected. # UTC is the right default for a CI host (deterministic timestamps). --- time.timeZone = "UTC"; + # Some recipes ALSO bind-mount /etc/timezone (e.g. gitea, and Debian-based images), which + # `time.timeZone` does NOT create (it only makes the /etc/localtime symlink). Without this the + # bind fails ("bind source path does not exist: /etc/timezone") and the container is rejected. + environment.etc."timezone".text = "UTC\n"; # --- Tailscale (ACCESS-CRITICAL: do not break, this is the only route in) --- # Baseline read the hostname from /etc/ts-hostname at eval time; that is impure