From 0a9eb3f3e2b7a08e6df4db44bc6fd56f2cd34173 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 13 Nov 2025 09:38:35 +0900 Subject: [PATCH] tests: Add test to validate /etc/locatime is a symlink. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Match the modern desktop expectation set by systemd [0] and relied on by some software (GNOME/glib, icecat, ungoogle-chromium, etc.). [0] https://www.man7.org/linux/man-pages/man5/localtime.5.html * gnu/tests/base.scm ("/etc/localtime is a symlink to the timezone data file"): New test. Change-Id: I8fb95abb6a3e455dd7019d5d798f7862d16b6263 Reviewed-by: Ludovic Courtès --- gnu/tests/base.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 659b754802f..dc51880d8ed 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -232,6 +232,18 @@ info --version") `(tm:gmtoff (localtime ,sept-2021)) marionette))) + (test-equal "/etc/localtime is a symlink to the timezone data file" + ;; This is a systemd-ism that most distributions follow; we do to, + ;; for compatibility with software that assumes this is convention + ;; is followed (see: + ;; ) + #$(operating-system-timezone os) + (marionette-eval + `(string-join + (take-right (string-split (readlink "/etc/localtime") #\/) 2) + "/") + marionette)) + (test-equal "/var/log/messages is not world-readable" #o640 ; (begin