1
0
mirror of https://github.com/systemd/systemd.git synced 2024-10-26 08:55:40 +03:00

run: drop "-" prefix from command line when generating unit description

Let's not confuse users with the login shell indicator and drop it from
the description. This means a run0 session will now usually show up with
a description of "[run0] /bin/bash" rather than "[run0] -/bin/bash".
This commit is contained in:
Lennart Poettering 2024-10-24 12:14:01 +02:00
parent d9f68f48f7
commit ff4b6a1915

View File

@ -2439,7 +2439,19 @@ static int run(int argc, char* argv[]) {
if (strv_isempty(arg_cmdline)) if (strv_isempty(arg_cmdline))
t = strdup(arg_unit); t = strdup(arg_unit);
else else if (startswith(arg_cmdline[0], "-")) {
/* Drop the login shell marker from the command line when generating the description,
* in order to minimize user confusion. */
_cleanup_strv_free_ char **l = strv_copy(arg_cmdline);
if (!l)
return log_oom();
r = free_and_strdup_warn(l + 0, l[0] + 1);
if (r < 0)
return r;
t = quote_command_line(l, SHELL_ESCAPE_EMPTY);
} else
t = quote_command_line(arg_cmdline, SHELL_ESCAPE_EMPTY); t = quote_command_line(arg_cmdline, SHELL_ESCAPE_EMPTY);
if (!t) if (!t)
return log_oom(); return log_oom();