From a6138b750e2998f67fccc0f8b08dd25b051da4dd Mon Sep 17 00:00:00 2001 From: Artturin Date: Mon, 10 Jul 2023 02:40:45 +0300 Subject: [PATCH] makeDBusConf: fail if xsltproc generates empty files A few people have reported empty files in /etc/dbus-1 which can cause obscure issues. With this change, users can retry and get non-empty files. can be tested with `makeDBusConf { suidHelper = ""; serviceDirectories = []; }` and adding ``` rm $out/session.conf echo -n "" > $out/session.conf # or echo "" > $out/session.conf ``` --- pkgs/development/libraries/dbus/make-dbus-conf.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/libraries/dbus/make-dbus-conf.nix b/pkgs/development/libraries/dbus/make-dbus-conf.nix index 125da383c8d..0a8b630d073 100644 --- a/pkgs/development/libraries/dbus/make-dbus-conf.nix +++ b/pkgs/development/libraries/dbus/make-dbus-conf.nix @@ -42,4 +42,8 @@ runCommand "dbus-1" --stringparam apparmor "$apparmor" \ ${./make-session-conf.xsl} ${dbus}/share/dbus-1/session.conf \ > $out/session.conf + + # check if files are empty or only contain space characters + grep -q '[^[:space:]]' "$out/system.conf" || (echo "\"$out/system.conf\" was generated incorrectly and is empty, try building again." && exit 1) + grep -q '[^[:space:]]' "$out/session.conf" || (echo "\"$out/session.conf\" was generated incorrectly and is empty, try building again." && exit 1) ''