diff --git a/src/firejail/env.c b/src/firejail/env.c index 2e9f516ba..f15e1362f 100644 --- a/src/firejail/env.c +++ b/src/firejail/env.c @@ -160,6 +160,11 @@ void env_defaults(void) { // set the window title if (!arg_quiet) printf("\033]0;firejail %s\007", cfg.window_title); + + // pass --quiet as an environment variable, in case the command calls further firejailed commands + if (arg_quiet) + setenv("FIREJAIL_QUIET", "yes", 1); + fflush(0); } diff --git a/src/firejail/main.c b/src/firejail/main.c index ece4c2cb5..f3dc72944 100644 --- a/src/firejail/main.c +++ b/src/firejail/main.c @@ -907,7 +907,8 @@ int main(int argc, char **argv) { // get starting timestamp, process --quiet start_timestamp = getticks(); - if (check_arg(argc, argv, "--quiet", 1)) + char *env_quiet = getenv("FIREJAIL_QUIET"); + if (check_arg(argc, argv, "--quiet", 1) || (env_quiet && strcmp(env_quiet, "yes") == 0)) arg_quiet = 1; // cleanup at exit