Historical bug tracker for the Pacman package manager.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
FS#70227 - Pacman, do not dump description command line argument for sync and query search
Attached to Project:
Pacman
Opened by Ahmet OZKESEK (aozkesek) - Tuesday, 30 March 2021, 10:50 GMT
Last edited by Allan McRae (Allan) - Friday, 23 December 2022, 14:17 GMT
Opened by Ahmet OZKESEK (aozkesek) - Tuesday, 30 March 2021, 10:50 GMT
Last edited by Allan McRae (Allan) - Friday, 23 December 2022, 14:17 GMT
|
DetailsHi,
First of all, thank you for great and more importantly up-to-date Arch Linux. Would it not be nice if a command line argument like --nodesc for "pacman -S -s" and "pacman -Q -s" to not to dump package description? I would rather to see less output, sometimes just the [name,version]. I am using my hacked version of pacman by the way, to get the result that I want. So feel free to ignore this feature-request for other user's sake. The changes I did in my version of pacman are like this; --- src/pacman/conf.h | 8 +++++++- src/pacman/package.c | 15 ++++++++++++--- src/pacman/pacman.c | 11 +++++++++++ 3 files changed, 30 insertions(+), 4 deletions(-) diff --git a/src/pacman/conf.h b/src/pacman/conf.h index 1b9fb337..7c0401b8 100644 --- a/src/pacman/conf.h +++ b/src/pacman/conf.h @@ -51,6 +51,8 @@ typedef struct __config_t { unsigned short help; unsigned short noconfirm; unsigned short noprogressbar; + unsigned short nodesc; + unsigned short notinstalled; unsigned short logmask; unsigned short print; unsigned short checkspace; @@ -213,7 +215,11 @@ enum { OP_DOWNLOADONLY, OP_REFRESH, OP_ASSUMEINSTALLED, - OP_DISABLEDLTIMEOUT + OP_DISABLEDLTIMEOUT, + /* OP_NODESC: do not dump the description */ + OP_NODESC, + /* OP_NOTINSTALLED: do not dump the installed packages */ + OP_NOTINSTALLED }; /* clean method */ diff --git a/src/pacman/package.c b/src/pacman/package.c index eaee3bb0..fcf7ca82 100644 --- a/src/pacman/package.c +++ b/src/pacman/package.c @@ -553,6 +553,13 @@ int dump_pkg_search(alpm_db_t *db, alpm_list_t *targets, int show_status) if(config->quiet) { fputs(alpm_pkg_get_name(pkg), stdout); } else { + + if (config->notinstalled == 1) { + if (alpm_db_get_pkg(db_local, alpm_pkg_get_name(pkg))) { + continue; + } + } + printf("%s%s/%s%s %s%s%s", colstr->repo, alpm_db_get_name(db), colstr->title, alpm_pkg_get_name(pkg), colstr->version, alpm_pkg_get_version(pkg), colstr->nocolor); @@ -562,9 +569,11 @@ int dump_pkg_search(alpm_db_t *db, alpm_list_t *targets, int show_status) print_installed(db_local, pkg); } - /* we need a newline and initial indent first */ - fputs("\n ", stdout); - indentprint(alpm_pkg_get_desc(pkg), 4, cols); + if (config->nodesc == 0) { + /* we need a newline and initial indent first */ + fputs("\n ", stdout); + indentprint(alpm_pkg_get_desc(pkg), 4, cols); + } } fputc('\n', stdout); } diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c index b2aabc08..a53dd00b 100644 --- a/src/pacman/pacman.c +++ b/src/pacman/pacman.c @@ -571,6 +571,9 @@ static int parsearg_query(int opt) case 'u': config->op_q_upgrade = 1; break; + case OP_NODESC: + config->nodesc = 1; + break; default: return 1; } @@ -830,6 +833,12 @@ static int parsearg_sync(int opt) case 'y': (config->op_s_sync)++; break; + case OP_NODESC: + config->nodesc = 1; + break; + case OP_NOTINSTALLED: + config->notinstalled = 1; + break; default: return 1; } @@ -946,6 +955,8 @@ static int parseargs(int argc, char *argv[]) {"dbonly", no_argument, 0, OP_DBONLY}, {"color", required_argument, 0, OP_COLOR}, {"disable-download-timeout", no_argument, 0, OP_DISABLEDLTIMEOUT}, + {"nodesc", no_argument, 0, OP_NODESC}, + {"notinstalled", no_argument, 0, OP_NOTINSTALLED}, {0, 0, 0, 0} }; |
This task depends upon
Closed by Allan McRae (Allan)
Friday, 23 December 2022, 14:17 GMT
Reason for closing: Deferred
Additional comments about closing: Transferred to gitlab:
https://gitlab.archlinux.org/pacman/pacm an/-/issues/6
Friday, 23 December 2022, 14:17 GMT
Reason for closing: Deferred
Additional comments about closing: Transferred to gitlab:
https://gitlab.archlinux.org/pacman/pacm an/-/issues/6
I played a bit print & print-format, pacman -Sp zip --print-format "%n %v" which is nice though, they do not change the output of sync-search and query, do they?
So we still see same output for both pacman -Sps zip --print-format "%n %v" and pacman -Ss zip.
Anyway, thank you for your time, once again.