From: Michael Biebl Date: Tue, 16 Feb 2021 00:18:50 +0100 Subject: Downgrade a couple of warnings to debug If a package still ships only a SysV init script or if a service file or tmpfile uses /var/run, downgrade those messages to debug. We can use lintian to detect those issues. For service files and tmpfiles in /etc, keep the warning, as those files are typically added locally and aren't checked by lintian. Closes: #981407 --- src/core/load-fragment.c | 4 +++- src/sysv-generator/sysv-generator.c | 2 +- src/tmpfiles/tmpfiles.c | 4 +++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c index 1001faa..555492e 100644 --- a/src/core/load-fragment.c +++ b/src/core/load-fragment.c @@ -543,6 +543,7 @@ static int patch_var_run( const char *e; char *z; + int log_level; e = path_startswith(*path, "/var/run/"); if (!e) @@ -552,7 +553,8 @@ static int patch_var_run( if (!z) return log_oom(); - log_syntax(unit, LOG_NOTICE, filename, line, 0, + log_level = path_startswith(filename, "/etc") ? LOG_NOTICE : LOG_DEBUG; + log_syntax(unit, log_level, filename, line, 0, "%s= references a path below legacy directory /var/run/, updating %s → %s; " "please update the unit file accordingly.", lvalue, *path, z); diff --git a/src/sysv-generator/sysv-generator.c b/src/sysv-generator/sysv-generator.c index 3c5df6c..24eff86 100644 --- a/src/sysv-generator/sysv-generator.c +++ b/src/sysv-generator/sysv-generator.c @@ -761,7 +761,7 @@ static int enumerate_sysv(const LookupPaths *lp, Hashmap *all_services) { if (!fpath) return log_oom(); - log_warning("SysV service '%s' lacks a native systemd unit file. " + log_debug("SysV service '%s' lacks a native systemd unit file. " "Automatically generating a unit file for compatibility. " "Please update package to include a native systemd unit file, in order to make it more safe and robust.", fpath); diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c index 9c3d994..15180a5 100644 --- a/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c @@ -2991,6 +2991,7 @@ static int specifier_expansion_from_arg(const Specifier *specifier_table, Item * static int patch_var_run(const char *fname, unsigned line, char **path) { const char *k; char *n; + int log_level; assert(path); assert(*path); @@ -3016,7 +3017,8 @@ static int patch_var_run(const char *fname, unsigned line, char **path) { /* Also log about this briefly. We do so at LOG_NOTICE level, as we fixed up the situation automatically, hence * there's no immediate need for action by the user. However, in the interest of making things less confusing * to the user, let's still inform the user that these snippets should really be updated. */ - log_syntax(NULL, LOG_NOTICE, fname, line, 0, + log_level = path_startswith(fname, "/etc") ? LOG_NOTICE : LOG_DEBUG; + log_syntax(NULL, log_level, fname, line, 0, "Line references path below legacy directory /var/run/, updating %s → %s; please update the tmpfiles.d/ drop-in file accordingly.", *path, n);