Hi, I've send this before, but it seems like it didn't reach the list. I apologize if I'm flooding your inbox and you got this patch series twice. The pacman codebase is completely new to me, so please forgive me the obvious mistakes that I overlooked and feel free to point them out and yell at me. This implements most features from https://wiki.archlinux.org/index.php/User:Allan/Pacman_OptDepends It probably isn't quite ready to be merged yet, but I want to gather some feedback on the stuff I've already done. What is there: - No regressions afaics - Only show uninstalled optdepends during install/upgrade - In package info, show [installed] after installed optdepends - In package info (local or -ii) show packages which optionally depend on the queried package - '-Qt' doesn't consider optdepends to be orphans, unless '--nooptdeps/-n' is given What is missing: - Show which of the packages listed by '-Qtn' is an optdepend and what optdeps on it - In package info display the description alongside the "reverse optdeps" - Recursive removal of unneeded optdeps - Anything listed under "Other Ideas" - Tests (mainly needed for the package removal stuff I think) - Docs with less sucky english ;-) -- Benedikt Benedikt Morbach (6): Split optdep into alpm_depend_t and description Hook new optdepend structures up Only display uninstalled optdepends during install/upgrade Show optdep install status in package info optdepends are not orphans unless --nooptdepends is specified Make package info show optional requirements doc/pacman.8.txt | 6 ++++ lib/libalpm/alpm.h | 14 ++++++++- lib/libalpm/be_local.c | 11 +++++- lib/libalpm/be_package.c | 5 ++- lib/libalpm/be_sync.c | 7 ++++- lib/libalpm/deps.c | 70 ++++++++++++++++++++++++++++++++++++++++++ lib/libalpm/deps.h | 3 ++ lib/libalpm/package.c | 39 ++++++++++++++++------- src/pacman/conf.h | 1 + src/pacman/package.c | 13 ++++++-- src/pacman/pacman.c | 3 ++ src/pacman/query.c | 16 ++++++++-- src/pacman/util.c | 75 +++++++++++++++++++++++++++++++++++++++------- src/pacman/util.h | 1 + src/util/pactree.c | 2 +- 15 files changed, 230 insertions(+), 36 deletions(-) -- 1.7.6