test: override blocking localed policy in TEST-73-LOCALE
authorLuca Boccassi <bluca@debian.org>
Sat, 20 Jul 2024 10:34:51 +0000 (11:34 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 22 Jul 2024 12:27:30 +0000 (14:27 +0200)
On Debian and derivatives writing calls to localed are blocked as other
tools are used to change settings, override that policy for the tests

(cherry picked from commit 7b5c38a91def6cf236605010a0a93a1cd4c137e9)

test/units/TEST-73-LOCALE.sh

index 18539b8eab208d5c5ac37c32297b86adc3c3a104..06c8c56745ddcfc5a15a0707e7ad03cdb0ac7d68 100755 (executable)
@@ -657,6 +657,29 @@ testcase_locale_gen_leading_space() {
 # running on.
 export SYSTEMD_KBD_MODEL_MAP=/usr/lib/systemd/tests/testdata/test-keymap-util/kbd-model-map
 
+# On Debian and derivatives writing calls to localed are blocked as other tools are used to change settings,
+# override that policy
+mkdir -p /etc/dbus-1/system.d/
+cat >/etc/dbus-1/system.d/systemd-localed-read-only.conf <<EOF
+<?xml version="1.0"?>
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+        "https://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+        <policy user="root">
+                <allow send_member="SetLocale"/>
+                <allow send_member="SetVConsoleKeyboard"/>
+                <allow send_member="SetX11Keyboard"/>
+        </policy>
+        <policy context="default">
+                <allow send_member="SetLocale"/>
+                <allow send_member="SetVConsoleKeyboard"/>
+                <allow send_member="SetX11Keyboard"/>
+        </policy>
+</busconfig>
+EOF
+trap 'rm -f /etc/dbus-1/system.d/systemd-localed-read-only.conf' EXIT
+systemctl reload dbus.service
+
 enable_debug
 run_testcases