diff --git a/daemon/loader.c b/daemon/loader.c index 354eb0ce..cdee3299 100644 --- a/daemon/loader.c +++ b/daemon/loader.c @@ -306,13 +306,16 @@ loader_exec_program( argv[i++] = "-e"; } - if (!conf_get(LADISH_CONF_KEY_DAEMON_SHELL, argv + i)) + if (!run_in_terminal || strchr(commandline, '$') != NULL) { - argv[i] = LADISH_CONF_KEY_DAEMON_SHELL_DEFAULT; - } - i++; + if (!conf_get(LADISH_CONF_KEY_DAEMON_SHELL, argv + i)) + { + argv[i] = LADISH_CONF_KEY_DAEMON_SHELL_DEFAULT; + } + i++; - argv[i++] = "-c"; + argv[i++] = "-c"; + } argv[i++] = commandline; argv[i++] = NULL;