emacs-helm / helm-system-packages

A Helm interface to the package manager of your operating system
GNU General Public License v3.0
106 stars 11 forks source link

dpkg: Browse dependencies with Helm #8

Closed Ambrevar closed 6 years ago

Ambrevar commented 6 years ago

@thierryvolpiatto : Can you test this?

It runs helm-system-packages-dpkg recursively on the (reverse) dependencies of the selected package(s). For instance, if foo depends on bar and baz, then showing dependencies will re-run the session with only bar and baz in the list. In turn, the (reverse) dependencies of those packages can be queried the same way.

Can you check the following in particular:

Does dpkg know the concept of virtual packages?

For instance, the 3D-oriented packages might depend on libgl which is a virtual package satisfied by mesa or nvidia. In that case, Helm will fail to find the virtual package because it does not exist. I've taken provisions for pacman, but I'm not sure how it works for dpkg.

thierryvolpiatto commented 6 years ago

Pierre Neidhardt notifications@github.com writes:

  • That dependencies of non-installed packages also work.

Looks it is working, but isn't these informations already displayed in the description of package? IIUC you want to show the dependencies of the dependencies (recursively)?

  • What happens on unknown packages.

What do you mean by unknow packages ? Generic packages ?

Does dpkg know the concept of virtual packages?

Don't know, I am not a specialist of debian packages, perhaps you mean generic packages that point to more specific packages, e.g. linux kernel => linux kernel version xxx ?

For instance, the 3D-oriented packages might depend on libgl which is a virtual package satisfied by mesa or nvidia. In that case, Helm will fail to find the virtual package because it does not exist. I've taken provisions for pacman, but I'm not sure how it works for dpkg.

Me too.

-- Thierry

Ambrevar commented 6 years ago

The goal of this feature is to use Helm to browse the dependency graph (deps and reverse deps).

Just to be clear: when you hit "Show (reverse) dependencies", it starts a new Helm session of the said dependencies, right?

I've fixed most of the long lines.

Ambrevar commented 6 years ago

I'll merge this. Let me know if you encounter any issue.