'pacman -Dk' prints a "success!" message if there were no errors. It is possible to suppress the output using the '-q / --quiet' flag. This implements the feature discussed at https://bugs.archlinux.org/task/50087 Signed-off-by: Patrick Eigensatz <patrick.eigensatz@gmail.com> --- doc/pacman.8.txt | 6 +++++- src/pacman/database.c | 4 ++++ src/pacman/pacman.c | 5 +++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/doc/pacman.8.txt b/doc/pacman.8.txt index 2bafa41..0522981 100644 --- a/doc/pacman.8.txt +++ b/doc/pacman.8.txt @@ -456,7 +456,7 @@ Database Options (apply to '-D')[[QO]] package installed even when it was initially installed as a dependency of another package. -*-k \--check*:: +*-k, \--check*:: Check the local package database is internally consistent. This will check all required files are present and that installed packages have the required dependencies, do not conflict and that multiple packages @@ -464,6 +464,10 @@ Database Options (apply to '-D')[[QO]] a check on the sync databases to ensure all specified dependencies are available. +*-q, \--quiet*:: + Apply to '-q' or '--quiet' to suppress the message that the + database check was successful and no errors have been found. + File Options (apply to '-F')[[FO]] ---------------------------------- *-y, --refresh*:: diff --git a/src/pacman/database.c b/src/pacman/database.c index 0197903..3990ea2 100644 --- a/src/pacman/database.c +++ b/src/pacman/database.c @@ -286,6 +286,10 @@ int pacman_database(alpm_list_t *targets) } else { ret = check_db_sync(); } + + if(ret == 0 && !config->quiet) { + printf(_("No database errors have been found!\n")); + } } if(config->flags & (ALPM_TRANS_FLAG_ALLDEPS | ALPM_TRANS_FLAG_ALLEXPLICIT)) { diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c index be52d1b..3881829 100644 --- a/src/pacman/pacman.c +++ b/src/pacman/pacman.c @@ -171,6 +171,7 @@ static void usage(int op, const char * const myname) addlist(_(" --asdeps mark packages as non-explicitly installed\n")); addlist(_(" --asexplicit mark packages as explicitly installed\n")); addlist(_(" -k, --check test local database for validity (-kk for sync databases)\n")); + addlist(_(" -q, --quiet Suppress the success message of the validity check\n")); } else if(op == PM_OP_DEPTEST) { printf("%s: %s {-T --deptest} [%s] [%s]\n", str_usg, myname, str_opt, str_pkg); printf("%s:\n", str_opt); @@ -466,6 +467,10 @@ static int parsearg_database(int opt) case 'k': (config->op_q_check)++; break; + case OP_QUIET: + case 'q': + config->quiet = 1; + break; default: return 1; } -- 2.10.0